仿照单子模式的测试

来源:互联网 发布:查询sql sa密码 编辑:程序博客网 时间:2024/04/19 21:11

package text;
/**
 * 仿照单子模式的测试
 * @author Alex
 *
 */
public class Static {
 //static final int  c=0; // 当c为final后就不可以再次给予附值
 static  int  c=0;
 private static Static ss=new Static();
 
 public static Static  method(){
  //Static sta=new Static();//
         //System.out.print(Static.c++);
  return ss;
        }
 public  int cc(){
  return c++;
 }
        public static void main(String[] args){
         Static sta1=new Static();
         Static sta2=new Static();
         System.out.print(c);//输出的只是c的值,而没有执行方法
         System.out.print("/n");
            Static cc1=sta1.method();Static cc2=sta1.method();;
            System.out.print("对象cc1的返回值"+cc1.cc()+"  "+"对象cc2的返回值"+cc2.cc());
            sta2.method();System.out.println("/n");
            System.out.print("/n");System.out.print(c);
         System.out.print("/n");
//         
        
//         
//         Static.method();System.out.println("/n");
          
         
          ss.method();
         
        }
}
  /**经验,static 1.静态变量主要是为了调用时可以不用进行实例化而通过(类名.方法/变量)直接调用,比如方法,变量。
   但当静态调用静态的情况下也可以不使用类名,而直接用。而如果不是静态方法调用自己类中的静态变量,如同
   调用全局变量那样,可以直接用。2.静态变量相当于公共内存,只可初始化一次(单子模式就是其应用) 3.不能修饰构造器
   *final 则主要用作最终话参数,一但附初值就不在变化。但是对创建对象时:因为每实例化一次,就重新分配
   *一块内存,所以final可以通过传参改变初始值
   */

 

原创粉丝点击