0

可以在同一个包中通过类名调用方法而无需创建类的对象或在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 中没有继承”,但我已经解决了这个问题,我想确认这是否可能

4

2 回答 2

1

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

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

有关静态类成员的更多信息可以在Java 教程中找到。

于 2012-07-04T11:15:55.897 回答
0

使您的方法静态,然后您可以通过类名调用该方法。

class A {
static void display(){

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

在同一个包中,您可以将其称为 .

A.display();
于 2012-07-04T11:17:39.333 回答