• 自定义泛型


    自定义泛型

    * 自定义泛型类 public class 类名<数据类型> {}

    * 自定义泛型方法 public <数据类型> 返回值类型 方名称(数据类型 变量名) {}

    * 自定义泛型接口 public interface 接口<数据类型> {}

     


    public class Demo_Generic {
       /**
        * * A:泛型接口概述
             * 把泛型定义在接口上
          * B:定义格式 
             * public interface 接口名<泛型类型>
          * C:案例演示
             * 泛型接口的使用
        */
       public static void main(String[] args) {
       }
    }
    
    interface Inter<T> {
       public void show(T t);
    }
    /*class Demo implements Inter<String> {     //推荐用这种
       @Override
       public void show(String t) {
          System.out.println(t);
       }
    }*/
    class Demo<T> implements Inter<T> {         //没有必要在实现接口的时候给自己类加泛型
       @Override
       public void show(T t) {
          System.out.println(t);
       }
    }
    

      自定义泛型: 自定义泛型可以理解为是一个数据类型的占位符,或者是理解为是一个数据类型的变量。

     泛型方法:

        泛型方法的定义格式:

            修饰符   <声明自定义泛型>返回值类型       函数名(形参列表..){

            }


    注意:

    • 在方法上的自定义泛型的具体数据类型是调用该方法的时候传入实参的时候确定的。
    • 自定义泛型使用的标识符只要符合标识符的命名规则即可。
    • 在类上自定义的泛型的具体数据类型是在创建对象的时候指定的。
    • 在类上自定义了泛型,如果创建该类的对象时没有指定泛型的具体类型,那么默认是Object类型。
    • 在接口上自定义泛型的具体数据类型是在实现该接口的时候指定的。
    • 如果一个接口自定义了泛型,在实现该接口的时候没有指定具体的数据类型,那么默认是Object数据类型。
  • 相关阅读:
    curl获取HTTP返回状态码
    存储过程中如何实现从数组获取数据
    ElasticsearchParseException: malformed, expected settings to start with 'object', instead was [VALUE_STRING]
    【并发编程】如果让你用三个线程循环打印ABC,你有几种写法?
    【基础】IdentityHashMap
    【基础】ThreadPoolExecutor
    【算法】快速排序
    【Java8新特性Stream】list转map
    【算法】华为南研所-括号匹配
    windows sourceTree 密码错误
  • 原文地址:https://www.cnblogs.com/loaderman/p/6407571.html
Copyright © 2020-2023  润新知