JAVA编程思想第六章练习8

题目:效仿示例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);
		}
	}
}

得出结果:

主要还是单例上的练习。

猜你喜欢

转载自blog.csdn.net/qq_39509597/article/details/82189282