类的特征之继承

继承:子类继承父类共有的属性和行为,但子类独有的属性和行为是父类没有的

1.实现了代码的重复使用 java中的继承是单继承的(为什么? 因为会出现调用的不确定性);

单继承:一个类只能继承另一个类

多继承:一个类可以继承多个类

2.关系:继承使类和类之间产生了父子关系 java支持多层继承(一个类可以有多个子类,但一个子类只能有一个父类) 如:

class A{}
class B extends A{}
class C extends B{}

父类中定义的是与子类共性的东西,子类可以有自己独有的东西,子类的功能更多

3.继承中成员的特点:

1)子类继承父类所有的成员变量,包括实例成员变量和静态成员变量

2)子类继承父类除构造方法以外的成员方法,包括实例成员方法和静态成员方法。通过子类对象可以调用父类的成员方法

3)子类不能继承父类的构造方法,为父类的构造方法只能用于创建父类实例并初始化,不能用于创建子类实例(子类必须声明自己的构造方法)

4)子类可以增加成员,可以重定义从父类继承来的成员,但不能删除

5)特例 子类中若出现于父类同名的成员变量时,子类中用 super.父类成员变量 来调用继承自父类的成员变量 成员方法类似也用 super 区分

6)若父类的成员(变量和方法)私有化(private),子类虽然继承了父类的成员但无权使用,此时需要调用父类公有成员 set() 与 get() 方法间接访问父类的私有成员

7)重写(覆盖):子类中出现和父类相同(方法名、参数、返回值均相同)的方法,但行为的表现方式不同(java认为子类没有必要单独定义),当创建子类对象调用重写的方法时,执行的总是重写后的方法 前提:存在继承关系

重载与重写的区别:重载是指同一个类中两个同名(参数列表不同)的方法;重写是指父类与子类之间的的同名(参数列表相同)方法

8)父类中 private 的方法不能被子类重写,子类在重写时,方法的权限要大于等于父类方法的权限

9)若父类中的方法是静态的,子类在重写时必须是静态的 static

4.继承中构造方法特点:

1)在创建子类对象时,先执行了父类的构造方法 原因是系统自动在子类的构造方的第一行加入了 super():调用父类中空参的构造方法

2)为什么 先执行父类的构造方法? 因为子类继承父类,必然会继承父类的属性,先执行父类的构造方法,可以利用父类构造方法中为属性赋值的语句

注意:父类中要写一个空参的构造方法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值