欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java基础常见面试题02

程序员文章站 2024-03-21 22:57:46
...

6.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?

方法覆盖:方法名相同,方法的参数列表相同,返回值类型相同,发生在子类和父类之间。
方法重载:方法名相同,方法的参数列表不同,发生在同一个类中的两个或多个方法中。

7.Java中,什么是构造函数?什么是构造函数重载?什么是复制构造方法?

构造函数:用于初始化成员变量,当一个类被创建时,会调用构造函数来初始化成员变量,每一个类都有一个构造函数,
         当一个类中没有手动添加构造函数,那么系统会默认给我添加一个无参数构造函数。

构造函数重载:即,方法名相同,参数列表不同的构造函数,一个类可以拥有多个构造函数,但是每一个构造函数都必须有它唯一的参数类表。
复制构造函数:Java不支持复制构造函数

8.Java支持多继承么

Java中的继承体系只支持单继承,不支持多继承,但是接口这一概念很好的弥补了这一缺陷,Java支持实现多个接口。

9.接口和抽象类的区别是什么?

接口和抽象类中都包含抽象方法;
他们之间的区别:
    1.接口中只包含抽象方法,而抽象类中还可以包含普通的方法
    2.接口中的成员变量默认都是final修饰的,不能够被改变,抽象类中的成员变量包含final修饰的成员变量,也包含非final修饰的成员变量。
    3.类可以实现多个接口,但是只能继承一个抽象类
    4.接口中的方法默认权限都是public修饰的,抽象类中的方法可以是private,protected,public权限的
    5.接口和抽象类中的方法都是抽象的因此它们都不能被实例化,但是抽象类中如果包含了main方法那么它可以被调用

10什么是值传递和引用传递?

值传递:对象的值传递,传递的只是对象的一个副本,因此,如果改变值的时候,只改变了对象的副本,而不会改变源对象的值。
引用传递:对象的引用传递,传递的是对象的引用,所以外部对对象的改变,对源对象进行了改变,会反映到所有的对象上。
相关标签: JAVA 面试题