Java
文章平均质量分 58
fantasydog
这个作者很懒,什么都没留下…
展开
-
jdk1.5之四 —— Covariant return types
Important things are always tiny, and thats why the word "key" goes popular——Fantasy Dog协变式的返回参数?名字翻译起来比较麻烦,还是用例子好解释:class Base{ public Base Method(){return this;}}class Derived extends Base{ p原创 2005-06-20 17:48:00 · 632 阅读 · 0 评论 -
jdk1.5之五 —— import static members
技术的进步往往缘自于人类的懒惰——至少软件业是如此——Fantasy Dogimport的作用有两个:简化输入和方便阅读。前者成全了coder的懒惰,后者成全了读者的。我们一直觉得把java.util.ArrayList写成ArrayList是一件很幸福的事情(除了那些希望用连续的噼里啪啦的键盘声装酷或者装做努力工作的人,然则写软件大部分时间是要思考的,手指太快只能做打字员,或者怪sdk要用户输入原创 2005-06-21 00:51:00 · 857 阅读 · 0 评论 -
jdk1.5之七 ——Generics —— 2 Bounds
限制未必都是有损于自由的,通常却是为了更好的保障自由,比如红绿灯,又比如Generics的Bound——Fantasy Dog面向对象最大的好处就是向后兼容性,比如你写俄罗斯方块的时候,用Block类表示方块,然后继承之表示各种不同的方块(长条,正方,品字形等),再然后你发现想加入一个新品种的方块,仅仅需要再定义这个方块的特性——即从Block再继承一个新类就可以了,游戏代码中大量的关于Block原创 2005-07-02 04:31:00 · 804 阅读 · 0 评论 -
jdk1.5之八 —— Generics —— 3 定义泛型
虽然任何东西都应该是先造出来再用,但学习过程恰好相反:比如电脑,比如软件——Fantasy Dog 知道了Generics的特性后,现在我们终于可以构造它了。 1. 基本的Generics类public class Tree {V value;V getValue(){return value;}…}按照java的习惯(或者叫命名规范),类型参数(type variables)通常都是原创 2005-07-03 03:35:00 · 791 阅读 · 0 评论 -
jdk1.5之九 —— Generics —— 4 the End
复杂是一个比较讨厌的东西,但技术的复杂与政治的复杂却有着本质的区别:后者的目的是愚弄民众,前者却是为了服务用户。——Fantasy Dog Generics引进了两个问题,一是针对Exception的,一个则是针对新东西Enum的。1. Exception这其实是一个不太复杂的问题,即你不能声明或使用一个parameterized的Exception:MyException exten原创 2005-07-10 02:45:00 · 683 阅读 · 0 评论 -
Mixins: Something Else You Can't Do With Java Generics?
http://www.artima.com/weblogs/viewpost.jsp?thread=132988原创 2005-10-26 20:41:00 · 660 阅读 · 0 评论 -
JDK1.5之一 —— automatic boxing and unboxing
Java 鼓吹 everything is an object,结果有八个东西不是object,于是被称为primitiveint 变成 Integer 曰 boxing,反之曰 unboxing1.5的新特性之一就是把这两个动作变automatic了,也就是原本的:Integer i = new Integer(0);int ii = i.intValue();可以简化成:Integer i =原创 2005-06-18 21:07:00 · 654 阅读 · 0 评论 -
jdk1.5之二 —— for/in
C#想哗众取宠一下,弄了个foreach(int i in ints)恶心了本分的程序员们一把。java觉得恶心得还不够,于是更加简单的说for(int i : ints),可是取名字犯了难,最后竟然忘了人家c#已经把in用作了关键字,抓过来表示那个colon,这才诞生了“伟大”的 for/in——FantasyDog int[] array = new int[10];for(int i : a原创 2005-06-18 22:07:00 · 765 阅读 · 0 评论 -
jdk1.5之三 —— varargs methods
如此细节且微不足道的东西都有了,java是不是该考虑一下引用参数了?——Fantasy Dog这个东西在c里好像叫作可变参数,即参数的数目是可变的。格式:xxx Method(int first, object ... next)所谓的varargs就是第二个参数,表示的意思是参数类型为object, 这种参数可以有无限多个,最后可以用object[] 类型的next来操作这些varargs要求原创 2005-06-20 16:37:00 · 650 阅读 · 0 评论