java中abstract怎么使用
1个回答
展开全部
关键字 abstract
abstract关键字修饰类, 该类为抽象类:
抽象类可以不包含抽象方法, 但是含有抽象方法类一定要声明为抽象类, 抽象类也可以包含非抽象方法.
抽象类有构造方法, 但是不能直接调用, 否则编译出错;
抽象类的构造方法是提供给子类创建对象时初始化父类属性的.
抽象类不能被实例化, 根据多态性, 抽象类可以指向其实现类.
原因: 因为抽象类是存在抽象方法的, 如果抽象类能创建对象的话, 那么使用抽象的对象调用抽象方法是没有任何意义的.
子类继承抽象类必须完全实现其所有的抽象方法, 否则子类只能声明为抽象类; 当一个类实现一个接口时, 必须完全实现接口内所有的抽象方法, 否则也必须声明为抽象类.
抽象类不能被final修饰符修饰, 因为抽象类需要子类继承实现, 而final修饰的类是不能被继承的.
abstract关键字修饰方法, 该方法为抽象方法, 其不包含方法体
抽象方法不能被final修饰, 也不能被private修饰, 因为抽象方法需要被子类重写的, 而final和private修饰的方法是不能被重写的.
抽象方法不能被static修饰.
abstract关键字不能修饰变量, 因为该关键字表明的是未实现的含义, 而变量不存在未实现.
abstract关键字修饰类, 该类为抽象类:
抽象类可以不包含抽象方法, 但是含有抽象方法类一定要声明为抽象类, 抽象类也可以包含非抽象方法.
抽象类有构造方法, 但是不能直接调用, 否则编译出错;
抽象类的构造方法是提供给子类创建对象时初始化父类属性的.
抽象类不能被实例化, 根据多态性, 抽象类可以指向其实现类.
原因: 因为抽象类是存在抽象方法的, 如果抽象类能创建对象的话, 那么使用抽象的对象调用抽象方法是没有任何意义的.
子类继承抽象类必须完全实现其所有的抽象方法, 否则子类只能声明为抽象类; 当一个类实现一个接口时, 必须完全实现接口内所有的抽象方法, 否则也必须声明为抽象类.
抽象类不能被final修饰符修饰, 因为抽象类需要子类继承实现, 而final修饰的类是不能被继承的.
abstract关键字修饰方法, 该方法为抽象方法, 其不包含方法体
抽象方法不能被final修饰, 也不能被private修饰, 因为抽象方法需要被子类重写的, 而final和private修饰的方法是不能被重写的.
抽象方法不能被static修饰.
abstract关键字不能修饰变量, 因为该关键字表明的是未实现的含义, 而变量不存在未实现.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询