您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么我不能在任何方法之外修改类成员变量?

为什么我不能在任何方法之外修改类成员变量?

它不起作用,因为您是在无效的Java语法的构造函数方法之外定义实例的。

可能的解决办法是:

class SomeVariables {
    String s;
    int dontneed;
}

class MainClass {
    public static void main(String[]args){
        SomeVariables vars = new SomeVariables();

        vars.s = "why this doesnt work?. IDE says UkNown class 'vars.s'";
        System.out.println(vars.s);
    }
}

但是您可能要考虑保护您的类变量,例如使所有属性成为SomeVariables并使用settersgetters方法获取修改类本身中的值。例如:

class SomeVariables {
    private String s;
    private int dontneed;

    // Constructor method
    public SomeVariables() {
        // Initialize your attributes
    }

    public String getValue() {
        return s;
    }

    public void setValue(String value) {
        s = value;
    }
}

class MainClass {
    public static void main(String[]args){
        SomeVariables vars = new SomeVariables();

        vars.setValue("Some value");

        System.out.println(vars.getValue());
    }
}
其他 2022/1/1 18:25:51 有492人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶