泛型類, 方法,介面,萬用字元

2021-07-25 11:25:37 字數 1652 閱讀 3811

舉例:

泛型類:

public class demo {

private  t  name ;

public t getname(){

return  obj ;

public void setname(t name ){

this.name = name ;

public class demotest{

public static void  main (string args){

demodemo = new demo();

demo.set("hello");

system.out.println(demo.get());

泛型方法:

public class demo{

publicvoid show(t t ) {

system.out.println(t) ;

class demotest {

demo  d = new demo() ;

d.show("hello") ;

d.show(123) ;

泛型介面:

public inte***ce inter{

public abstract void show(t t );

實現介面:

1.知道實現介面時該用什麼型別;

public class interimpl implements inter{

public void show(string t ) {

system.out.println(t) ;

public class interdemo{

public static void  main (string args){

interi = new interimpl() ;

i.show("hello") ;

2.實現介面時不知道用什麼型別;

public class interimplimplements inter{                  

public void show(t  t ) {

system.out.println(t) ;

public class interdemo{

public static void  main (string args){

interi = new interimpl() ;

i.show("hello") ;

interi = new interimpl() ;

i.show(123) ;

萬用字元: 

假如 d extends c, c  entends b,b extends a .

connection< a> c = new arraylist()  ;

一般情況下: a與a必須一致(一樣)

?    :如果不一樣,那麼前面的a ,可以用用?代替

? extends e  : 

例如collection<? extends b> c = new arraylist() ;

此時e 的位置上可以是 b,c,d, 

?  super e   :

例如collection<? super b> c = new arraylist() ;

此時e 的位置上可以是 b,a, 

泛型類,方法,介面

泛型類 public class genericdemo4 建立乙個用於操作student物件的工具類,對物件進行設定和獲取。太有侷限性了,可不可以定義乙個可以操作所有物件的工具呢?型別向上抽取,當要操作的物件的型別不確定的時候,為了擴充套件。可以使用object型別來完成。但是這種方式有一些小弊端...

(71)泛型定義在類 方法 介面

什麼時候定義泛型類?當類中要操作的引用資料型別不確定時 早期定義object來完成拓展,現在定義泛型來完成拓展。一 下面簡單演示不確定要操作學生還是工人時,封裝成泛型類 public class student public class worker public class tool public...

泛型類,泛型方法,泛型介面

泛型,就是一種不確定的資料型別。如果在類後面加上 這個類就變成了泛型類。這個 t可以使用任意的字母代替。表示定義了一種不確定的資料型別,這種不確定的資料型別必須在使用這個類 比如建立物件 的時候才能確定下來。如果希望縮小泛型的範圍,延後泛型的確定時間,讓泛型在呼叫方法的時候確定,那麼我們可以使用泛型...