s-day02--泛型类的使用
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
package com.inmind.generic02;
|
||||
|
||||
public class Demo05 {
|
||||
public static void main(String[] args) {
|
||||
//买了平板与手机,质保,找专门的厂家去修理
|
||||
Pad pad = new Pad();
|
||||
System.out.println("平板坏了");
|
||||
Factory<Pad> padFactory = new Factory<>();
|
||||
Pad fixedPad = padFactory.fix(pad);
|
||||
fixedPad.study();
|
||||
|
||||
Phone phone = new Phone();
|
||||
System.out.println("手机坏了");
|
||||
Factory<Phone> phoneFactory = new Factory<>();
|
||||
Phone fixedPhone = phoneFactory.fix(phone);
|
||||
fixedPhone.playApp();
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.inmind.generic02;
|
||||
/*
|
||||
能不能在一个类中定义一个未知的类型,接收的具体是什么类型,就返回该类型,这个数据类型要动态,并省略掉强转操作,避免了
|
||||
类型转换异常???
|
||||
可以,使用泛型类,在类名后加上<大写字母>
|
||||
|
||||
泛型类的格式:
|
||||
public class 类名<大写字母>
|
||||
|
||||
泛型类的T类型,何时确定的呢???
|
||||
创建对象时确定该类型
|
||||
|
||||
*/
|
||||
public class Factory <T>{
|
||||
|
||||
//修理T类型的设备即可
|
||||
public T fix(T t) {
|
||||
System.out.println("工厂修理了设备"+t);
|
||||
return t;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.inmind.generic02;
|
||||
|
||||
public class Pad {
|
||||
|
||||
public void study(){
|
||||
System.out.println("使用平板来学习");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "小米平板";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.inmind.generic02;
|
||||
|
||||
public class Phone {
|
||||
|
||||
public void playApp(){
|
||||
System.out.println("手机在玩应用");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "苹果手机";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user