网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > Java精品代码 > 正文

Java泛型4—泛型的上限和下限

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

        在写程序的时候,我们希望某一个函数接收的参数,有一个范围的限制,这时候我们就可以考虑使用泛型的上限和下限去解决。我们先看一段代码,然后再去详细解释。

  1. class Point<T>  
  2. {  
  3.     private T x;  
  4.     private T y;  
  5.     public T getX()  
  6.     {  
  7.         return x;  
  8.     }  
  9.     public void setX(T x)  
  10.     {  
  11.         this.x = x;  
  12.     }  
  13.     public T getY()  
  14.     {  
  15.         return y;  
  16.     }  
  17.     public void setY(T y)  
  18.     {  
  19.         this.y = y;  
  20.     }  
  21. }  
  22. public class Demo2  
  23. {  
  24. //  static void show(Point<? extends Number> p)//此时这个函数只能接收Number及其子类 此时show(p2)会报错   
  25.     static void show(Point<? super String> p)//此时这个函数只能接收String及其父类  此时show(p1)会报错   
  26.     {  
  27.         System.out.println(p.getX());  
  28.         System.out.println(p.getY());  
  29.     }  
  30.     public static void main(String args)  
  31.     {  
  32.         Point<Integer> p1 = new Point<Integer>();  
  33.         p1.setX(2);  
  34.         p1.setY(4);  
  35.         Point<String> p2 = new Point<String>();  
  36.         p2.setX("东经43度");  
  37.         p2.setY("北纬34度");  
  38.         show(p1);  
  39.         show(p2);  
  40.     }  
  41. }  
        在这段程序中我们定义了一个函数show,我们在参数的后面使用的<? ..>这里的问号,表示的通配符,代表接收的实际参数的类型。我们可以看出来在程序中我先注释了entends的一行代码。这个表示参数的上限,接收的参数必须是Number或者是其子类,如果使用这个的时候,我们调用show方法的时候,传递p2会报错,因为p2不是Number或者其子类。同样的,我们使用super关键字,这个表示参数的上限,程序中表示接收的参数只能是String或者其父类,这时候show方法的参数是p1会报错,不满足下限的要求。

对于上限和下限基本的使用就是这样,希望对你有帮助。

TAG: Java泛型4




点击下载系统:http://www.myeducs.cn/chaxun/index.html?go=Java泛型4—泛型的上限和下限&aa=%CB%D1%CB%F7%C2%DB%CE%C4
  • 上一篇资讯: java学习之路
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师