JAVA静态类

JAVA静态类,java,static,static-methods,Java,Static,Static Methods,我有一个类正在扩展jdbcream类并实现Realm接口: public class TomcatRealm extends JDBCRealm implements Realm {} 我的问题是如何使外部类成为静态的,也就是说,我能够调用jdbcream类的方法,而无需实例化TomcatRealm类 编辑1: 我看到很多人没有理解这个问题的意图。实际上,我想从TomcatRealm中的静态方法内部调用jdbcream类的方法。例: private static String getCredC

我有一个类正在扩展
jdbcream
类并实现
Realm
接口:

public class TomcatRealm extends JDBCRealm implements Realm {}
我的问题是如何使外部类成为静态的,也就是说,我能够调用
jdbcream
类的方法,而无需实例化
TomcatRealm

编辑1:

我看到很多人没有理解这个问题的意图。实际上,我想从
TomcatRealm
中的静态方法内部调用
jdbcream
类的方法。例:

private static String getCredCol() {
    // TODO Auto-generated method stub
    return getUserCredCol();
}
//This static method cannot hide the instance method from `JDBCRealm`
编辑2:

在另一个问题中,有人建议我实例化
jdbcream
,然后在
TomcatRealm
静态方法中调用它的方法。我已经尝试过了,但面临一个问题:


作为解决这个问题的一种方法,我想尝试一下。

您不能将外部类设为静态类,但您可以这样做,看一看

接口域{
}
类JDBCRealm{
受保护静态无效m1(){
System.out.println(“类JDBCRealm.的受保护静态方法m1”);
}
公共静态无效m2(){
System.out.println(“类JDBCRealm.的公共静态方法m2”);
}
}
公共类TomcatRealm扩展了JDBCRealm实现的领域{
公共静态void main(字符串…参数){
JDBCRealm.m1();//受保护的类JDBCRealm.的静态方法m1。。
JDBCRealm.m2();//类JDBCRealm的公共静态方法m2。。
}

}
你想对“Singleton”做一些研究你想做什么?@JoeC能够调用JDBCRealm类的方法而不实例化TomcatRealm类为什么不简单地实例化JDBCRealm并使用它?@HBK你不必这样做。只需将方法标记为static。但不清楚你到底想要什么;这可能是一个问题,
jdbcream
类是一个定义良好的类,它有我需要重用的具体方法。我想使用现有的方法
jdbcream
tomcatrealmt1=newtomcatrealm();t1.m1();//你可以这样做。否则,请借助静态嵌套内部类。这可能会有帮助