Java学习之子类与父类实例化问题~

本文详细解析了Java中子类继承父类的过程,重点介绍了方法重写的规范及实例演示。通过具体示例,展示了如何在子类中重写父类的方法,并强调了@override注解的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个子类继承父类,将继承父类所有的public属性及方法。并且当我们在测试方法中(main),对子类进行实例化的时候,我们通常有以下操作。


上图中,GoodPeople是People类的子类,并且重写了classification方法,注意,这里的@override声明一定要加上,这个在阿里java规范里,是强制要求的,这样更加严格一些。有了规范尽量严格遵守,即使是很小的程序。

在main方法中,对第一句话的解读就是:

我们声明一个People类型的对象引用,这个引用(指针)最终指向的是我们实例化的一个GoodPeople的堆内存空间。

所以第三行中,当我们调用子类的showThis()方法的时候,我们需要进行一部强制类型转化的操作。也就是向下转型操作。所以这样问题就迎刃而解啦~。

突然想到一个例子比方我们这样做:

Object obj = new String("goodPeople");

(String)obj.toLowerCase();

其道理也是一样的,我们也需要将其转化为子类类型的指针,但指向的内存空间是相同滴。希望可以帮到大家~。

另外补充一下,我注释的那个地方。

以前在复写子类的时候,IDE会自动打上super.父类方法。一直觉着这句话好像仅仅是声明一下,并不会有实际的意义。但如果声明这句话,还是会执行的,执行的结果就是打印出父类方法中所进行的操作哦~。所以初学java的童鞋注意一下哈。希望可以帮到你~。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值