我们可以在Java中声明私有,受保护,公共或默认的抽象方法吗?
没有主体的方法称为抽象方法。它仅包含带有半冒号和前面的抽象关键字的方法签名。
public abstract myMethod();
要使用抽象方法,您需要通过扩展其类并为其提供实现来继承它。
声明一个私有抽象方法
如果类的方法是私有的,则不能从当前类之外访问它,甚至不能从其子类访问它。
但是,如果使用抽象方法,则不能在同一类中使用它,而需要从子类中覆盖它并使用。
因此,抽象方法不能是私有的。
如果仍然尝试将抽象方法声明为final,则会生成编译时错误,提示“修饰符的非法组合-抽象和私有”。
示例
在下面的Java程序中,我们试图将一个抽象方法声明为private。
abstract class AbstractClassExample {
private static abstract void display();
}编译时错误
编译时,上面的程序生成以下错误。
AbstractClassExample.java:2: error: illegal combination of modifiers: abstract and private
private static abstract void display();
^
1 error声明一个受保护的抽象方法
是的,您可以声明一个受保护的抽象方法。如果这样做,则可以从同一包中的类或其子类访问它。
(任何您必须重写子类中的抽象方法并调用它。)
示例
在下面的Java程序中,我们试图声明一个受保护的抽象方法。
abstract class MyClass {
protected abstract void display();
}
public class AbstractClassExample extends MyClass{
public void display() {
System.out.println("This is the subclass implementation of the display method ");
}
public static void main(String args[]) {
new AbstractClassExample().display();
}
}输出结果
This is the subclass implementation of the display method
热门推荐
10 新年门口花束祝福语简短
11 盘锦结婚祝福语大全简短
12 父母生日祝福语 简短独特
13 家庭恩爱祝福语简短英文
14 高考俄语祝福语大全简短
15 虎年祝福语 诗句唯美简短
16 生日婚礼祝福语简短精辟
17 虎年喝酒拜年祝福语简短
18 教师闺蜜祝福语简短