封装

来源:互联网 发布:js定义数组长度 编辑:程序博客网 时间:2024/05/02 05:07
封装:隐藏对象的属性和实现细节,仅对外公开接口。

(1)private(私有变量):只能被定义它的类访问。

(2)protected(受保护变量):可以被定义它的类及子孙类直接访问,也可以由同一包中的其他类直接访问。

(3)public(公共变量):可以被任何类进行访问。

(4)package:可以被定义它的类和同一个包中的其他类(包括派生子类)所访问.(包变量在声明时常常省略package关键字),在其他包中的子类则不能访问父类的包变量

/*public class Singleton {//静态的,保留自身的引用private static Singleton test = new Singleton();//必须是私有的构造函数private Singleton(){}//公共的静态方法public static Singleton getInstance(){return test;}}*/public class Singleton {//静态的,保留自身的引用private static Singleton test = null;private int size = 512;//必须是私有的构造函数private Singleton(){}//公共的静态方法public static Singleton getInstance(){if(test == null){test = new Singleton();}return test;}public int getSize() {return size;}public void setSize(int size) {this.size = size;}public static void main(String[] args) {Singleton[] singleInstance = new Singleton[5];//使用内存中的同一个实例,因此结果均为512for(int i=0;i<5;i++){singleInstance[i] = Singleton.getInstance();//静态方法直接可以类名.方法System.out.println(singleInstance[i].getSize());}singleInstance[4].setSize(1000);for(int i=0;i<5;i++){System.out.println(singleInstance[i].getSize());}}}
运行结果为:
51251251251251210001000100010001000
0 0
原创粉丝点击