概述
今天老师讲到一个例子,导入javax.swing的时候觉得很奇怪,之前导入的包像java.util、java.lang等都是以java开头的啊!怎么又出现了一些以javax开头的包呢?它跟以java.开头的包又会有什么不一样呢?当是在弹幕问老师,老师可能没有看见(我是在校学生,因为新冠疫情在家上课),也没有回答我,所以我就自己查了一些资料,跟大家分享一下我的想法。
在Java的早期两个版本中(1.02与1.1),所有附属于Java的类(也就是standard library)都放在java开头的包中。例如java.lang、java.util、java.io等。
后来出现了一些没有出现在标准函数库中的包,这些被称为扩展的类有两种类型:标准的与非标准的。Sun所认可的称为 standard extension,其余实验性质、预览版本或beta版的非标准类则不一定被认可采用。
标准的扩展都以javax作为包名称的开头。最早出现的是Swing函数库,它包含的数个包都是以javax.Swing开头。从java 1.2(又称为java 2)开始,Swing就一并包含在Java中。
每个人都认为这样很酷,因为如此一来就不必担心用户要安装与Swing有关的扩展步骤。但这些包后来被认可为标准的一部分,所以Sun在发行Java1.2版前将开头名称从javax改为java。很多使用到Swing程序代码的书籍也就这样以新名称印刷。
但因为非常多的开发者发现这会造成重大的社会写实悲剧,他们之前所写的每一个Swing程序都要跟着改写!想到要改多少个 import javax.就痛不欲生。
敲代码的何必为难敲代码的呢?在最后关头,开发者们终于说服Sun采用“管他的命名传统,保护程序再说”的方法。所以你现在还会看到以javax.开头的包就会知道它曾经是扩展,后来取得一个标准的名分。
所以现在很多人都说javax.与java,是一样的。没错。但他们在以前却是不一样的。在以前java.开头的包,代表标准的;javax.开头的包代表标准的扩展。
最后
以上就是动听路灯为你收集整理的Javax开头的包代表什么,这个“X”是从哪里来的。的全部内容,希望文章能够帮你解决Javax开头的包代表什么,这个“X”是从哪里来的。所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复