JAVA编程思想第六章练习8

博客要求效仿示例创建名为ConnectionManager的类,该类管理Connection对象的固定数组,客户端程序员需通过其static方法获取对象,无对象时返回null引用,最后在main中检测这些类,还提到主要是单例上的练习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:效仿示例Lunch.java的形式,创建一个名为ConnectionMannager的类,该类管理一个元素为Connection对象的固定数组。客户端程序员不能直接创建connection对象,而只能通过ConnectionMananger中的某个static方法来获取它们。当ConnectionManager之中不再有对象时,它会返回null引用。在main中检测这些类。

这里我没有用数组偷了点懒。

package com.Test6;

import java.util.ArrayList;
import java.util.List;

class Connection{
	private Connection(){};
	
	public static Connection getConnection(){
		return new Connection();
	}
}

class ConnectionManager { 
	private ConnectionManager (){};
	private static List<Connection> conn = new ArrayList<Connection>();
	
	public static void getConnections(){
		for (int i = 0; i < 5; i++) {
			conn.add(Connection.getConnection());
		}
	}
	
	public static Connection makeConnection(){
		//System.out.println(conn.toString());
		if(conn.size()>0){
			for (Connection connection : conn) {
				conn.remove(0);
				return connection;
			}
		}
		return null;
	}
}


public class test8 {
	public static void main(String[] args) {
        ConnectionManager.getConnections();
		for (int i = 0; i < 7; i++) {
			Connection connection = ConnectionManager.makeConnection();
			System.out.println(connection);
		}
	}
}

得出结果:

主要还是单例上的练习。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值