前言 本来是抱着想试试淘系技术部的心态,没想到一路走完了流程,这里前辈水平的确很高,面试就感觉出来了,想把过程中的面经分享给大家: 一面线程池了解吗,几种线程池创建方式 ThreadPoolExecutors都有哪些关键属性 如果队列里任务等待时间过长都有哪些策略方式 加锁的几种方式 synchronized关键字的底层原理2种 lock锁,那JUC下都有哪些类 挑一个介绍一下它的原理实现(口诉可重入锁源码几分钟) 你提到很多CAS操作,具...
史上最全的知识体系脑图,覆盖所有知识点,所有细节,注意事项。 java语言概述:包含基础常识,java语言介绍,java语言运行机制以及运行过程,java语言环境搭建,注释,第一个java程序总结,常用的dos命令,java API文档。
Object Object类是所有类java类的父类如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object " == " 操作符和equals() ==是判断两个人是不是住在同一个地址,而equals是判断同一个地址里住的人是不是同一个 " == " 操作符: 检查如果两个操作数的值是否相等,如果相等则条件为真。基本类型比较值:只要两个变量的值相等,即为true。引用类型比较引用(是否指向同一个对象):只有指向同一个对象时, == 才返回...
Scanner类的使用和随机数的产生 一、Scanner类二、产生随机数 一、Scanner类 1、Scanner类的作用:从键盘获取不同类型的变量。 2、Scanner类的使用步骤: ①导包: import java.util.Scanner;②Scanner实例化: Scanner scan = new Scanner(System.in);③调用Scanner类的相关方法,来获取指定类型。 获取字符串型格式为:next()方法;获取其它字符串格式为:next变量类型(),但scanner类没提供获取char类型的方法。具体如下图: //导...
***** 首先 导入kudu java maven 依赖 ***** <!-- 指定仓库位置,依次为aliyun、cloudera和jboss仓库 --> <repositories> <repository> <id>aliyun</id> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </repository> <repository> <id>cloudera</id> <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url> </repository> <repository> <id>jboss</id> <url>http://repository.jboss.com/ne...
1、反射概述 1.1什么是反射 反射就是把Java类中的各个部分,映射成一个个的Java对象,拿到这些对象后可以做一些事情。 既然说反射是反射Java类中的各个组成部分,所以说咱们得知道一个类中有哪儿些部分? 例如,一个类有:成员变量,方法,构造方法,等信息,利用反射技术咱们可以把这些组成部分映射成一个个对象。 1.2、反射能干什么 一般来说反射是用来做框架的,或者说可以做一些抽象度比较高的底层代码,反射在日常的开发中用到...
** 两人进行聊天、咨询 ** 服务端接收消息, 代码如下: import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.SocketException;/*** 接收端* 1.Runnable接口建立线程* 2.DatagramSocket类创建数据包套接字、DatagramPacket类数据拆包* 3.接收发送端的消息数据包--拆包后输出消息内容--以“bye”结束断开连接* 4.注意捕获异常*/public class TalkRecive1 implements Run...
一、Lamda表达式 好处:避免匿名内部类定义过多 注:其实质属于函数式编程的概念,对于函数式接口(只包含唯一一个抽象方法的接口),都可以用Lambda表达式来创建该接口的对象。 public class Lamdba {public static void main(String[] args) {Test1 test1 = (String who) -> { //当只有一句执行语句时,可省略花括号System.out.println("who are you---" + who);};//注意代码块后的分号test1.test1("you");//当有多个参数变量时...
第一时间获取技术干货和业界资讯!收费群和不收费群最大的区别不在于发广告本身,而是在于花这点时间是否值得发一个广告。 昨天我和群里的几个网友在讨论问题,有人担心数学不好,是不是真的就不能学编程。这个完全不对,但是学不好数学,想往深处发展就难。数学和编程紧密挂钩,只是很多人习惯了 API 调用,感觉不到吧了。比如,进制转换,排序等都是数学知识的体现,以及数学知识的应用。这在平常我们都是通过 API 调用来实现的,...
什么是线程和进程? 何为进程? 进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。 在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进程,而 main 函数所在的线程就是这个进程中的一个线程,也称主线程。 如下图所示,在 windows 中通过查看任务管理器的方式,我们就可以清楚看到 window 当前运行的进程(.exe 文件的运行)。 何为线程...
TCP三次握手 为什么三次握手 保证客户端到服务端以及服务端到客户端之间都能成功发送接收数据,以防出现客户端发送给服务端连接请求因网络原因没有送达,超时后客户端重新发送一个连接请求,而此时服务端接收并确认,建立连接后传输数据释放连接,之后收到了超时的连接请求,导致误认为接收到的是新的连接请求,从而打开连接不停的等待客户端发送数据。 为什么四次挥手 第一次挥手客户端发送给服务端FIN标志,表示客户端想要断开链...
历时半年,我们终于整理出了这份市面上最全面的最新Android面试题解析大全! 章节目录 第一章:Android 基础 面试题 第二章:Android 高级 面试题 第三章:开源框架实战面试解析 第四章:Java 面试题 第五章:Flutter相关面试题全解析 第六章:一线大厂Android高频面试题集锦 这份最新整理的面试解析包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目加真题技术点和思维解析 ...
使用idea创建java web项目 1. 2. 3.第三步取名即可了 4.配置Tomcat 5.左侧点击加号新建本地Tomcat即可 关于XML xml(可扩展标记语言) 特点: 1.xml具有平台无关性,是一门独立的标记语言 2.xml具有自我描述性为什么学习xml 1.网络数据传输(主要用JSON) 2.数据存储 3.配置文件(XML) servlet常见格式 <servlet><servlet-name>aa</servlet-name>//servlet的名字要对应servlet-mapping中的名字<servlet-class>kkb.xzk.Demo1</servlet...
前言 在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下: 1.公平锁 / 非公平锁 2.可重入锁 / 不可重入锁 3.独享锁 / 共享锁 4.互斥锁 / 读写锁 5.乐观锁 / 悲观锁 6.分段锁 7.偏向锁 / 轻量级锁 / 重量级锁 8.自旋锁 上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。整理了100+个Java项目...
前言 在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下: 1.公平锁 / 非公平锁 2.可重入锁 / 不可重入锁 3.独享锁 / 共享锁 4.互斥锁 / 读写锁 5.乐观锁 / 悲观锁 6.分段锁 7.偏向锁 / 轻量级锁 / 重量级锁 8.自旋锁 上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。整理了100+个Java项目...