Topic: 关于static的迷惑 |
Print this page |
1.关于static的迷惑 | Copy to clipboard |
Posted by: AchillesA Posted on: 2004-07-31 19:47 import c05.connection.*; public class E11_ConnectionManager { public static void main(String args[]) { Connection c = ConnectionManager.getConnection(); while(c != null) { System.out.println; c.doSomething(); c = ConnectionManager.getConnection(); } } } ///:~ //: c05:connection:Connection.java package c05.connection; public class Connection { private static int counter = 0;//+--------这里不用static行不行 private int id = counter++; Connection() {} public String toString() { return "Connection " + id; } public void doSomething() {} } ///:~ //: c05:connection:ConnectionManager.java package c05.connection; public class ConnectionManager { private static Connection[] pool = //+---------为什么是static new Connection[10]; private static int counter = 0; static { //+--------为什么这里要用static for(int i = 0; i < pool.length; i++) pool[i] = new Connection(); } // Very simple -- just hands out each one once: public static Connection getConnection() { if(counter < pool.length) return pool[counter++]; return null; } } ///:~ 我对static的用法和作用的认识都太模糊了,有没有专门讲static的文章啊,或是谁给我仔细讲讲static |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |