访问控制

  Java的访问指示符有public(公共的,全局的)、private(私有的,局部的)、和protected (受保护的)。Java也定义了一个默认访问级别。

指示符protected仅用于继承情况中。下面 我们描述其他两个访问指示符。

当一个类成员被public指示符修饰时,该成员可以 被你的程序中的任何其他代码访问。

当一个类成员被指定为private时,该成员只能被它的 类中的其他成员访问。现在你能理解为什么main( )总是被public指示符修饰。

它被在程序外 面的代码调用,也就是由Java运行系统调用。如果不使用访问指示符,该类成员的默认访 问设置为在它自己的包内为public,但是在它的包以外不能被存取。

示例:

class Test { 
int a; // default access 
public int b; // public access 
private int c; // private access 

// methods to access c 
void setc(int i) 
{ 
// set c‘s value 
c = i; 
} 
int getc() 
{ 
// get c‘s value 
return c; 
} 
} 
class AccessTest { 
 public static void main(String args[]) { 
Test ob = new Test(); 
// These are OK,a and b may be accessed directly 
ob.a = 10; 
ob.b = 20; 
// This is not OK and will cause an error 
// ob.c = 100; // Error! 
// You must access c through its methods 
ob.setc(100); // OK 
System.out.println("a,b,and c: " + ob.a + " " + 
ob.b + " " + ob.getc()); 
} 
}

 总结:成员c被指定为private,因此它不能被它的类之外的代码访问,访问它只能通过它的public方法。

 

访问控制

上一篇:Java配置环境变量、方法和原因


下一篇:Andrew Ng机器学习课程笔记--week3(逻辑回归&正则化参数)