如果觉得文章对你有帮助,请点喜欢并关注,这将是我最大的动力,谢谢
-
为什么要有抽象类
1.当多个类具有相同的功能(简单理解为方法名相同),但各个类具体的功能实现或者代码不同,这时就可以建立父类,对该功能进行抽取,但是父类并不需要该功能的实现,因此只抽取该功能的定义,也就是方法名,而不需要实现该功能,这就是抽象类的一个价值应用。
2.而且抽象类还强制子类重写抽象方法,也就是说,约束子类必须拥有哪些方法。这是他与其他类区别的一大特点。比如你认为交通工具必须会移动,不移动要他干嘛?所以你可以这样写 ,这样当无论是汽车还是自行车继承他时,必须要复写move方法。abstract class vehicle{
abstract void move();
}
-
抽象类的书写格式
abstract class pig{
abstract void sleep();
}
-
抽象类特点
1.抽象方法必须被定义在抽象类内部
2.抽象方法和抽象类必须被abstract关键字修饰。
3.抽象类不可以创建对象,实际上也没有意义。
4.要使用抽象类的方法,需要先建立起该类的子类并对该方法进行重写,通过子类对象进行调用。但子类必须要覆盖所有抽象方法,否则该子类依然是抽象类。(因为这样的话,子类就继承了父类的抽象方法,那么子类也就称为了抽象类)
5.也可以这样来理解,抽象类的抽象方法只定义功能,具体实现是子类来实现,并且强制子类复写,否则子类也将是抽象类。
6.抽象类也可以拥有具体成员变量以及方法。
7.当然,抽象类也可以没有抽象方法,这样做的目的仅仅是为了让该类不被创建对象。
8.其他和普通类一样。
小呆莫