语法
abstract class 类名
{
}
概念: 就是一个不能被实例化的类!【存在的意义就是为后代类提供一定的属性和方法】
人物设定: 只要该类中有一个抽象方法,那么该类必须被定义为抽象类;
使用设定: 如果子类继承自该类,子类想要实例化的话,就必须全部重新实现抽象类的所有抽象方法,否则子类也是个抽象类;
抽象方法:
语法:
abstract function abc(){} // 注意 我这不是留空 而是它执行内容真的 是空
概念: 就是一个什么都不干的方法【百度说的】【存在的意义 就是下级必须重写这个方法 但是不管你怎么写都可以 类似于啥呢: 老板让你去买东西给客户 你必须去买 但是 并不管你买什么】
使用要求:
l 1,一个抽象方法,必须放在抽象类中。 l 2,但:一个抽象类中,可以没有抽象方法——实际应用中,其实很少见。 l 3,下级类必须去“重写”上级类中的抽象方法,并给定具体实现代码(即该方法有方法体); ——但如果下级类本身又是抽象类,就可以不这么做——当然,做(去实现)也可以。 l 4,下级类实现上级类的抽象方法的时候,也要遵循如下原则: n a,访问修饰符的范围不能更小; n b,方法的参数跟上级类定义的保持一致; n ——其实上两条要求是“重写”的要求,而这里,其实本质就是重写。
参考地址:https://jingyan.baidu.com/article/d8072ac494dc29ec95cefd3c.html
|