Comparable和Number类得多态使用,java高手们都来解释一下,谢谢!(深入研究jfreechart)

llhdf 2005-01-04 03:49:07
我在看jfreechart源码!,请高手指点一下.有很多地方不清楚.

jfreechart中得设置值时候setValue中使用了,Comparable和Number类.
方法为setValue(final Comparable key, final Number value)

请问使用Comparable类,是不是很多类都实现了Comparable类,他很容易实现多态,才使用Comparable类得.
例如用户可以输入.
setValue(null,null);
setValue("name",null);
setValue(new Double(11.11),null);
以上都是正确得.估计Number类也是一样吧!

但是我想知道,他是怎么取出数据,实现多态得.请问取数据得技巧在哪里!谢谢高手指点.

...全文
186 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
llhdf 2005-01-10
  • 打赏
  • 举报
回复
楼上说的对。能不能说一下,面向接口和抽象类的区别。
wangqm0629 2005-01-07
  • 打赏
  • 举报
回复
我认为这体现了面向接口编程的优点,由接口对数据类型进行抽象,在具体实现时才进行转型,同时也体现了“开—闭”原则。
llhdf 2005-01-06
  • 打赏
  • 举报
回复
请问这种设计有何有点。使用setValue,我认为却是好,但是使用getValue,怎么实现自动转型,来适应用户得任意数据类型。
llhdf 2005-01-06
  • 打赏
  • 举报
回复
请问以上这种设计,在实现上,怎么实现向下转型的,谢谢!
llhdf 2005-01-06
  • 打赏
  • 举报
回复
请问这种设计有何有点。使用setValue,我认为却是好,但是使用getValue,怎么实现自动转型,来适应用户得任意数据类型。
wangqm0629 2005-01-05
  • 打赏
  • 举报
回复
学习
llhdf 2005-01-05
  • 打赏
  • 举报
回复
请问以上这种设计,在实现上,怎么实现向下转型的。
llhdf 2005-01-05
  • 打赏
  • 举报
回复
我知道Comparable是个接口。
大家看看例子:我的理解是,为了让Student类能输入任何可以接受的类型,例如:
如果name被定义成为String类型,它只能输入String 类型,这样就不利于更好的拓展,使用Comparable 是为了让用户任意输入类型,让java来自动来实现上下转型,这样在编写程序上,
就会只写一次了。


public class Student{
private Comparable name = null;
private Number value = null;

public void setValue(Comparable name,Number value){
this.name = name;
this.value = value;
}

public Number getValue() {
return this.value;
}

}
请问使用Comparable是因为实现转型容易吗?,请问有没有具体剖析这种设计类的思想的!
llhdf 2005-01-05
  • 打赏
  • 举报
回复
我知道Comparable是个接口。
我写个例子,看看:

public class A{
Comparable name = null;
Number value = null;

setValue(){

}

}
jFresH_MaN 2005-01-04
  • 打赏
  • 举报
回复
是不是你看这个还太早了?
Comparable是接口,实现这个接口的类用与容器中的排序
hxzg001 2005-01-04
  • 打赏
  • 举报
回复
这是动态绑定吧,java在运行期间才去判断对象的类型,并找到正确的方法执行
llhdf 2005-01-04
  • 打赏
  • 举报
回复
希望大家看看!

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧