我如何想成为Java
我喜欢Java。 我喜欢用Java编程。 但是在使用Python一段时间后,我希望对其进行一些更改。 它几乎纯粹是语法上的,因此可能有更好的JVM语言,但是我并不真正感兴趣,因为我仍然需要使用普通的Java来工作。 我意识到这些更改将不会实施(尽管我以为我听说其中的一个实际上正在准备将来的版本); 这些只是一些想法。
我不想以开放和免费的Python方式释放Java。 实际上,我经常喜欢Java的限制所带来的挑战。 我主要只是想少打些字。 因此,这是我希望在Java中看到的更改。
摆脱分号
我意识到它们是有目的的,但实际上不是必需的。 实际上,它们实际上使代码更难阅读,因为将多行代码推到同一行几乎总是更难阅读。 从技术上讲,使用分号可以将整个代码文件压缩为一行,以减小文件大小,但是用Java多久完成一次? 可能比我知道的要多,但我不知道它已经完成了。
卸下花括号
这有两个主要原因。 首先,我们可以结束花括号冷战! 其次,我们可以停止在花括号上浪费代码行。
另外,就像我之前说的,我正在尝试减少正在执行的键入次数,这将有所帮助。 最后,通过这样做,花括号可以被打开以用于新用途(稍后将看到)。
操作员超载
当涉及到数学运算时,我并不真正在意运算符的重载。 它们可能很方便,但是方法可以做到这一点。 我最大的担心是比较,尤其是==。 我真的希望Java跟着Python一样,让==是用于相等性检查(您甚至可以通过equals
方法进行操作),并使用“ is”来进行身份检查。 同时,实现Comparable
应该允许您将比较运算符与它们一起使用,而不需要自己转换数字返回值。
如果需要,也可以允许某种方式来重载数学运算符。
元组和/或数据结构
我可以使用其中任何一个,但两者都会更好。 元组作为一次返回多个事物的返回类型特别有用,这有时很方便。 对于简单的数据结构(基本上是C结构)也可以做到这一点,因为它们应该非常轻便。
数据结构的一件大事就是摆脱Java Bean。 如果我们也能够用它们定义不变量,那就更好了。 Java Beans的最大问题在于,我们不必为了传递一些数据而定义一个完整的类。 如果我们无法获得结构,那么至少,我想获得下一个东西。
物产
天哪,我喜欢属性,尤其是在Python中。 允许您使用简单的访问器和变量,就好像它是一个直接变量一样,使代码看起来更漂亮。
默认为
我已经看到一些人谈论“更好的默认设置”的情况,在最典型的情况下,应该省略修饰符关键字(例如public
和private
或static
)。 public
很容易成为类和方法的最常用关键字,那么为什么默认的“ package-private”呢? 我也可以主张将private
设置为字段的默认值,但是我有点认为默认值应该在所有地方都相同,以减少混乱,但是我对此并不固守。
我就变量是否应默认为final争论不休,以帮助推动人们迈向不变性的想法,但我不在乎。
类型对象
这种与智能默认设置有关。 我认为原始函数的自动功能是能够将它们用作对象。 我真的不在乎你怎么做。 最好将其打开以获取真实的原语,以便在需要时进行优化。 这对我来说并不重要。 如果大多数时候它们自然地作为原语传递,那会很酷,但是它们只需调用它们的任何方法就可以自动装箱到对象中。 参数和返回类型应该不在乎传递哪一个。 这也将有助于大大减少Java中内置功能接口的数量,因为大多数实际上是处理基元的重复项。
列表,字典和集合文字
对于那些使用javaScript或Python的人来说,您真的知道我在说什么。 我的意思是,那方便吗? 这与可以使用Streams的构造函数(类似于Java的Generators之类。有点类似)结合在一起,将使集合使用起来相当容易。 字典字面量和集合字面量确实可以很好地使用花括号。
鳍
这是我希望在Java中看到的更改列表。 就像我之前说过的那样,我认为这些事情永远不会发生(尽管我听说它们正在努力处理类型对象),但这实际上只是一个愿望清单。 你们同意我的选择吗?
翻译自: https://www.javacodegeeks.com/2015/01/how-id-like-java-to-be.html
我如何想成为Java相关推荐
- 我从阿里面试回来,想和Java程序猿谈一谈
最近小编看了一篇关于面试的文章,题目是"我从阿里面试回来,想和Java程序员谈一谈",内容不是讲面试前刷题,而是更加聚焦在面试前如何准备,以及工作当中如何学习.感觉总结的很不错,今 ...
- java判断邮箱名和文件名_Java公开课|想学好Java,教你操作Java校验文件名和邮箱地址,快来看看...
[摘要]作为一门面向对象编程语言,Java吸收了C++语言的优点,也展现了其强大的一面,我们能在各个地方看到其功能强大和简单易用的两个特征,当然,也吸引了很多程序员的注意力,所以就有人想了解Java的 ...
- 百度三轮面试回来,想和Java程序员分享一下。
转载自 百度三轮面试回来,想和Java程序员分享一下. 一,百度一面 1.给一个函数,返回 0 和 1,概率为 p 和 1-p,请你实现一个函数,使得返回 01 概率一样. 2.10 亿个 url,每 ...
- 阿里面试回来,想和 Java 程序员谈一谈
转载自 阿里面试回来,想和 Java 程序员谈一谈! 第一个问题:阿里面试都问什么? 这个是让LZ最头疼的一个问题,也是群里的猿友们问的最多的一个问题.说实话,LZ只能隐约想起并发.JVM.分布式.T ...
- python桌面开发吐血_想用java写个桌面小demo,就布局都差点写吐血了,学艺不精...
demo简略需求 项目背景 很多文件重复存放,除了管理混乱,还会对患有强迫症用户的身心造成10000点的伤害...其实就是360云盘当时上传了有上传,造成很多重复的图片+视频,前阵子360个人云盘&q ...
- 学会java可是没学历_想学java,但是学历不是很高能学吗,
活到老学到老,人最怕的是不学习. 人们往往在准备去学一个东西的时候,会有一些担心,比如难不难,能不能学会,或者就是学历不高能不能学会等等这些问题. 如果学java的话,学历高不高是其次.Java大家都 ...
- 女朋友生日java程序_★★女朋友要过生日了!我想用java为她写一个程序,一举两得啊! 希望大家多提建议啊!谢谢!!!...
女朋友要过生日了,我想用java为她写一个程序,所以想请教大家, 希望大家给我出出点子, 同时手头有3D 等漂亮图形的java程序或其他一些特效的文字,图形java程序,都希望大家多提供, 多帮 ...
- 考研学java还是c语言,想学习Java,应该选择就业还是考研?
想学习Java,应该选择就业还是考研?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 想学习Java,应该选择就业还是考 ...
- 垃圾大学,想自学 Java 可以吗?难吗?毕业后能找到一份 6k左右的工作吗?
前几天在头条上收到一条私信,内容大致是这样的:"我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?" 不知道有没有人有类似的问题, ...
- 前几天在头条上收到一条私信,内容大致是这样的:“我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?”
前几天在头条上收到一条私信,内容大致是这样的:"我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?" 不知道有没有人有类似的问题, ...
最新文章
- 神秘使者到 Java 帝国传道协程,竟被轰了出去!
- 4.9.3 方法注释
- [Step By Step]SAP HANA中使用Excel展示分析视图数据(带层次结构)
- python中thread的setDaemon、join的用法
- SpringMvc2 使用注解形式发布请求地址
- linux怎么安装scp服务,linux下ssh安装与scp命令使用详解
- SQL Server 2014各个版本区别
- SP1437 Longest path in a tree(树的直径)
- VC编程获取和修改环境变量,不重启系统即时生效
- Talk预告 | 北京大学人工智能研究院杨耀东:一个合作博弈的通用求解框架
- TPC基准程序及tpmc值
- 制作浏览器javascript书签
- 一文带你由浅入深Netty异步非阻塞世界(持续更新~~~)
- 2022年考个中级会计有多难?多地财政局紧急官宣取消延考
- 天地图2.0和google卫星非偏移数据叠加
- 学籍信息管理系统-------具体设计
- MySQL数据库课程设计_Wincc实现与数据库的交互以及报表的实现方式
- PTA - 数据库合集16
- 交付管理——怎样预判项目风险
- 网络与信息安全产品(一)
热门文章
- ssm(Spring+Spring mvc+mybatis)Spring配置文件——applicationContext-servlet.xml
- Redis(案例六:ZSet数据)
- 2016蓝桥杯省赛---java---B---8(四平方和)
- RecyclerView多布局的简单使用
- 系统架构设计师考试 重要的部分
- 韩文博 php,No releases available for package pear.php.net/HTTP_Upload
- 代理模式(多线程实现状态监控)
- java分布式对象(RMI+部署使用RMI的程序)
- 静态工具类注入service的方法
- java登录界面命令_Java命令行界面(第11部分):CmdLn