Java三大特性(面试常问)
- 封装:将数据和访问数据的方法绑定起来,对数据的访问只能通过定义好的接口。
- 继承:从已有的类获得继承信息创建新类的过程。
- 多态:允许不同子类型对象对同一消息做出不同的响应,简单来说就是相同对象的引用调用相同的方法做出不同的事。(体现:重载和重写)
重载和重写简单介绍:
-
重载(编译时多态):重载发生在同一个类中,方法重载要求有不同的参数列表(参数的个数,参数的类型,参数的顺序不同);重载可以有不同的返回类型,抛出新的异常,不同的访问修饰符…
*方法的重载不能以返回值类型来区分: -
重写(运行时多态):重写发送在父类与子类中,子类重写父类的方法要求:
1.重写要求有相同的方法名,参数列表,返回值类型;
2.重写的方法不能拥有比父类更严格的访问权限;
3.重写的方法不能比父类抛出更多的异常(里氏代换原则);