构造函数可以在Java类中访问哪些变量?

时间:2015-11-19 00:44:43

标签: java oop constructor access-modifiers

我正在研究Java(OOP)中的构造函数,但无法弄清楚构造函数可以访问哪种类型的变量?构造函数可以访问以下哪些变量?

  1. 由任何方法定义的局部变量
  2. 私有实例变量
  3. 公共实例变量
  4. 静态变量
  5. 我创建了以下示例来详细说明我的问题:

    public class constructorAccess {
        public int marks; // 3. Public instance variable
        private String firstName; // 2. Private instance variable
        static final String LASTNAME = "Smith"; // 4. Static variable
    
        public static void studentId(){
            int id; // 1. Local variable inside method
            id = 5;
            System.out.println(id);
        }
    
        public constructorAccess(int marks, String firstName) {
            this.marks = marks;
            this.firstName = firstName;
        }
    }
    

    是否可以从constructorAccess访问id(1。在studentId方法中声明的局部变量)和LASTNAME(4.在类中声明的静态变量)?

    public constructorAccess(int marks, String firstName) {
       this.marks = marks;
       this.firstName = firstName;
       // How can I use id variable here from studentId method?
       // How can I use LASTNAME static variable here?
    }
    

    我用它访问了私有和公共实例变量。引用,但LASTNAMEid变量给我错误(创建一个局部变量)。

0 个答案:

没有答案