我们可以在java中创建公共静态抽象类吗?

Yas*_*han 14 java

我在谷歌搜索的东西,我得到了一个类似的代码

public static abstract class LocationResult{
    public abstract void gotLocation(Location location);
}
Run Code Online (Sandbox Code Playgroud)

这是一个嵌套类,但想知道它是如何可访问的?

Dav*_*itz 19

它必须是一个嵌套类:对static关键字嵌套类(不是在它的方法)仅用于(和语法上有效).这样的静态成员类(在Nutshell的通用命名法中使用Java)不包含对封闭类的引用,因此只能访问其中的静态字段和方法(与非静态字段和方法不同;请参阅Java中嵌套类的任何摘要(同样被称为内部类.

它可以像这样访问:

public class EnclosingClass {
  public static abstract class LocationResult{
    public abstract void gotLocation(Location location);
  }
}

EnclosingClass.LocationResult locationResult = ...
Run Code Online (Sandbox Code Playgroud)

  • 或者它可以被其他嵌套类扩展. (2认同)