发布于2020-11-19 20:27 阅读(770) 评论(0) 点赞(17) 收藏(4)
如果我们有这样一个需求:定义一个描述类圆,要求圆中的数据类型是不确定的,也就是声名属性的时候,属性类型是不确定的。比如描述类圆中有半径,要求半径可以用int,也可以用double。那么此时数据类型不确定,就使用泛型,把数据类型参数化。
创建圆的描述类:Circle类
/***
public class Circle<T> {
private T r;
private T x;
private T y;
public T getR() {
return r;
}
public void setR(T r) {
this.r = r;
}
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;
}
创建Circle对象:Cricle c = new Circle();
c.setR(12);
c.setX(12.12);
c.setY(43L);
那么此时int,double,long型都能传进去,
public static void main(String[] args) {
//创建Circle的对象,泛型没有具体化,默认泛型的类型是Object。
Circle c=new Circle();
c.setR(12);
c.setX(12.12);
c.setY(43L);
//创建Circle对象,同时将泛型具体化,泛型类是在创建类的对象的时候,将泛型具体化
//反向具体化的时候,只能使用引用类型
Circle<Integer> c2=new Circle<>();
c2.setR(43);
c2.setX(43);
c2.setY(32);
System.out.println(c2);
}
作者:天使之恋
链接:http://www.javaheidong.com/blog/article/923/d04790e5731efe34760e/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!