第二件事,初学者:从JDK开始。
在知道Java的优点和能做什么之后。
要说Java该怎么学。
在说Java如何学习之前,有必要对Java的几个大方向做一个简单的说明。
应该说是5年前,嗯,6年前,也就是99年
Sun决定对Java应用程序平台进行分区。
毕竟,语言应用特性因领域而异。
Sun corporation可以为多种领域内的应用程序发布相关高端标准,从而集成规范代码
这三大块是J2SE、J2EE和J2ME
这项措施在今天看来无疑很了不起
正是这次革命性的发展使Java成为一种小恶作剧的游戏性语言。
发展成为当今企业应用的基础。
我将具体说明J2SE J2EE J2ME中2的含义。
事实上,2是英语单词to的谐音,to的意思
除了Second edition,Java 2本身的版本号也是1.2,还有2nd edition的味道
除了问题外,sun发布的Java版本非常有趣。
总是1。写x,其实外界对这种板块的看法就是X.0。
例如,Java 2其实是Java 1.2。
1.3实际上是3.0,1.4是4.0。现在说的5.0其实是1.5
只是以前我们是1。只是更习惯了x这个东西。
大概到了5.0就1。应该完全变成了X.0,而不是x。
所以以后听到Java 5.0的话,不要惊讶。其实是1.5。
在这三个J2*E中,J2SE是Java 2的标准版(Java 2 standard edition)的基础
这是最基本的Java语言部分,不管学什么Java技术,Java都必须掌握。
要使用J2SE,必须安装Java development kit(JDK)
JDK可以从sun的主页免费下载,下载后需要安装,具体的安装过程可以查看教材
JDK由五个部分组成:核心API、集成API、用户界面API、发布技术和Java虚拟机(JVM)
首先是执行环境,执行环境中最重要的是Java虚拟机(JVM)
如前所述,Java是跨平台语言,怎么样才能做到跨平台?毕竟,所有的操作系统都是不同的。
Java设计师提出了虚拟机的概念。
在操作系统上构建需要实施特定功能以支持程序执行的集成平台
下图:
-
|程序|
-
| JVM |
-
| UNIX | Windows | Linux | Solaris |……。
-
程序员写的每个程序首先在虚拟机上运行
所有操作都必须经过虚拟机才能与操作系统交互
这样不仅能确保所有操作系统统一,还能确保操作系统的安全
要停止工作,虚拟机(JVM)将死亡,操作系统不受影响。
我们说的Java操作环境主要是指Java,其他的不说就省略。
以下是java开发工具包(JDK)的API。实际上,使用JDK包括操作环境和开发工具
这三个词只能说明开发工具,也就是几个标准API,所以个人感觉不合适。
没有给人运营环境的感觉,意味着在里面。这是外行。
那么什么是API?
简单来说,就是应用程序编程接口,应用程序编程接口。
Java里面有用已经用过的类做的包。
这还要解释什么是类,什么是包。简单地说,包就是类的集合
一个包包含0个以上的类。嗯,具体可以看书。
这些类是Java的基类,是常用类,可以简单地理解为Java的工具集。
最后,我想谈谈JDK的发布技术。事实上,根据我的理解,那就是编译器。
.将Java文件保存为.转换为class文件的技术
这三部分由JDK组成,使用JDK可以开发J2SE应用程序。
p>最原始的只要用一个记事本写几行代码就可以了但一般来说我们会使用效果比较好的开发工具,也就是IDE
在J2SE这一块,特别推荐JCreator这款IDE
sun公司的产品,与JDK结合得几乎是天衣无缝,非常适合初学者使用
教材方面中文的推荐电子工业出版社出版的《java教程》初级与高级篇各一本
还有就是《21天学通java》虽然有人说21天系列是烂书,但个人感觉
对于j2se,这本书翻译得已经很不错了,基本没有什么语法错误,语句也很通顺
最后要说的就是《thinking in java》
这本书自然很经典,说得比较细,只是我觉得不太适合初学者,其实也不难
初学者直接看也不成问题,但个人感觉还是找本教材也就是前面推荐的两款来看比较好
基本概念的理解还是用教材的,毕竟thinking in java有的版本翻译得很烂
而且个人建议还是看原版比较好,当然这几本都看最好了,但如果没时间
至少精读其中一本,然后再看其他两本就可以,其实三本书内容也差不多
但看问题的角度方式以及面向的读者也都不同,嗯,怎么说呢,找适合自己的吧
最后要说的是
由于虚拟机的存在,J2SE的大多数软件的使用会比一般桌面软件慢一些
效果不尽如人意,现在大概只有swing控件还在使用吧,其它没怎么听说
J2EE&J2ME
这是java应用的重中之重,如果想拿高薪,最好把J2EE学好
记得以前在csdn上看过一个调查,月薪上万的程序员主要从事哪方面的工作
十个中有八个是做J2EE的,其他两个一个做J2ME,还有一个做嵌入式
也许有些夸张,但也从某一方面说明J2EE人才的稀缺以及应用的广泛
所以如果想学java,只精通j2se是永远不够的,至少还需要时间去了解其它两个J2*E