java如何从另一个类调用抽象内部类的方法?
public class OuterClass {
abstract class InnerClass {
int value = 20;
public void print(){
System.put.println("Value = " + getValue());
}
public abstract int getValue();
}
}
有人能帮我吗,我如何从另一个拥有main方法的Java类调用print()方法
# 1 楼答案
因为
InnerClass
是non static
,所以需要一个OuterClass
的实例来访问它。接下来,因为它是抽象类,所以您需要一个子类,您可以实际创建它的实例。在子类中,可以使用super调用super-classes方法我能想到的一个办法是
# 2 楼答案
您不能实例化抽象类,因此要调用该类的实例方法,您需要将其子类化
为了将其子类化,您需要实现其抽象方法
是一种方法,尽管在实践中您可能希望以不同的方式执行此操作,但其中一种方法是JBNizet建议在
OuterClass
中使用一个方法来返回您想要的InnerClass
类型