Java父类子类的执行顺序_极悦注册
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java父类子类的执行顺序

Java父类子类的执行顺序

更新时间:2022-06-24 09:15:38 来源:极悦 浏览1238次

Java父类子类的执行顺序是怎样的?极悦小编告诉大家,java和其他语言一样,子类可以继承父类,但父类不能继承子类。

Java父类子类的执行顺序

譬如创建两个类,一个Fruit类,一个Apple类,你可以Fruit a = new Apple,不可以Apple a = new Fruit。

以常用的List型为例,你可以List l = new ArraytList,但不可以反着来。

而在List,Set等类型中,即使时它们的具体类型(就是用两个三角括号包起来的那个)是父子类的关系,它们也不能互相继承。

比如List a = new List,Set l =new Set,这两种写法都是错的,但是List s = new ArrayList是正确的。

通过这两个例子,可以粗略的看到,对与可以进行细化元素类型的类型,即使细化的元素互为父子类关系,它们也不能够互相继承,而对类型本身则是不会遇到这个问题的。

这是因为java在运行程序时,会把List、Set之类的类型的类型细化(后面三角括号里的东西)全部擦除,擦除的结果就导致在运行时如果加入属于List但不属于ArrayList(以Set l =new Set这句代码为例)的元素,系统不会报错。这无疑会造成严重的错误。因此,为了避免这种错误,java决定在系统运行之前的检查中就规避掉这种行为。

同时,对于java的子类型还有如下的约束:

1.子类型可以增加方法,但不能删除方法

2.子类型需要具体化父类型中抽象的方法

3.子类型方法有更多的不变量,更强的前置条件和更弱的后置条件

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>