栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

06-泛型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

06-泛型

泛型的使用
  • 泛型
      • 泛型方法
      • 泛型定义接口
      • 类型通配符

泛型

时JDK引入的特性,它提供了编译时类型安全检测机制,本质时参数化类型 操作的数据被指定为一个参数

  • <类型>: 指定一种类型的格式, 这里的类型可以看成是形参
  • <类型1,类型2…> 可以指定多种类型格式
  • 参数类型只能是引用数据类型
public class Generic {
    private T t;

    public T getT() {
        return t;
    }

    public void setT(T t) {
        this.t = t;
    }

 public void show(T t){
        System.out.println(t);
    }
}


public class GenericDemo2 {
    public static void main(String[] args){
        Generic sg = new Generic<>();
        sg.setT("张三");
        Generic ig1 = new Generic<>();
        ig1.setT(13);

        System.out.println("学生的姓名是:"+sg.getT()+" || 年龄是: "+ig1.getT());
    }
}

泛型方法
public class GenericMethod{
   public  void show(T t){
       System.out.println(t);
   }
}

public class GenericDemo3 {
    public static void main(String[] args){
        GenericMethod gm = new GenericMethod();
        gm.show("张三");
        gm.show(13);
        gm.show("六年级三班");
    }
}
泛型定义接口
public interface GenericInterface{
    public void show(T t);

}
public class GenericInterfaceImpl{
    public void show(T t){
        System.out.println(t);
    }

}
类型通配符

为了表示各种泛型List的父类, 可以使用类型通配符

上限

下限

public class GenericDemo5 {
    public static void main(String[] args){
        ArrayList list1 = new ArrayList<>();
        ArrayList list2 = new ArrayList<>();
        printList(list1);
        printList(list2);
        
    }

    private static void printList(ArrayList list) {
        System.out.println(list);
    }
}

public class GenericDemo6 {
    public static void main(String[] args) {
        ArrayList list1 = new ArrayList<>();
        ArrayList list2 = new ArrayList<>();
        ArrayList list3 = new ArrayList<>();
        method01(list1);
//        method01(list2);
        method02(list2);
//        method02(list1);
        method02(list3);
        method01(list3);

    }

    
    private static void method02(ArrayList list) {
        System.out.println(list);
    }

    
    private static void method01(ArrayList list) {
        System.out.println(list);
    }


}


转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号