我可以在同一个包下的另一个类中调用一个类的静态方法吗?

时间:2012-07-04 11:12:35

标签: java methods static

可以在同一个包中调用方法,而不需要创建java类或没有java继承的对象

public class BoxWeight /*extends Box*/{
    public static void main(String[] args) {
        /*BoxWeight myCat = new BoxWeight();*/
        /*Box myAnimal = myCat;*/
        Box.testClassMethod();<------------ why this possible 
        /* myAnimal.testInstanceMethod();*/
    }   
}

public class Box /*extends Bicycle*/{

    public static void testClassMethod() {
        System.out.println("The class" + " method in Box.");
    }
    public void testInstanceMethod() {
        System.out.println("The instance " + " method in Box.");
    }
}

我的问题不是这个,因为你似乎我的问题是这个“可以在同一个包中调用一个方法,没有类的创建对象或没有java中的继承”但是我已经修复了这个我想确认这是可能的还是不

2 个答案:

答案 0 :(得分:1)

如果方法声明为ClassName.methodName(),则可以使用语法static调用方法,例如

class ClassName {
  static void methodName() {
    //...//
  }
}

有关静态类成员的更多信息,请参阅Java Tutorials

答案 1 :(得分:0)

使您的方法成为静态,然后您可以按类名调用该方法。

class A {
static void display(){

    System.out.println("Called..");
}
}

在同一个套餐中,您可以将其称为。<​​/ p>

A.display();