java中类的继承1

本文介绍了面向对象编程中的关键概念,包括类之间的关系如依赖、聚合和继承,解释了super关键字的作用,探讨了多态和动态绑定的概念,并详细阐述了如何通过final关键字阻止继承以及抽象类的使用。

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

1、           类之间的关系:

1)       依赖(“uses-a”) ,是一种最明显的、最常见的关系。如果一个类的方法操纵另一个类的对象,我们就说一个类依赖于另一个类。

2)       聚合(“has-a”)、聚合意味着类A的对象包含类B的对象。

3)       继承(“is-a”): 是一种用于表示特殊与一般关系的。一般而言,如果类A扩展类B,类A不但包含从类B继承的方法,还会拥有一些额外的功能。

2、           一个关键字:super

在子类中想要调用父类中被重写的方法时,可以用super 关键字。

如super.getName();

super 不是一个对象的引用,不能将super赋给另一个对象变量,它只是一个指示编译器调用父类方法的特有的关键字。

super也可以在子类的构造器中应用,如super(name , id , sex);  是调用父类中含有name、id、sex参数的构造器的简写形式;使用速super调用构造器的语句必须是子类构造器的第一条语句。

3、           多态:一个对象变量可以引用多种实际类型的现象被称为多态(polymorphism);

4、           动态绑定:在运行时能够自动的选择调用哪个方法的现象称为动态绑定(dynamic binding)。

5、           阻止继承:final类和方法

不允许扩展的类被称为final类,类中的方法也可被声明为final,如果这样做,子类就不能覆盖这个方法(final类中的所有方法自动的成为final方法,不包括域)

将方法或类声明为final主要因为确保它们不会再子类中改变语义。

6、           抽象类

1)       包含一个活多个抽象方法的类本身必须声明为抽象的。关键字为abstract

2)       抽象方法充当着占位的角色,它们的具体实现在再子类中。

3)       即使不含抽象方法,也可以将类声明为抽象类。

抽象类不能被实例化,即不能创建这个类的对象。但可以定义一个抽象类的对象变量,但是它只能引用非抽象子类的对象。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值