首页 > 代码库 > 抽象abstract
抽象abstract
1):一个类如果有抽象方法,这个类一定是抽象类。抽象类不一定有抽象方法。抽象方法是以分号结束。不是以{}。
抽象方法也不提供实现代码。
2):任何拓展抽象类的类都必须实现超类的所有抽象方法。除非子类也是抽象的。规则如下:
抽象类的第一个具体子类必须实现超类的所有抽象方法。
3):抽象方法因为是不能被实例化的,所以使用的时候要先进行子类对其实例化。然后实现它的方法。
abstract 和final 不能同时使用。
原因:abstract设计指超类完全不知道子类在该方法中应该怎样运作。
final设计意味着超类知道子类在该方法中应该怎样运作的每件事情。
abstract和private不能同时使用:
原因:private方法甚至不能被子类看到(更不要说被继承)。所以它们也不能被重写。
abstract和static不能同时使用:
原因:static不需要实例就可以使用。
abstract需要继承实现才能使用。
抽象是多态的一种体现,可以有子类来实现它。
静态不能实例化,故不能被子类引用。
你把一个类定义为abstract就是为了达到多态这个目的,如果abstract与static一起用的话,JVM则无法编译你要做什么。所以他们俩不能一起使用。
抽象abstract
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。