浏览 1855 次
锁定老帖子 主题:Java应该采纳的几个改进
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-12-29
1. Class.field.class 数据绑定等 DataBinder.bind(a.fieldX,textbox); 2. Class.method.class 注册事件 EventListen.addListener(a.onClick.class) //less inner class 3. 动态属性、方法 implements DynamicClass a) c#4.0中新增此特性http://developer.51cto.com/art/200811/95603.htm b) MyDynamic a = new MyDynamic(); c) a.fieldX = 123; //a.set(“fieldX”,123); d) a.helloX(“abc”,123); //a.invoke(“helloX”,”abc”,123); 4. @readonly property abc; //自动生成get/set方法,类似c# 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-12-29
你的标题应该是java向c#靠拢
|
|
返回顶楼 | |
发表时间:2008-12-29
1/2是c#所没有的。
当初c#向java靠拢并且赶超过去,java现在干嘛不取长补短呢? annotation就抄的大快人心嘛 |
|
返回顶楼 | |
发表时间:2008-12-30
gembler 写道 1. Class.field.class 数据绑定等
DataBinder.bind(a.fieldX,textbox); 熟悉springmvc的应该用过它的数据绑定,grails是基于springmvc的所以它的数据绑定同spingmvc 再有groovy的MOP不知道是否适用与你? 2. Class.method.class 注册事件 EventListen.addListener(a.onClick.class) //less inner class groovy的swingbuilder简化了很多 3. 动态属性、方法 implements DynamicClass a) c#4.0中新增此特性http://developer.51cto.com/art/200811/95603.htm b) MyDynamic a = new MyDynamic(); c) a.fieldX = 123; //a.set(“fieldX”,123); d) a.helloX(“abc”,123); //a.invoke(“helloX”,”abc”,123); groovy的expando(); 它与Map对象的最大不同在于Expando对象除了可以在运行期增加属性以外,还可以动态的增加方法 4. @readonly property abc; //自动生成get/set方法,类似c# groovy里很早就有了,不新鲜 |
|
返回顶楼 | |
发表时间:2008-12-30
用groovy的感觉就是放弃了编译器检查。而java去支持的话,如果只有特定类型是动态的,还是很cool的
|
|
返回顶楼 | |
发表时间:2008-12-30
steeven 写道 方便重构, 代码简洁。改进编译器即可实现
1. Class.field.class 数据绑定等 DataBinder.bind(a.fieldX,textbox); 2. Class.method.class 注册事件 EventListen.addListener(a.onClick.class) //less inner class 3. 动态属性、方法 implements DynamicClass a) c#4.0中新增此特性http://developer.51cto.com/art/200811/95603.htm b) MyDynamic a = new MyDynamic(); c) a.fieldX = 123; //a.set(“fieldX”,123); d) a.helloX(“abc”,123); //a.invoke(“helloX”,”abc”,123); 4. @readonly property abc; //自动生成get/set方法,类似c# 有个组织可以免费参加 (当然个人免费,团体要收费) 叫jcr 他们的主要工作就是 提交jsr 你可以网上查一下. |
|
返回顶楼 | |