一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第2天,点击查看活动详情。
1.&和&&区别?
&&也被称为短路与,当表达式进行判断时,如果第一个结果为false,将不会判断第二个值,所以当第二个表达式报错时,程序会继续执行,不会终止
&表示的是与,需要将表达式都判断完整才能出结果,所以当第二个表达式报错时,程序会终止,不会继续执行。
2.抽象类和接口的区别?
抽象类是一个类,只能单一继承,并且抽象类不能实例化,需要被继承,但抽象类中可以声明普通的方法完成功能,并且可以声明普通的成员变量
接口中只能声明方法,无法实现,需要创建一个类去实现接口,如果接口没有被实现,只是继承,那么将无法完成方法所对应的功能,而且接口可以多继承
3.抽象类和普通类的区别?
抽象类:是被abstract修饰的类,并且可以创建抽象方法,而且不能实例化
普通的类中不能创建抽象方法,可以实例化
4.JVM、JRE、JDK之间的关系?
JDK:编程工具
JRE:标准类库,运行环境
JVM:java虚拟机
JDK包含JRE,JRE包含JVM
5.LinkedList和ArrayList区别?
ArrayList和LinkedList都是List集合的实现类,其中ArrayList是动态数组,底层就是数组组成,当经常随机取值时速度较快,会使用ArrayList,LinkedList是链表式结构,当集合中经常首尾添加或删除时,处理效率快,会使用
6.请说出修饰权限关键字和他的范围?
Public:本类、本包、继承关系的包、非继承关系
Protected:本类、本包、继承关系的包
Default:本类、本包
Private:本类
7.请简要说明成员变量、局部变量分别是什么?
成员变量是直接声明在类中的,也称为属性
局部变量是直接声明在方法中的
8.Collection和Collections的区别? Collection:Collection是集合的父类接口,下面有List和Set等集合 Collections:工具类,提供多个方法,比如排序方法