泛型01

2021-11-26  本文已影响0人  哈迪斯Java
image.png
image.png

package All.D13.Generic_;

public class Demon01 {
Object over;

public Object getOver() {
    return over;
}

public void setOver(Object over) {
    this.over = over;
}

public static void main(String[] args) {
    Demon01 D1 = new Demon01();
    Demon01 D2 = new Demon01();

    D1.setOver(true);
    D2.setOver(12.33F);

    boolean b=(boolean) D1.getOver();
    System.out.println(b);

    float f=(float) D2.getOver();
    System.out.println(f);

    int i=(int) D2.getOver();
    System.out.println(i);//运行会报错
}

}

true
12.33
Exception in thread "main" java.lang.ClassCastException: java.lang.Float cannot be cast to java.lang.Integer
at All.D13.Generic_.Demon01.main(Demon01.java:27)

================
package All.D13.Generic_;

public class Demon02 <T>{
T over;

public T getOver() {
    return over;
}

public void setOver(T over) {
    this.over = over;
}
public static void main(String[] args) {
    Demon02<Boolean> d1 = new Demon02<Boolean>();
    d1.setOver(true);
    boolean b=d1.getOver();

    Demon02<Integer> d2 = new Demon02<Integer>();
    d2.setOver(12344);
    int i= d2.getOver();

    System.out.println(b);
    System.out.println(i);

}

}
输出为:

true
12344

Process finished with exit code 0

上一篇 下一篇

猜你喜欢

热点阅读