为什么我的代码会导致编译器错误?

时间:2019-05-14 11:12:59

标签: java compiler-errors

我试图理解为什么我的代码导致编译器错误。有人可以向我解释吗?

public class Employee {
    private String name;

    public Employee(String name) {
    this.name = name;
    }
}

public class Test {
    public static void main(String[] JavaLatte) {
        Employee e = new Employee("JavaDeveloper");
        System.out.println("Emp Name : " + e.name);
    }
}

3 个答案:

答案 0 :(得分:2)

您没有说出什么错误,但我想我知道了。

System.out.println("Emp Name : " + e.name);-name的{​​{1}}属性是e

这意味着您不能直接在另一个类中访问它。您需要使用吸气剂。

private

这样访问:public class Employee { private String name; public Employee(String name) { this.name = name; } public String getName(){ return name; } }

还可以更改需要设置员的财产的价值。

e.getName();

答案 1 :(得分:1)

我看到2个问题:

  1. 同一文件中不能有2个公共课程。
  2. name是一个私有字段。您无法从main访问它。使其通过吸气剂进行访问。

答案 2 :(得分:0)

当您将访问说明指定为私有时,它将不会编译。

您在这里有很多选择

选项1:根据需要使用相应的访问说明,例如public / protected / default。

选项2:为该变量生成的公共getter和setter方法,以访问变量名。