之前写了一个刘铁猛老师类的继承,但是讲的比较笼统,适合作为学过但是忘记的人使用。本次写的会更加的零基础,小白一点
继承也是为了避免代码冗余,比如人类,就会有姓名性别年龄等共有的特性,但是人类下面的分支会有各种不同的特点。例如人类下的老师,会教书。学生,要写作业。厨师,会做菜。于是创建他们的类的时候,不需要再重新对姓名性别年龄等共有的特性重新定义,只需要定义他们的特点就好了。这就是类的继承的作用
于是,上述的人类就是父类,它的东西可以提供给下面继承的子类使用,子类就是例如老师,学生,厨师这样的
继承的语法
class Vehicle
{
//里面还什么都没写
}
class Car:Vehicle//car和vehicle就构成了一个继承类,用:来表示继承
{
}
但是子类并没有继承父类的私有字段。
一个类最多有一个基类,子类的访问级别不能超越父类。并且继承有传递性,很好理解就是子类可以使用最初父类的成员
子类无法继承父类的构造函数
子类会默认的调用父类无参的构造函数,创建父类对象,让子类可以使用父类中的成员。完成继承的效果,所以如果父类中自定义了构造函数,那么子类就调用不了,会报错
解决方法
- 在父类中重写一个无参数的构造函数,但很麻烦的是自己要重新写构造函数
- 在子类