成为java高手_我如何想成为Java

成为java高手

我喜欢Java。 我喜欢用Java编程。 但是在使用Python一段时间后,我希望对其进行一些更改。 它几乎纯粹是语法上的,因此可能有更好的JVM语言,但是我并不真正感兴趣,因为我仍然需要使用普通的Java来工作。 我意识到这些更改将不会实施(尽管我以为我听说其中的一个实际上正在发布未来版本中); 这些只是一些想法。

我不想以开放和免费的Python方式释放Java。 实际上,我经常喜欢Java的限制所带来的挑战。 我主要只是想少打字。 因此,这是我希望在Java中看到的更改。

摆脱分号

我意识到它们是有目的的,但实际上不是必需的。 实际上,它们实际上使代码更难阅读,因为将多行代码推到同一行几乎总是更难阅读。 从技术上讲,使用分号可以将整个代码文件压缩为一行,以减小文件大小,但是用Java多久完成一次? 可能比我知道的要多,但我不知道它已经完成了。

卸下花括号

这有两个主要原因。 首先,我们可以结束花括号冷战! 其次,我们可以停止在花括号上浪费代码行。

而且,就像我之前说的,我正在尝试减少正在执行的键入次数,这将有所帮助。 最后,通过这样做,花括号可以被打开以用于新用途(稍后将看到)。

运算符重载

当涉及到数学运算时,我并不真正在意运算符的重载。 它们可能很方便,但是方法可以做到这一点。 我最大的担心是比较,尤其是==。 我真的希望Java跟随Python在==是用于相等性检查(甚至可以通过equals方法完成)和“ is”用于身份检查。 同时,实现Comparable应该允许您将比较运算符与它们一起使用,而不需要自己转换数字返回值。

如果需要,也可以允许某种方式来重载数学运算符。

元组和/或数据结构

我可以使用其中任何一个,但两者都会更好。 元组作为一次返回多个事物的返回类型特别有用,这有时很方便。 对于简单的数据结构(基本上是C结构)也可以做到这一点,因为它们应该非常轻便。

数据结构的一件大事就是摆脱Java Bean。 如果我们也能够用它们定义不变量,那就更好了。 Java Beans的最大问题在于,我们不必为了传递一些数据而定义一个完整的类。 如果我们无法获得结构,那么至少,我想获得下一个东西。

物产

天哪,我喜欢属性,尤其是在Python中。 允许您使用简单的访问器和变量,就好像它是一个直接变量一样,使代码看起来更漂亮。

默认为

我已经看到一些人谈论“更好的默认设置”的情况,最典型的情况是省略修饰语(例如publicprivatestatic )。 public很容易成为类和方法的最常用关键字,那么为什么默认的“ package-private”呢? 我也可以主张将private设置为字段的默认值,但是我有点想默认值应该在所有地方都相同,以减少混乱,但是我对此并不固守。

我就变量是否应默认为final争论不休,以帮助推动人们迈向不变性的想法,但我不在乎。

类型对象

这种做法与关于智能默认设置的先前观点相吻合。 我认为原始函数的自动功能是能够将它们用作对象。 我真的不在乎你怎么做。 最好将其打开以获取真实的基元,以便在需要时进行优化。 这对我来说并不重要。 如果大多数时候它们自然地作为原语传递,那会很酷,但是只需调用它们的任何方法,它们就可以自动装箱到对象中。 参数和返回类型应该不在乎传递哪一个。 这也将有助于大大减少Java中内置功能接口的数量,因为大多数实际上是处理基元的重复项。

列表,字典和集合文字

对于那些使用javaScript或Python的人来说,您真的知道我在说什么。 我的意思是,那轻巧方便吗? 这与可以采用Streams的构造函数(类似于Java的Generators之类。有点类似)结合在一起,将使集合使用起来相当容易。 字典文字和set文字使花括号真正有用。

这是我希望在Java中看到的更改列表。 就像我之前说过的那样,我认为这些事情永远不会发生(尽管我听说它们正在努力处理类型对象),但这实际上只是一个愿望清单。 你们同意我的选择吗?

翻译自: https://www.javacodegeeks.com/2015/01/how-id-like-java-to-be.html

成为java高手

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值