我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java平台发展趋势展望(2)

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java平台发展趋势展望(2)

Java平台发展趋势展望(2)

[@more@]

属性

很可以还有一些针对属性访问的语法糖。一个建议是使用 -> 作为调用 getFoo 和 setFoo 的缩写。例如,不再使用如下代码:

Point p = new Point();

p.setX(56);

p.setY(87);

int z = p.getX();

而是使用如下代码:

Point p = new Point();

p->X = 56;

p->Y = 87;

int z = p->X;

也有人建议用另外一些符号来代替 ->,包括 . 和 #。

将来,您有可能必须将 Point 类中的相关字段显式地标识为属性,如:

public class Point {

public int property x;

public int property y;

}

我个人对此并未产生什么深刻的印象。我宁愿 Java 平台采纳一项更为激进的方法,让我们可以真正地使用公共字段。然而,如果将 getter 或 setter 定义为与字段相同的名称,然后读写字段就会自动地分派到相应方法中。这样做所使用的语法更少,也更加灵活。

随机精度算法

非操作符重载

值得一提的是,对标准数学符号的重用不同于 操作符重载,至少不是在 C++ 中引起问题的那种重载。加号和其他操作符在任何程序中都具有明确的意义。无论在哪一个程序中,它们的意义都不会有所更改。对于相似的操作重用相同的语法让代码更易于阅读。若重新定义语法,使之在不同的程序中有不同的意义,代码就会较难理解。



另一项将方法替换为操作符的建议致力于 BigDecimal 和 BigInteger。例如,目前您不得不像这样编写不限精度的算法:

BigInteger low = BigInteger.ONE;

BigInteger high = BigInteger.ONE;

for (int i = 0; i < 500; i++) {

System.out.print(low);

BigInteger temp = high;

high = high.add(low);

low = temp;

};

写成这样会更清晰:

BigInteger low = 1;

BigInteger high = 1;

for (int i = 0; i < 500; i++) {

System.out.print(low);

BigInteger temp = high;

high = high + low;

low = temp;

};

这项建议似乎无关紧要,但它可能会导致过度使用这些类,进而导致尚不成熟的代码中性能降低。

将 JAM 从 JAR 中分离出来

Java 7 会抚平 Java 开发人员长久以来积聚的愤怒:各种各样的类加载器和相关的 classpath。Sun 公司在 Java Module System 这个问题上经受了又一次打击。数据将存储到 .jam 文件,而不是 .jar 文件中。这是一种 “superjar”,它包含了所有的代码和元数据。最重要的是,Java Module System 将首次支持版本,所以可以说一个程序需要 Xerces 2.7.1 而不是 2.6。它也允许指定依赖项;例如,可以说一个 JAM 程序需要 JDOM。它也要允许在加载一个模块时不必加载全部模块。最终,它要支持一个集中式的存储库,其中要能提供多个不同的 JAM 的不同版本,应用程序能够从中挑选所需。如果 JMS 适用,jre/lib/ext 将会成为过去时。

包访问

我也希望 Java 7 能够稍微放松一下访问限制。子包也许能够看到上层包里的包保护字段和类方法。也就是说,子包也许能够看到上层包里明确声明友好性的包保护成员。不论用哪种方式,将应用程序分割成多个包都会变得简单的多,也会显著地改善可测试性。只要子包中含有单元测试,就不必使用公共方法去进行测试。

文件系统访问

自从 1995 年开始,文件系统访问就成为 Java 平台的一个主要问题。十多年后,还是没有可信赖的跨平台方式来执行如复制或移动文件这类基本操作。处理这个问题是过去至少三个版本的 JDK(1.4、1.5 和 1.6)的公开问题。遗憾的是,为了迎合不怎么普遍却更具诱惑的操作,如内存映射 I/O,有些乏味但却很必要的 API 被搁到了一边。JSR 203 可能会最终解决这个问题,给我们一个可行的、跨平台文件系统 API。工作组也许会再一次对其无比崇尚的真正的异步输入/输出文件系统这个相对不重要的问题上花费过多时间,从而让该 API 再一次束之高阁。下一年的这个时候我们就会知道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java平台发展趋势展望(2)

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java平台发展趋势展望(2)

Java平台发展趋势展望(2)[@more@]属性很可以还有一些针对属性访问的语法糖。一个建议是使用 -> 作为调用 getFoo 和 setFoo 的缩写。例如,不再使用如下代码:Point p = new Point();p.setX(
2023-06-03

PHP跨平台开发的未来发展趋势展望

随着无服务器计算、容器化、本机应用程序开发和微服务架构的不断发展,php将继续作为跨平台开发的有力选择。这些趋势提高了php的效率、可移植性和可扩展性,使开发者能够创建在web、移动和桌面平台上无缝运行的跨平台解决方案。PHP跨平台开发的未
PHP跨平台开发的未来发展趋势展望
2024-05-21

低代码平台行业研究发展趋势与前景展望

#随着数字化转型的加速推进,低代码平台正在逐步成为各行业的主流工具。本文将深入探讨低代码平台的发展趋势、应用场景以及市场前景,以期为读者提供全面的行业研究参考。概述低代码平台是一种基于图形化界面,能够快速开发应用程序的工具。它无需深厚的编程技能,只需通过拖拽的方式即可完成软件的开发和维护。随着技术的发展,低代码平
低代码平台行业研究发展趋势与前景展望
2024-01-24

未来Go语言的发展趋势展望

go 语言的未来发展趋势主要体现在语言特性进化、平台支持扩展、库和工具提升。具体包括:泛型、并行处理和错误处理等语言特性将得到增强。支持 webassembly (wasm) 和 arm 架构等平台。集成主流云服务,改善模块管理,提升测试覆
未来Go语言的发展趋势展望
2024-04-03

PHP 函数的未来发展趋势和展望

php 函数的未来发展趋势包括:函数指针,用于将函数作为参数传递,增强灵活性。匿名函数,动态创建函数,简化代码。函数多态,同名函数根据参数类型具有不同行为,提高可扩展性。未来,php 函数预计还将进一步演进,融入更高级别的函数抽象、增强对可
PHP 函数的未来发展趋势和展望
2024-04-13

VUE 第三方登录:未来发展趋势与展望

VUE第三方登录作为一种便捷高效的登录方式,在未来将继续保持强劲的发展势头,本文将从技术发展、市场需求、安全保障等方面解析VUE第三方登录的未来发展趋势与展望。
VUE 第三方登录:未来发展趋势与展望
2024-02-23

Java XML 处理的趋势:展望未来

Java XML 处理的未来方向
Java XML 处理的趋势:展望未来
2024-03-07

CMS插件开发 趋势和未来展望

CMS插件开发:不断演变的趋势和未来展望
CMS插件开发 趋势和未来展望
2024-02-15

JavaScript Webpack 的未来展望:探索未来的发展趋势

JavaScript Webpack 是一个功能强大的打包工具,用于将多个 JavaScript 模块捆绑到一个或多个文件中。它在前端开发中已广泛使用,并在不断更新和改进中。本文将探讨 JavaScript Webpack 的未来展望,着眼于其即将发布的功能和潜在的发展趋势。
JavaScript Webpack 的未来展望:探索未来的发展趋势
2024-02-24

CMS插件开发的新趋势和展望

CMS插件开发正朝着更加智能化、模块化、安全性和可扩展性的方向发展,本文将探讨这些趋势以及未来CMS插件开发的展望,并提供示例代码以供参考。
CMS插件开发的新趋势和展望
2024-02-14

golang匿名函数和闭包的未来发展趋势展望

匿名函数没有名称,用于创建临时函数,而闭包可以访问其作用域之外的变量,允许函数访问和修改这些变量。匿名函数和闭包广泛应用于排序、计数等场景,未来有望简化语法、优化性能并增强并发支持。Golang 匿名函数和闭包匿名函数匿名函数是没有任何
golang匿名函数和闭包的未来发展趋势展望
2024-05-02

展望静态定位测量原理的未来发展趋势

随着科技的不断发展,人类对于测量技术的要求越来越高。静态定位测量作为一种重要的测量方法,也在不断追求更加精准和高效的发展方向。本文将探索静态定位测量原理的未来发展方向。首先,未来的静态定位测量将更加注重高精度测量。传统的静态定位测量方法通
展望静态定位测量原理的未来发展趋势
2024-01-18

Java Git的未来发展趋势:版本控制工具的前景展望

Java Git作为一种流行的版本控制工具,在软件开发中发挥着至关重要的作用。本文将对Java Git的未来发展趋势进行展望,探讨其在代码管理、协作开发、安全保障等方面的应用。
Java Git的未来发展趋势:版本控制工具的前景展望
2024-02-22

JavaScript模块化未来展望:揭示模块化发展趋势

JavaScript模块化作为一种先进的代码组织和复用方式,在当今Web开发中发挥着重要作用。本文将探讨JavaScript模块化的未来发展趋势,揭示模块化在未来将如何继续影响和塑造Web开发。
JavaScript模块化未来展望:揭示模块化发展趋势
2024-02-26

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录