定义和使用含有泛型的类
生活随笔
收集整理的這篇文章主要介紹了
定义和使用含有泛型的类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
泛型的定義與使用
我們在集合中會大量使用到泛型,這里來完整地學習泛型知識。
泛型,用來靈活地將數據類型應用到不同的類、方法、接口當中。將數據類型作為參數進行傳遞。
定義和使用含有泛型的類
定義格式:
修飾符 class 類名<代表泛型的變量> { }例如,API中的ArrayList集合:
class ArrayList<E>{ public boolean add(E e){ }public E get(int index){ }.... }使用泛型: 即什么時候確定泛型。
在創建對象的時候確定泛型
例如,ArrayList<String> list = new ArrayList<String>();
此時,變量E的值就是String類型,那么我們的類型就可以理解為:
class ArrayList<String>{ public boolean add(String e){ }public String get(int index){ }... }再例如,ArrayList<Integer> list = new ArrayList<Integer>();
此時,變量E的值就是Integer類型,那么我們的類型就可以理解為:
class ArrayList<Integer> { public boolean add(Integer e) { }public Integer get(int index) { }... }舉例自定義泛型類
public class MyGenericClass<MVP> {//沒有MVP類型,在這里代表 未知的一種數據類型 未來傳遞什么就是什么類型private MVP mvp;public void setMVP(MVP mvp) {this.mvp = mvp;}public MVP getMVP() {return mvp;} }使用:
public class GenericClassDemo {public static void main(String[] args) { // 創建一個泛型為String的類MyGenericClass<String> my = new MyGenericClass<String>(); // 調用setMVPmy.setMVP("大胡子登登");// 調用getMVPString mvp = my.getMVP();System.out.println(mvp);//創建一個泛型為Integer的類MyGenericClass<Integer> my2 = new MyGenericClass<Integer>(); my2.setMVP(123); Integer mvp2 = my2.getMVP();} } package com.learn.demo03.Generic; /*定義一個含有泛型的類,模擬ArrayList集合泛型是一個未知的數據類型,當我們不確定什么什么數據類型的時候,可以使用泛型泛型可以接收任意的數據類型,可以使用Integer,String,Student...創建對象的時候確定泛型的數據類型*/ public class GenericClass<E> {private E name;public E getName() {return name;}public void setName(E name) {this.name = name;} } package com.learn.demo03.Generic;public class Demo02GenericClass {public static void main(String[] args) {//不寫泛型默認為Object類型GenericClass gc = new GenericClass();gc.setName("只能是字符串");Object obj = gc.getName();//創建GenericClass對象,泛型使用Integer類型GenericClass<Integer> gc2 = new GenericClass<>();gc2.setName(1);Integer name = gc2.getName();System.out.println(name);//創建GenericClass對象,泛型使用String類型GenericClass<String> gc3 = new GenericClass<>();gc3.setName("小明");String name1 = gc3.getName();System.out.println(name1);} }?
總結
以上是生活随笔為你收集整理的定义和使用含有泛型的类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用泛型的好处
- 下一篇: 定义和使用含有泛型的方法