Java泛型4—泛型的上限和下限
来源:互联网 发布:淘宝产品买家人为损坏 编辑:程序博客网 时间:2024/04/29 08:58
【作者:孟祥月 博客:http://blog.csdn.net/mengxiangyue】
在写程序的时候,我们希望某一个函数接收的参数,有一个范围的限制,这时候我们就可以考虑使用泛型的上限和下限去解决。我们先看一段代码,然后再去详细解释。
class Point<T>{private T x;private T y;public T getX(){return x;}public void setX(T x){this.x = x;}public T getY(){return y;}public void setY(T y){this.y = y;}}public class Demo2{//static void show(Point<? extends Number> p)//此时这个函数只能接收Number及其子类 此时show(p2)会报错static void show(Point<? super String> p)//此时这个函数只能接收String及其父类 此时show(p1)会报错{System.out.println(p.getX());System.out.println(p.getY());}public static void main(String[] args){Point<Integer> p1 = new Point<Integer>();p1.setX(2);p1.setY(4);Point<String> p2 = new Point<String>();p2.setX("东经43度");p2.setY("北纬34度");show(p1);show(p2);}}在这段程序中我们定义了一个函数show,我们在参数的后面使用的<? .....>这里的问号,表示的通配符,代表接收的实际参数的类型。我们可以看出来在程序中我先注释了entends的一行代码。这个表示参数的上限,接收的参数必须是Number或者是其子类,如果使用这个的时候,我们调用show方法的时候,传递p2会报错,因为p2不是Number或者其子类。同样的,我们使用super关键字,这个表示参数的上限,程序中表示接收的参数只能是String或者其父类,这时候show方法的参数是p1会报错,不满足下限的要求。
对于上限和下限基本的使用就是这样,希望对你有帮助。
如果哪里写错了,还请指出。
- Java泛型4—泛型的上限和下限
- Java泛型的上限和下限
- 泛型的上限和下限
- java泛型上限下限
- java泛型1(泛型上限下限嵌套)
- 【泛型】泛型限定 ?(上限和下限案例)
- java中的上限和下限
- 三维空间的上限和下限
- 07 08-泛型-泛型限定(上限和下限) 09 10-泛型限定(上限的体现和下限的体现1 2) 11-泛型限定(通配符的体现) 12-集合查阅的技巧)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- java泛型中的上界下界(上限下限)
- 集合框架---泛型限定(上限和下限)
- Heritrix Eclipse下环境配置
- 找不到mspdb80.dll 的解决办法
- 匿名管道
- Microsoft JET Database Engine(0x80004005)未指定错误的解决方法
- java实现树
- Java泛型4—泛型的上限和下限
- 最短路径的几种算法
- 学习简单工厂模式
- Ext中实现 简单验证码效果
- 在activty 中如何获取任意Layout xml中的控件
- Java中反射的实现方式
- C#如何读写和创建INI文件
- vim中taglist使用(比较详细的)
- JavaWEB开发-Servlet事件监听器