了解Java中的静态

时间:2016-10-25 19:51:18

标签: java eclipse methods static this

我对“静态”对变量的作用以及为什么“这个”不能一直应用有疑问。为什么“静态”变量不能用于非“静态”方法?

考虑代码:

public class Person {

    String name;
    int age;

    public void Person (String name, int age) {
        this.name = name;
        this.age = age;
    }

}

如果我向构造函数添加“static”,那么它一直说“this”不能用于静态竞赛。那是什么意思? “静态”是否意味着我不必使类的实例使用该方法?我可以直接说出来吗?

还要考虑这段代码:

public class Prog168h {

    static String name2;
    static int age2;

    public void Prog168h (String name, int age) {
        name2 = name;
        age2 = age;
    }

}

在这个片段中,当我将变量设置为“静态”并且方法保持非“静态”时似乎没有错误。为什么这是允许的,但不是只有方法是静态的?

为什么变量也必须创建为“静态”,因为它们不是在类中的全局范围内创建的吗?

当方法/构造函数是“静态”时,为什么“this”不起作用?

我很感激帮助。非常感谢你!

我已经研究了静态意味着什么,但我似乎无法掌握这里的应用程序。

0 个答案:

没有答案