Java的隐藏实现

来源:互联网 发布:世界濒危动物数据 编辑:程序博客网 时间:2024/05/21 17:08

 在面向对象的设计中,最关键的问题就是将会变与不会变的东西分离开来

    有时为了不让客户程序员修改他们不该修改的东西,有时为了让自己修改代码之后不会让客户程序出现问题,就必须设置一些控制访问符,来限定各自的访问范围。

    Java中的范围控制符有4个,分别是privatepackage(默认的范围)protectedpublic,

权限范围由小到大。

 

方法及属性的访问控制

    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 ();

               }

}

或者可以先定义创建一个privatestatic的对象,再通过一个publicstatic方法返回这个对象的引用,这样做到话可以实现singleton(单例)模式,只会创建一个对象。

实例:

 public  class Sample {

        private static Samples1 = new Sample ();

        public static Sample getSample(){

               return s1;

        }}

原创粉丝点击