如何设计一个类,使其创建对象的个数不能超过3个?

设计模式中有个单例模式,通过把构造方法设计为private,另外提供了一个方法来控制这个类只能由一个实例化对象。对于这题,也可以参考单例模式的实现方法,在类中加一个计数器来记录实例化对象的个数,从而有效地控制实例化对象的个数,实现代码如下:

package InterView;

public class SingerClass {
	
	public static void main(String[] args) {
		Car car1=Car.getInstance();
		Car car2=Car.getInstance();
		Car car3=Car.getInstance();
		Car car4=Car.getInstance();
		System.out.println(car1.hashCode());
		System.out.println(car2.hashCode());
		System.out.println(car3.hashCode());
		System.out.println(car4.hashCode());	
	}
}
class Car{
	private static Car object;
	public static int objCount=0;
	private Car() {
		objCount++;
	}
	public static Car getInstance() {
		if(objCount<3) {
			object=new Car();
		}else {
			System.out.println("对象创建超过3个了,使用上一次创建出的对象");
		}
		return object;
	}
}

 

 

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值