泛型(一) 就是简单的泛型

1.动物类

package com.nice.dq2020.fanxing;

public class Animal {
    @Override
    public String toString() {
        return "I am an animal!";
    }
}

2.老虎类继承动物类

package com.nice.dq2020.fanxing;


public class Tiger extends Animal {
    @Override
    public String toString() {
        return "I am tiger!";
    }
}

3.泛型类

package com.nice.dq2020.fanxing;

import java.util.List;

public class Zoo {

    private Z z;
    private List zs;

    public Z getZ() {
        return z;
    }

    public void setZ(Z z) {
        this.z = z;
    }

    public List getZs() {
        return zs;
    }

    public void setZs(List zs) {
        this.zs = zs;
    }

    public String who() {
        return z.toString();
    }

    public String whos() {
        return zs.toString();
    }
}

4.测试类

import java.util.List;

public class Test {

    public static void main(String[] args){
        Zoo zoo = new Zoo<>();
        //泛型为Animal 放一个动物,Ok,没问题
        Animal animal = new Animal();
        zoo.setZ(animal);
        System.out.print(zoo.who());
        System.out.print("\n");
        //泛型为Animal 放一只老虎,Ok,没问题
        Tiger tiger = new Tiger();
        zoo.setZ(tiger);
        System.out.print(zoo.who());
        System.out.print("\n");
        List animals = new ArrayList<>();
        animals.add(animal);
        animals.add(tiger);
        zoo.setZs(animals);
        System.out.print(zoo.whos());
    }
}

5.输出结果


你可能感兴趣的:(Java)