Java面试题:基础知识点总结

需积分: 0 0 下载量 30 浏览量 更新于2024-09-08 收藏 26KB DOCX 举报
Java 面试题知识点总结 **面向对象的特征** 面向对象的特征主要有以下几个方面: 1. **抽象**:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分的注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2. **多态性**:多态性是指允许不同类的对象对同一消息作出响应。实现多态的主要手段有三种:虚方法(virtual)、抽象方法(abstract)、接口(interface)。 **&和&&的区别** &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 **接口和抽象类的区别** 1. **概念不同**:接口是对动作的抽象,抽象类是对根源的抽象。 2. **实例化**:抽象类和接口都不能直接实例化,如果要实例化,抽象类变量必须指向实现所有抽象方法的子类对象,接口变量必须指向实现所有接口方法的类对象。 3. **继承和实现**:抽象类要被子类继承,接口要被类实现。 4. **方法申明和实现**:接口只能做方法申明,抽象类中可以做方法申明,也可以做方法实现。 5. **变量**:接口里定义的变量只能是公共的静态的常量,抽象类中的变量是普通变量。 6. **抽象方法**:抽象类里的抽象方法必须全部被子类所实现,如果子类不能全部实现父类抽象方法,那么该子类只能是抽象类。 7. **静态和私有**:抽象方法要被实现,所以不能是静态的,也不能是私有的。 8. **继承**:接口可继承接口,并可多继承接口,但类只能单根继承。 **方法重载和重写的区别** 1. **重写**:重写是子类的方法覆盖父类的方法,要求方法名和参数都相同。 2. **重载**:是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数。 **JDK和JRE的区别** 1. **JDK**:JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。 2. **JRE**:JRE是Java Runtime Environment的缩写,提供了Java程序的运行环境。