Java基础-访问修饰符
package com.hspedu.access_; import com.hspedu.access2_.Data2_; import com.hspedu.subdata_.SubData_; import org.junit.Test; public class TestAccess { /** * 可以访问的权限: * public:本类、同包、子类、不同包 * protected:本类、同包、子类 * 默认:本类、同包 * private:本类 */ @Test public void getData() { Data_ data_ = new Data_(); System.out.println("public: " + data_.n1); System.out.println("protected: " + data_.n2); System.out.println("default: " + data_.n3); // System.out.println("private: " + data_.n4); } @Test public void getData2() { Data2_ data2_ = new Data2_(); System.out.println("public:" + data2_.n1); // System.out.println("protected: " + data2_.n2); // 不可以访问protected以下级别 } @Test public void getSubData() { SubData_ subData_ = new SubData_(); System.out.println("public: " + subData_.n1); System.out.println("protected: " + subData_.n2); // System.out.println("default:" + subData_.n3); // 不可以访问默认以下级别(不同包) } }
package com.hspedu.access_; public class Data_ { public int n1 = 1; protected int n2 = 2; int n3 = 3; private int n4 = 4; }
package com.hspedu.access2_; public class Data2_ { public int n1 = 11; protected int n2 = 12; int n3 = 13; private int n4 = 14; }
package com.hspedu.subdata_; import com.hspedu.access_.Data_; public class SubData_ extends Data_ { }
TestAccess类和Data_类在同包下,Data2_和SubData_在不同包下测试

浙公网安备 33010602011771号