继承 super关键字 方法重写 抽象 final

本文详细介绍了面向对象编程中的继承机制,包括使用extends关键字实现子类对父类的扩展,以及super关键字在访问父类成员时的作用。接着,讨论了方法重写的基本原则和注意事项,强调了@override注解的重要性。同时,介绍了抽象类和抽象方法的概念,它们在防止实例化和强制子类实现特定方法方面的作用。最后,讲解了final关键字的用途,包括防止类、方法和变量被继承或修改,确保代码的不可变性。
摘要由CSDN通过智能技术生成

继承

先说说继承的好处吧简单来说就是可以让多个类里重复的代码放在一个类里供其他类使用,不用在其他的类里重复写代码,方便修改代码

extands的意思是“扩展” 。子类是父类的扩展

不同的叫法:超类、父类、基类、子类、派生类一般叫父类和子类

使用继承

创建一个父类在父类里写公共的属性和方法

在创建一个子类

class Dog extends Pet {

//子类特有的属性和方法

}

在子类里用extends父类表示该子类继承父类,只在子类写出子类特有的属性和方法

注意!

不能直接访问private成员 被 继 承 的 父 类 成 员

子类不能直接访问private成员

子类与父类不在同包, 使用默认访问权限的成员

构造方法

super关键字

super是直接父类对象的引用。

可以通过super来访问父类中被子类覆盖的方法或属性。

子类访问父类成员就是super(name);注意必须在第一句

访问父类构造方法super();这是访问无参构造方法也可访问带参构造方法

访问父类属性 super.name;

访问父类方法 super.print();

super和this不能同时出现在构造方法中

super和this都不能再static方法中

方法重写

在子类中可以根据需要对从基类中继承来的方法进行重写。

重写方法必须和被重写方法具有相同方法名称、参数列表和返回 类型。

重写方法不能使用比被重写方法更严格的访问权限

@override表示该方法时方法重写

构造方法不能被重写

方法重写的规则

– 方法名相同

– 参数列表相同

– 返回值类型相同或者是其子类;

– 访问权限不能严于父类

要注意重载和重写的区别

抽象类

Java中使用抽象类,限制实例化

public abstract class Pet {

}

abstract也可用于方法叫做抽象方法

抽象方法没有方法体

– 抽象方法必须在抽象类里

– 抽象方法必须在子类中被实现,除非子类是抽象类

final

Penguin类不希望再被其他类继承? – 使用final类 就是最终形态的类

方法不希望被重写? – 使用final方法 最终形态的方法

属性值不希望被修改 – 使用常量 最终属性值

使用final修饰引用型变量, 变量不可以再指向另外的对象

使用final修饰引用型变量,变量的值是固定不变的,

而变量所指向的对象的属性值是可变的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值