1.JDK,JRE,JVM的区别
JDK::jdk是java的核心,是java开发工具包,包括JRE和JVM
JRE:是运行Java所必须的环境的集合,包括JVM和Java的一些核心类库
JVM:是Java跨平台运行的的核心部分,能够运行以Java语言写作的软件程序
2.重载和重写的区别:
重载:要求方法名相同,参数列表不同,个数不同,顺序不同,方法的返回值和修饰符可以不同,发生在编译时。
重写:发生在父子类之中,方法名参数列表必须相同,返回值范围小于等于父类,抛出的异常范围小于父类,访问修饰符大于等于父类,如果父类中有方法被private修饰,则子类不可以重写该方法。
3.Java中==和equals的区别:
==的作用:
引用类型:比较的是地址值。
基本类型:比较的是内容。
equals的作用:
默认情况下比较的是地址值
注意:重写equals比较的内容
4.String、StringBuffer、StringBuilder 三者之间的区别
Sring:字符串常量,如果要操作少量的数据用 String;
SringBuffer:字符串变量(线程安全),多线程操作字符串缓冲区下操作大量数据用 StringBuffer;
SringBuilder:字符串变量(非线程安全),单线程操作字符串缓冲区下操作大量数据用 StringBuilder。
5.接口和抽象类的区别:
1>实现:接口需要实现implements接口,抽象类要继承extends
2>构造方法:抽象类可以有构造方法,接口不能
3>main方法:抽象类有main方法,接口没有
4>实现数量:类可以实现很多接口,但只能继承一个抽象类
5>访问修饰符:接口中默认使用public修饰,抽象类中可以使用任意修饰符
6.string 常用的方法有哪些?
indexOf():返回指定字符的索引
charAt():返回指定索引处的字符
replace():字符串替换
trim():取出字符串两端空白
split():分割字符串
substring():截取字符串
equals():字符串比较
7.什么是单例模式,有几种?
单例模式:某个类的实例在多线程的环境先只会被创建一次出来。
饿汉单例模式:线程安全,一开始就出初始化
懒汉单例模式:非线程安全,延迟初始化
双检索单例模式:线程安全,延迟初始化
8.反射(了解):
9.JDK1.8的新特性:
10.Java的异常