天天看點

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);
		}
	}
}
           

得出結果:

JAVA程式設計思想第六章練習8

主要還是單例上的練習。