当前位置 : 主页 > 编程语言 > java >

深入了解Java核心类库--泛型类

来源:互联网 收集:自由互联 发布时间:2021-08-21
目录 1.1 泛型的使用 1.1.1 泛型类 1.1.2 泛型接口 1.1.3 泛型方法 1.1.4 tips 1.2 泛型限制类型 1.3 通配符? 1.3.1 上界限定 1.3.2 下届限定 1.3.3 无限制 1.4 泛型的作用 总结 1.1 泛型的使用 泛型:
目录
  • 1.1 泛型的使用
    • 1.1.1 泛型类
    • 1.1.2 泛型接口
    • 1.1.3 泛型方法
    • 1.1.4 tips 
  • 1.2 泛型限制类型
    • 1.3 通配符?
      • 1.3.1 上界限定
      • 1.3.2 下届限定
      • 1.3.3 无限制
    • 1.4 泛型的作用
      • 总结

        1.1 泛型的使用

        泛型:参数化模型(不确定,后续使用时指定类型)

        1.1.1 泛型类

        在这里插入图片描述

        1.1.2 泛型接口

        • 实现接口时,可以选择或不选择指定泛型类型
        public interface IntercaceName<T>{
        	T getData();
        }
        

        ①指定类型

        public class Interface1 implements IntercaceName<String> {
        	private String text;
        	@Override
        	public String getData() {
        		return text;
        	}
        }
        

        ②不指定类型

        public class Interface1<T> implements IntercaceName<T> {
        	private T data;
        	@Override
        	public T getData() {
        		return data;
        	}
        }
        

        1.1.3 泛型方法

        private static T 方法名(T a, T b) { }

        方法仅在方法内部有效

        在这里插入图片描述

        1.1.4 tips 

        • 编译之后程序会采取去泛型化措施(泛型只在编译阶段有效)
        • 运行时对传入的对象进行相应类型的生成,即对象进入和离开方法的边界处添加类型检查和类型转换的方法(泛型不进入运行阶段)

        1.2 泛型限制类型

        • 在使用泛型时, 可以指定泛型的限定区域
        • 必须是某某类的子类或 某某接口的实现类,格式:

        <T extends 类或接口1 & 接口2>

        在这里插入图片描述

        1.3 通配符?

        1.3.1 上界限定

        • 指了泛型类型的上届(限定了父类)

        < ? extends Parent>

        在这里插入图片描述

        1.3.2 下届限定

        • 指定了泛型类型的下届(限定了子类)
        <? super Child>

        在这里插入图片描述

        1.3.3 无限制

        • 指定了没有限制的泛型类型
        • 区别于Object

        1.4 泛型的作用

        • 提高代码的复用率
        • 类型在使用时绑定,无序强制类型转换

        总结

        本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注自由互联的更多内容!

        网友评论