Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:如何使用类名直接调用方法_Java - Fatal编程技术网

Java:如何使用类名直接调用方法

Java:如何使用类名直接调用方法,java,Java,正如我所知,无论何时我们想要调用任何方法,我们都会创建对象并使用obj.methodname调用它的方法 但是下面的程序调用E类的方法而不创建对象。这怎么可能?请任何人帮助我理解这个概念 我的意思是从下面的代码来看,如何编写E.test2(),我认为应该是E obj=newe();obj.test2() 静态方法可以使用类名调用,并且不需要该类的对象 请阅读以下内容:可以使用类名调用静态方法,并且不需要该类的对象 请阅读以下内容:方法E.test2声明为static,这意味着您可以使用此方法而无

正如我所知,无论何时我们想要调用任何方法,我们都会创建对象并使用
obj.methodname
调用它的方法

但是下面的程序调用
E
类的方法而不创建对象。这怎么可能?请任何人帮助我理解这个概念

我的意思是从下面的代码来看,如何编写
E.test2(),我认为应该是
E obj=newe();obj.test2()


静态方法可以使用类名调用,并且不需要该类的对象


请阅读以下内容:

可以使用类名调用静态方法,并且不需要该类的对象


请阅读以下内容:

方法
E.test2
声明为
static
,这意味着您可以使用此方法而无需创建该类的实例。Java中有很多类使用它

见文件:


方法
E.test2
声明为
static
,这意味着您可以使用此方法而无需创建该类的实例。Java中有很多类使用它

见文件:


test2方法在类E中是静态的,静态方法是特定于类而不是特定于对象的,并且可以使用“classname.methodname”语法访问它们。
其中methodname是“classname”的静态方法,test2方法在类E中是静态的,而静态方法是特定于类而不是特定于对象的,它们是使用“classname.methodname”语法访问的。
其中methodname是“classname”的静态方法,但您怎么能说
类E
是静态的呢?`类不需要是静态的。E中的方法需要是静态的。
E
不是静态的(对于顶级类来说这甚至是不可能的)。这种方法是静态的
E
只是用来指定哪个类持有
static
方法。但是你怎么能说
类E
是静态的呢?`一个类不需要是静态的。E中的方法需要是静态的。
E
不是静态的(对于顶级类来说这甚至是不可能的)。这种方法是静态的
E
只是用来指定哪个类持有
static
方法。可以通过类名调用
static
方法,因为它们属于
class
而不是
类的任何
实例
,所以可以使用
类名
调用它们。我建议您转到下面链接并完整阅读它。
静态
方法可以通过类名调用,因为它们属于
而不是
的任何
实例
,因此可以使用
类名
调用它们。我建议您转到下面的链接并完整阅读它。哦,谢谢,我没有在我的方法前面看到
static
。所以我问了d这个问题。实际上,我知道可以使用类名调用静态成员。5分钟后我才能接受你的回答哦,谢谢,我没有在我的方法前面看到
static
。所以我问了d这个问题。实际上,我知道可以使用类名调用静态成员。5分钟后我才能接受你的回答
    class E
{
    int i;
    static int j;

    void test1()
    {
        System.out.println("From test1");
    }
    static void test2()
    {
        System.out.println("From test2");
    }
}

class F extends E
{
    int m;
    static int n; 
    void test3()
    {
        System.out.println("From test3");
    }
    static void test4()
    {
        System.out.println("From test4");
    }
}

public class G {
    public static void main(String args[])
    {
        E.test2();
        F.test2();
    }
}