一,JDK和JRE有什么区别?
JRE:Java Runtime Environment(java运行时环境)。即java程序的运行时环境,包含了java虚拟机,java基础类库。
JDK:Java Development Kit(java开发工具包)。即java语言编写所需的开发工具包。JDK包含了JRE,同时还包括java源码的编译器javac、监控工具jconsole、分析工具jvisualvm等。
二,==和equals有什么区别?
==:当数据类型是基础数据类型时比较是字面值,当数据类型是封装数据类型的时候比较的是内存地址。
equals:比较两值的字面值,不比较内存地址,这个方法只能由类去调用。
三,普通类和抽象类有什么区别?
1,普通类中不含有抽象方法,可以被实例化。
2,抽象类,则抽象类中所有方法主动被认为是抽象方法,没有实现过程,不可被实例化;抽象类的子类,除非也是抽象类,否则必须实现该抽象类声明的方法。
四,接口和抽象类有什么区别?
1,接口是抽象类的变体,接口中所有的方法都是抽象的。而抽象类的声明方法的存在而不去实现它的类。
2,接口可以多继承,抽象类不行。
3,接口定义方法,不能实现,而抽象类可以实现部分方法。
4,接口中基本数据类型为static,而抽象类不是的。