建立一個執行緒池,當有需求時(也就是有實現runnable 介面的物件需要執行時),會建立新的執行緒(建立Thread 物件),但若舊有的執行緒是空閒的(有Thread物件沒有在執行runnable 物件),就使用舊有的執行緒。這種執行緒池通常可以改善生命週期短的非同步任務的效能。
由於執行緒若空閒時間達到60秒,便會被回收掉。所以執行緒池可以長時間存在而不消耗資源,畢竟可能根本沒有執行緒在執行。
package learning.test;
public class overloadtest {
public static void main(String[] args) {
Banana mybanana = new Banana();
System.out.println(mybanana.name);
System.out.println(mybanana.getName());
System.out.println(((Banana) mybanana).name);
System.out.println(((Banana) mybanana).getName());
System.out.println(((MyFruit) mybanana).name);
System.out.println(((MyFruit) mybanana).getName());
}
}
class MyFruit {
String name = "Fruit";
String getName() {
return name;
}
}
class Banana extends MyFruit {
String name = "Banana";
String getName() {
return name;
}
}
輸出:Banana Banana Banana Banana Fruit Banana