四种访问权限修饰符
1.说明
2.code 举例
-
A类中不同修饰符的属性和方法
package com.lmwei.p7.debug; public class Order { private int orderPrivate; int orderDefault; protected int orderProtected; public int orderPublic; private void methodPrivate() { orderPrivate = 1; orderDefault = 2; orderProtected = 3; orderPublic = 4; } void methodDefault() { orderPrivate = 1; orderDefault = 2; orderProtected = 3; orderPublic = 4; } protected void methodProtected() { orderPrivate = 1; orderDefault = 2; orderProtected = 3; orderPublic = 4; } public void methodPublic() { orderPrivate = 1; orderDefault = 2; orderProtected = 3; orderPublic = 4; } }
-
在同一个包的其他类中使用A类中的属性和方法
package com.lmwei.p7.debug; public class OrderTest { public static void main(String[] args) { Order order = new Order(); order.orderDefault = 1; order.orderProtected = 2; order.orderPublic = 3; order.methodDefault(); order.methodProtected(); order.methodPublic(); // 同一个包中的其他类,不可以调用Order类中私有的属性和方法 order.Pervate = 5; order.methodPervate(); } }
-
在不同包中继承A类的子类中使用A类中的属性和方法
package com.lmwei.p7.debug.test; import com.lmwei.p7.debug.Order; public class SubOrder extends Order { public void method() { orderProtected = 1; orderPublic = 2; methodProtected(); methodPublic(); // 在不同包的子类中,不能调用Order类中声明为private 和 Default 的属性和方法 orderDefault = 3; orderPrivate = 4; methodDefault(); methodprivate(); } }