先写了一个User()类:

package chapter01;

public class User {

    // 私有的
    private int id;

    // 受保护的
    protected int age;

    // 公开的
    public int weight;

    // 默认的
    String name;
}

 

在同包下创建一个新类Test2()类:

分别访问User()类下的4个变量,private修饰的id,无法访问!

package chapter01;

public class Test02 {

    public static void main(String[] args) {

        User user = new User();

        // private 修饰的元素,只能在本类中使用
//        System.out.println(user.id);

        System.out.println(user.age);

        System.out.println(user.weight);

        System.out.println(user.name);

    }
}

 

在不同包下创建Test03()类,分别访问User()类下的变量,只有public修饰的变量可以访问!

package chapter02;

import chapter01.User;

public class Test03 {

    public static void main(String[] args) {

        User user = new User();

        // 受保护的
//        System.out.println(user.age);

        // public修饰的,在任何位置都可以使用
        System.out.println(user.weight);

//        System.out.println(user.name);

    }
}

 

最后在不同包下创建一个类,继承User()类,可以访问protected修饰的变量,不能访问默认的变量name!

package chapter02;

import chapter01.User;

// private 私有的,只能在本类中访问
// public 公开的,在任何位置都可以访问
// protected 受保护的,只能在本类、同包、子类中访问
// 默认的,只能在本类、同包下访问


public class Test04 extends User {

    public void go(){
        System.out.println(this.age);

//        System.out.println(this.name);
    }
}

 

总结:

 

版权声明:本文为yunren原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/yunren/p/14176743.html