小编tan*_*nou的帖子

有没有办法禁止子类在java中调用超类的公共方法?

有没有办法禁止子类在java中调用超类的公共方法?

例如

public abstract class TObject{
    abstract public void quark();
}


public class Animal extends TObject{

       public void quark(){
           System.out.println("this is the animal");
       }

}

public class Dog extends Animal{
       @overide
       public void quark(){
           System.out.println("this is the animal");
           **super.quark();**
       }
} 

In this example, The Dog call the **super.quark();** in it's quark method.
Run Code Online (Sandbox Code Playgroud)

但我不希望狗可以打电话给super.quark(); 我也不想改变

动物到私人夸克方法的修饰语.有没有办法在编译中防止这种情况?

我有几天困惑,谁能帮助我........

我这样做的原因是我在开发hudson scm插件时遇到了类似的问题.I

创建了扩展SubversionSCM(官方类)的类.我只是想

覆盖超类的公共方法,然后调用super的公共方法

例.但编译给出了错误.我不知道为什么,怎么办?剂量java有

反映方式 s,以防止这种情况?

java

0
推荐指数
1
解决办法
588
查看次数

标签 统计

java ×1