关于享元模式


---------------------- ASP.Net+Android+IO开发S.Net培训、期待与您交流! ----------------------

享元模式,又称flyweight,个人理解是一种节省对象占用内存空间的一种设计模式。在开发中,有许多很小的对象具有相同的属性,例如数字,i=13和j=13属性是相同的,如果创建这两个对象的话,会占用两块内存。享元模式就是把相同的属性变成一个对象,不同的属性变成外部的状态,作为方法的参数传入。

以数字为例,把-128—127中的数字装成Integer对象,缓存起来放在一个池子中,下次需要的时候拿出来,这样就做到了节省内存。

实现代码如下:

package com.itheima;

public class AutoBox {

 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
       Integer i1=13;  //自动装箱
       System.out.println(i1+12);  //自动拆箱
       Integer i2=13;
       System.out.println(i1==i2);
       Integer i3=127;
       Integer i4=127;
       System.out.println(i3==i4);
       Integer i5=131;
       Integer i6=131;
       System.out.println(i5==i6);
 }

}
运行结果:

25
true
true
false

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ---------------------- 详细请查看:http://edu.csdn.net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值