1.Java中,什么是构造函数?什么是构造函数重载?
当一个新对象被创建的时候,构造函数会自动调用。每一个类都有构造函数。在我们没有给类提供构造函数的时候,Java编译器会自动为这个类创建一个默认的构造函数。
Java中构造函数重载和方法重载很相似。可以为一个类创建很多个构造函数。每一个构造函数需要有它自己的唯一的参数列表。
2.Java支持多继承吗?多实现呢?
Java不支持多继承,每个类只能继承一个类,但是可以实现多个接口。
3.接口可以继承吗?
可以!比如List继承Collection。详情参考https://mp.csdn.net/postedit/82011077
4.抽象类和接口的区别在哪?
4.1 抽象类不一定包含抽象方法,但包含抽象方法的类一定要声明为抽象类;
抽象类是需要被继承的,所以abstract类不能用final来修饰;
abstract不能与private,static,final和native并列修饰同一个方法;
4.2接口的数据成员都是静态的且必须初始化;
接口中的方法必须全部声明为abstract的,也就是说,接口不能像抽象类一样拥有一般的方法,必须全部都是抽象方法。
接口和抽象类都不能被实例化。
5.什么是值传递和引用传递?
值传递:方法调用时,实际参数把它的值的副本传递给对应的形式参数,此时内存中存在两个相等的基本数据类型,即实际参数和形式参数,后面方法中的操作都是针对形式参数的值,不影响实际参数;
引用传递:方法调用是,实际参数的引用(是地址,不是参数的值)被传递给方法中对应的形式参数,函数接收的是原始对象的地址值,在方法执行中,形参和实参内容相同,指向同一块内存地址,方法执行中对引用的操作将会影响到实际对象。