Java的隐藏实现
在面向对象的设计中,最关键的问题就是”将会变与不会变的东西分离开来”。有时为了不让客户程序员修改他们不该修改的东西,有时为了让自己修改代码之后不会让客户程序出现问题,就必须设置一些控制访问符,来限定各自的访问范围。
Java中的范围控制符有4个,分别是private、package(默认的范围)、protected、public,
权限范围由小到大。
方法及属性的访问控制
Private的访问范围是只有在本类中才可以访问
Package的访问范围是在本package中的所有类都可以访问
Protected的访问范围是该类的子类,及和它在同一package中的类可以访问
Public在任何地方都可以访问
类的访问控制
类的访问权限只能是package(默认)和public的
为了控制不让别人随便访问这个类,可以通过将这个类的构造函数设为private,这样就只有你就没有人可以创建这个对象啦。
你可以用一个static(静态)方法创建对象。
实例:
public class Sample {
private Sample (){
System.out.println("create a Sample ");
}
public static Sample get Sample (){
return new Sample ();
}
}
或者可以先定义创建一个private的static的对象,再通过一个public的static方法返回这个对象的引用,这样做到话可以实现 singleton(单例)模式,只会创建一个对象。
实例:
public class Sample {
private static Sample s1 = new Sample ();
public static Sample getSample(){
return s1;
}}
补充:软件开发 , Java ,