abstract 关键字

语言:java

 

abstract 的意思是 抽象的,在java中可修饰 :类和方法

一、 abstract修饰的类又叫抽象类,抽象类无法被实例化,所以在开发中一般要有相应的子类出现,实例化它的子类,获取相应的结构。抽象类中一定有构造器,便于子类实例化时调用。

 

二、 abstract修饰的方法叫抽象方法,抽象方法没有方法体,且无法被直接调用。所以为了保证这一点,含有抽象方法的类一定是抽象类,所以相应的子类若要满足编译条件,要么同样是抽象类,要么将抽象类的所有抽象方法重写

另外可以得出结论:含有抽象方法的类一定是抽象类,而抽象类不一定有抽象方法。

 

备注①:无法修饰构造器和属性:属性无法被重写;构造器被抽象了就不像话了。

备注②:无法和final同用,也就是无法修饰final类和final方法:final 类无法被继承,抽象类需要被继承;final方法无法被重写,抽象方法没有方法体需要被重写,均造成冲突。

备注③:无法和static 同用,也就是和静态方法冲突:方法虽然能被重写,但静态方法不可以,子类中与父类的同名同参的静态方法不是被重写的方法,换句话说就是,静态方法无法被重写。

备注④:无法和private私有方法同用:同样的道理,私有方法在子类中无法被直接调用无法被重写。

posted @ 2021-11-26 10:40  我tm是星河大帝  阅读(180)  评论(0)    收藏  举报