原创 【java基礎(三十二)】反射(二)

利用反射分析類的能力 下面簡要的介紹一下反射機制最重要的內容:檢查類的結構。 在java.lang.reflect包中有三個類Field、Methode和Constructor分別用於描述類的域、方法和構造器。這三個類都有一個叫做

原创 【java基礎(三十)】可變參和枚舉類

參數數量可變的方法 在Java SE 5.0以前的版本中,每個Java方法都有固定數量的參數。然而,現在的版本提供了可以用可變的參數數量調用的方法(有時稱爲“變參”方法)。 前面已經看到過這樣的方法:printf。例如: Syst

原创 【java基礎(二十七)】Object,所有類的超類

Object類是Java重所有類的始祖,在Java中每個類都是由它擴展而來的。但是並不需要這樣寫: public class Employee extends Object 如果沒有明確地指出超類,Object就被認爲是這個類的

原创 【java基礎(二十六)】類、超類、子類(四)

抽象類 如果自上而下在類的繼承層級結構中上移,位於上冊的類更具有通用性,甚至可能更加抽象。從某種角度看,祖先類更加通用,人們只將它作爲派生類的基類,而不作爲想使用的特定的實例類。例如,考慮一下對Employee類層次的擴展。一名僱

原创 【java基礎(二十五)】類、超類、子類(三)

阻止繼承:final類和方法 有時候,可能希望阻止人們利用某個類定義子類。不允許擴展的類稱爲final類。如果在定義類的時候使用了final修飾符就表明這個類是final類。例如,假設希望阻止定義Executive類的子類,就可以

原创 【java基礎(二十八)】泛型數組列表

在許多程序設計語言中,必須在編譯時就確定整個數組的大小。程序員對此十分反感,因爲這樣做將迫使程序員做出一些不情願的這種。例如,一個部門中有多少僱員?肯定不會超過100人?一旦出現一個擁有150名僱員的大型部門呢?願意爲那些僅有10

原创 【java基礎(二十三)】類、超類、子類(一)

接下來,我們學習面向對象程序設計的另外一個基本概念,也是Java程序設計中的一項核心技術:繼承(inheritance)。利用繼承,可以基於已存在的類構造一個新類,繼承已存在的類就是複用(繼承)這些類的方法和域。在此基礎上,可以添

原创 【java基礎(二十九)】對象包裝器與自動裝箱

有時,需要將Int這樣的基本類型轉換爲對象。所有的基本類型都有一個與之對應的類。例如,Integer類對應基本類型int。通常,這些類稱爲包裝器(wrapper)。這些對象包裝器類擁有很明天的名字:Integer、Long、Flo

原创 【java基礎(二十四)】類、超類、子類(二)

繼承層次 繼承並不僅限於一個層次。例如,可以由Manager類派生Executive(高中級管理人員)類。由一個公共超類派生出來的所有類的集合稱爲繼承層次(inheritance hierarchy)。在繼承層次中,從某個特定的類

原创 【java基礎(二十二)】eclipse的安裝和使用

什麼是eclipse 之前的所有例子都是通過記事本敲打出來的,然後我們通過javac命令編譯,通過java命令執行,在我們使用到需要引用的類的時候還需要查找類的位置,使用import語句進行引入,我們還需要使用tab或者空格鍵控制

原创 【問題解答】關於類AudioInputStream找不到文件的異常

感謝 非常感謝可以私信問我一些問題,這是一種信賴,一種支持,一種動力。真的非常感謝。 問題 源碼 import java.io.File; import java.util.*; import javax.sound.samp

原创 【java基礎(二十一)】類設計技巧

一定要保證數據私有 這是最重要的;絕對不要破壞封裝性。有時候,需要編寫一個訪問器或更改器方法,但是最好還是保持實例域的私有性。很多慘痛的經驗告訴我們,數據的表示形式很可能會改變,但他們的使用方式卻不會經常發生變化。當數據保持私有時

原创 【java基礎(十九)】對象構造

構造器,可以定義對象的初始狀態,不僅如此,由於對象構造非常重要,所以Java提供了多種編寫構造器的機制。 重載 有些類有多個構造器。例如,可以構造一個空的StringBuilder對象: StringBuilder message

原创 【java基礎(十七)】靜態域與靜態方法

在前面的示例中,main方法都被標記爲static修飾符。我們來具體討論一下這個修飾符的含義。 靜態域 如果將域定義爲static,每個類中只有一個這樣的域。而每一個對象對於所有的實例域卻都有自己的一份拷貝。例如,假定需要給每一個

原创 【java基礎(十八)】方法參數

首先說兩個在程序設計語言中有關將參數傳遞給方法(函數)的專業術語。 按值調動(call by value):表示方法接收的是調用者提供的值。 按引用調用(call by reference):表示方法接收的是調用者提供的變量地址