父类要体现所有子类的共同特征,在设计某些方法(行为特征或功能)时,我们发现父类中无法给出合理的具体实现,而应该交由子类来实现,那么这样的方法就应该设计为抽象方法,而包含抽象方法的类就必须为抽象类。
从另一个角度说,当父类表现为更通用的概念类,以至于创建它的实例对象没有实际意义,那么这样的父类就算没有抽象方法,也应该设计为抽象类。
在Java中使用关键字abstract表示抽象。
所谓抽象方法,就是指没有方法体实现代码的方法,它仅具有一个方法签名。语法格式如下:
ini复制代码 [访问权限修饰符] abstract 返回值类型 方法名(参数列表) [throws 异常列表];
本地方法可以用private、static、final修饰,但是抽象方法不允许使用这些修饰符,否则子类将无法重写并实现抽象方法。
另外,只允许在抽象类和接口中声明抽象方法,否则将发生编译错误。
Java规定如果一个类中包含抽象方法,则该类必须设计为抽象类。当然,也并非所有的抽象类都包含抽象方法,当某个父类表现为更通用的概念类,以至于创建它的实例对象没有实际意义时,那么这样的父类就算没有抽象方法,也应该设计为抽象类。
抽象类语法格式如下:
csharp复制代码 [权限修饰符] abstract class 类名{
}
抽象类也是类,所有类的成员在抽象类中都可以声明。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务