前言
上篇我们对类的属性声明,及类中的方法,静态方法,还有静态变量做了一个讲解。那么今天让我们来学习下类的继承相关知识。
今天涉及知识:
- 可继承标志及继承范围关键字
- 类继承
- 父类子类调用情况
一. 可继承标志及继承范围关键字
在Java中类默认情况下是都能被继承的,除非一个类加上final关键字才不能被继承。在kotlin中,一个类默认情况下是不能被继承的。若一个类需要被继承,或者一个方法可以被重写,那么必须加上关键字open.kotlin中关于一个类或方法的使用范围也有关键字修饰,如下表:
| 开放性修饰符 | 说明 |
|---|---|
| public | 对所有开放,kotlin中所有类,函数方法,变量在不加修饰的情况下,默认是public
|
| internal | 仅对模块内部开发,此关键字为kotlin新增。对App开发而言,本模块指App自身 |
| protected | 仅对自己和子类开放 |
| private | 仅对自己开放,即私有 |
这里我们需要理解的是open表示该类,方法,变量是否可以被继承,重写。而public,internal,protected,private,用来表示继承,重写等的范围。但是open表示可被重写或继承,而private表示该类只对自己私有,不可重写,继承。故open和private不能修饰同一个对象(该对象可以是类,方法,变量)。
二. 类继承
2.1 无主构造函数的继承
对于无主构造函数的继承,父类示例如下:
open class Animal {
var name:String=""
}
子类示例如下:












网友评论