1.请说明Java中方法重载的规则
方法名相同,参数列表不同,返回值类型随意
2.请说明Java中方法重写的规则
方法名相同,参数列表相同,返回值类型相同, 子类方法的访问权限不小于父类方法的访问权限
3.请说明Java中垃圾回收机制原理
垃圾回收机制,是虚拟机JVM中,一个优先级比较低的后台线程,是自动的,不需要过多管理,也无法直接命令GC,马上回收垃圾。只作用于堆,与栈无关
对象的引用被赋值为空 一次性使用的匿名对象 超出生命周期的
4.请详细描述"=="和equals方法的区别
==比较基本数据类型时,比较变量的值是否相同,比较引用数据类型时,比较的是两个对象的地址是否相同。 equals是Object中的方法,默认比较两个对象的地址是否相同,一般子类重写该方法时,比较内容是否相同
5.在Java中,什么是类变量、局部变量、实例变量
类变量:静态变量 在类中声明为static,随着类加载被创建, 只要类存在,静态变量就存在
局部变量:定义在方法中的变量,方法的形参 只有在方法调用的过程中有效,方法结束,就失效
实例变量:全局变量,成员变量,类的属性 随着加载类的对象时被创建
6.简述逻辑操作(&)与条件操作(&&)的区别。
&位运算符也可以进行逻辑表达式的判断,不会产生短路
&&逻辑运算符也可以进行逻辑表达式的判断,可能会产生短路
7.请简述子类实例化的过程
子类继承父类之后,再通过构造器创建子类对象时 先调用其父类构造器,在调用子类构造器 需要注意子类和父类中的构造器,参数要对应
8.请简述Java中的this关键字以及使用this关键字的情况
this返回当前类的对象,表示对象的引用 一般使用在当前类的方法和构造器中
使用有参构造器对属性进行初始化(赋值),如果参数名与属性名相同 使用this进行区分
9.请说明Java中继承的含义和规则,简写类继承的语法
Java中,一个类可以继承另一个类,被继承的类叫做父类,另一个叫做子类
子类继承父类之后,可以使用父类的所有非私有的属性和方法,但是父类不能使用子类的方法或属性 class A extends B
特性:单一性继承,一个子类只能有一个父类
10.请说明Java中数组和集合的区别
数组长度固定,数组既可以存放基本数据类型也可以存放引用数据类型对象
集合长度不固定,集合中只能存放引用数据类型对象
11.请说明final关键字修饰的元素有哪些及特点
被修饰的类不能被继承 被修饰的方法不能被重写
被修饰的变量不能重新赋值 被修饰的属性,不会设置初始值
12.请说明Set、List、Map三个接口,存储元素的特点
List:有序,可重复
Set:无序,不重复
Map:无序,通过键值对的形式存储元素,
其中key可以重复,value可以重复 允许使用null作为key-value的值
13.请说名ArrayList和LinkedList的区别
都是List接口的的实现类
ArrayList:底层是由Object数组实现的,查询元素效率高
LinkedList:底层是由链表实现的,增加和删除操作性高