Java面试题集
一、Java基础
- 问题:你是怎样理解OOP面向对象?
解析:面向对象是通过对现实事物进行抽象来组织代码,具有以下三个主要特征:继承、封装和多态。
- 继承:子类继承父类的属性和方法。
- 封装:将数据和操作数据的代码封装在一起,提供接口进行访问。
- 多态性:不同对象对同一消息作出不同响应。
- 问题:重载与重写有什么区别?
解析:重载与重写是两种不同的机制,主要区别如下:
- 重载发生在同一个类中,方法名相同但参数不同;重写发生在子类与父类之间,方法名和参数都相同。
- 重载方法可以有不同的返回值类型,重写的返回值类型必须相同。
- 重载的方法可以具有不同的访问权限,重写方法的访问权限不能比父类的更低。
- 构造方法不能被重写。
- 问题:接口与抽象类的区别是什么?
解析:接口与抽象类有以下差异:
- 抽象类必须由子类继承,接口必须由类实现。
- 接口支持多重继承,而类只能单继承。
- 抽象类可以包含构造函数,而接口不能。
下载地址
用户评论