java中訪问修饰符

时间:2023-03-10 01:18:15
java中訪问修饰符

较之c++ 中 public,proctected, private 三种訪问控制, java多了默认訪问控制。

java中四种訪问控制权限 简单描写叙述为一下四句:

1)private 仅本类可见 (同c++)

2)默认 对本包可见/包内訪问 (c++没有)

3)protected 对本包和全部子类可见 (c++中没有本包概念。较 默认訪问 能够被在其它包下的子类訪问)

4)public 对全部类可见 (同c++)

当中1)4)与c++同样,对2)3)做简单測试

3)protected 对本包可见測试例如以下:

package com.behavior;
public class Parent {
protected int i = 3;
}
package com.behavior;
//与Parent在同一个包下,无继承关系
public class Children {
public void action() {
Parent parent = new Parent();
System.out.print(parent.i);
}
}
package com.stratege;
import com.behavior.Children;
public class ChildrenTest {
public static void main(String [] args) {
Children children = new Children();
children.action();
}
}

验证:protected 对包内訪问的权限

2)默认 对包内訪问測试

将Parent中变量i 訪问权限做例如以下改动,Children, ChildrenTest不变

package com.behavior;
public class Parent {
int i = 3;
}

验证:默认对包内訪问的权限