1)泛型定義:
a:jdk 1.5 引入了 引數化型別。
b:所謂泛型:
-1.就是允許在 定義類、介面時,通過乙個標識,表示 類中某個屬性的型別 或 某個方法的返回值及引數型別。
-2.這個引數將在使用時(例如:繼承或實現這個介面,用這個型別宣告變數、建立物件時)
確定具體型別。(即 傳入實際的引數型別,也稱為型別引數)
b:泛型的好處:
-1.編譯時,檢查新增元素的型別,提高了安全性。
-2.減少了型別轉換的次數,提高效率。
-3.不再提示 編譯警告。
1)總結:
a:集合介面或集合類,在jdk1.5 時,都修改為帶范型的結構。
b:在例項化集合類時,可以指明具體的范型型別。
c:指明完之後,對集合操作,都使用范型型別。
1)arraylist 內部實現:
public class arraylist
}
2)使用范型:例:
public static void main(string args)
3)泛型的注意:
a:泛型的型別 必須是 乙個類,不能是基本資料型別。 需要用到基本資料型別的位置,拿包裝類替換。
c:異常類,不能使用泛型。
1)泛型的宣告:
a:inte***ce 介面{}
b:class 類{}
2)自定義 泛型類:
a:注意細節:
-1.普通成員 可以使用泛型(屬性、方法)
-2.使用泛型的陣列,不能初始化。
-3.靜態方法中,不能使用類的泛型。靜態成員也不能使用泛型
(載入順序問題)
-4.泛型類的型別,是在建立物件的時候確定的
(因為建立物件時,需要指定確定型別)
-5.如果在建立物件時,沒有指定型別,預設為 object。
b:示例:
class animal
class dog extends animal
class person
}
c:使用:
public class mylinkedlist
}
3)泛型介面:
a:類似介面。
4)泛型方法:
a:基本語法:
修飾符 返回型別 方法名(引數列表)
b:在方法中,出現了泛型的結構,泛型引數結構與類的引數泛型結構沒有任何關係。
c:泛型方法,可以定義在普通類中,也可以定義在泛型類中。
泛型方法所屬的類:是不是泛型類都沒關係。
d:當 泛型方法被呼叫時,型別會確定。
e:public void eat(e e){}:
不是泛型方法,而是使用了泛型。
public class mylinkedlist
}class person
}
class dog
}
1)有限制條件的萬用字元:(負無窮 ~ persion ~ 正無窮)
a: extends persion> 物件名稱
* 誰繼承了persion,persion 就是上界
* 意義:支援 person 和 person 的子類
a: super persion>
* persion的父類是誰,persion 就是下界
* 意義:支援 person 和 person 的父類
1)示例:
尚矽谷之JDBC
可以通過 drivermanager 類建立到資料庫的連線connection drivermanager 試圖從已註冊的 jdbc 驅動程式集中選擇乙個適當的驅動程式。public static connection getconnection string url public static c...
尚矽谷hbaseshell練習
3.1 基本操作 1 進入hbase客戶端命令列 atguigu hadoop102 hbase bin hbase shell 2 檢視幫助命令 hbase main 001 0 help 3 檢視當前資料庫中有哪些表 hbase main 002 0 list 3.2 表的操作 1 建立表 hb...
尚矽谷 Less 筆記
3.less中的混合 4.less的計算 5.less的繼承 5.避免編譯 less是一種動態樣式語言,屬於css預處理器的範疇,他擴充套件了css語言,增加了變數 mixin 函式的等特性,使css更易於維護和擴充套件 less既可以在客戶端執行,也可以借助node.js在服務端執行 less官網...