菜鸟笔记 -- Chapter 3.2 Java简介

3.2 Java简介

Java是一种高级的面向对象的程序设计语言。使用Java语言编写的程序是跨平台的,从PC机到手持电脑都有Java开发的程序和游戏,Java程序可以在任何计算机、操作系统和支持Java的硬件设备上运行。

3.2.1 Java语言的历史

Java语言是Sun公司于1990年开发的,当时Green项目小组的研究人员正在致力于为未来的智能设备开发一种新的编程语言。由于该小组的成员James Gosling 对C++语言在执行过程中的表现非常不满,就把自己封闭在办公室里编写了一种新的语言,并将其名命名为OaK(OaK就是Java语言的前身),这个名字源于James Gosling 办公室窗外的一颗橡树(OaK)。此时的OaK已经具备安全性、网络通信、面向对象、多线程等特性,是一款相当优秀的程序语言。后来在注册OaK的商标时发现OaK已经被另一家公司注册,所以不得不改名,要起什么名字呢?工程师们边喝咖啡边讨论,看着手上的咖啡,联想到印度尼西亚有一个盛产咖啡的海岛(中文名叫爪哇),于是将其改名为Java。

随着Internet的迅速发展,web应用日益广泛,Java语言也得到了迅速发展。1994年Gosling用Java语言开发了一个实时性较高、可靠、安全、有交互功能的新型Web浏览器,他不依赖于与任何硬件平台和软件平台。该浏览器被命名为HotJava,并于1995年在业界发表,引起了巨大的轰动,Java语言的地位随之得到了肯定。1995年5月23日,JDK(Java Development Kit)1.0a2版本正式对外发布。此后,Java语言的发展异常迅速,2009年4月20日,Sun公司被Oracle公司收购。

3.2.2 什么是Java语言

Java是于1995年由Sun公司推出的一种极富创造力的面向对象的程序设计语言,它是由有Java之父之称的Sun研究院院士詹姆斯.戈士林博士亲手设计而成的,并完成了Java技术的原始编译器和虚拟机。Java的最初名字是OAK,在1995年被重命名为Java,正式发布。

Java是一种通过解释方式来执行的语言,其语法规则和C++类似。同时,Java也是一种跨平台的程序设计语言。用Java语言编写的程序,可以运行在任何平台和设备上,如跨越IBM个人电脑、MAC苹果计算机、各种微处理器硬件平台,以及Windows、UNIX、OS/2、MAC OS 等系统平台,真正实现“一次编写,到处运行”。Java非常适于企业网络和Internet环境,并且已成为Internet中最具影响力、最受欢迎的编程语言之一。

与目前常用的C++相比,Java语言简洁的多,而且提高了可靠性,除去了最大的程序错误根源,此外他还有较高的安全性,可以说它是有史以来最为卓越的编程语言。

Java语言编写的程序既是编译型的,又是解释型的。序代码经过编译之后转换为一种称为Java字节码的中间语言,Java虚拟机(JVM)将对字节码进行解释和运行。编译只进行一次,而解释在每次运行程序时都会进行。编译后的字节码采用一种针对JVM优化过的机器码形式保存,虚拟机将字节码解释为机器码,然后在计算机上面运行。Java语言程序代码的编译和运行过程如图1.1所示。

图1.1   Java程序的编译和运行过程

3.2.3 Java的应用领域

借助Java,程序开发人员可以自由地使用现有的硬件和软件系统平台。这是因为Java是独立于平台的,它还可以应用于计算机之外的领域,Java程序可以在便携式计算机、电视、电话、手机和其他的大量电子设备上运行。Java的用途不胜枚举,他拥有无可比拟的能力,其节省的时间和费用也十分可观。Java的应用领域主要有以下方面:

n 桌面应用系统开发。

n 嵌入式系统开发。

n 电子商务应用。

n 企业级应用开发。

n 交互式系统开发。

n 多媒体系统开发。

n 分布式系统开发。

n Web应用系统开发。

Java无处不在,它已经拥有几百万个用户,其发展速度要快于在它之前的任何一种计算机语言。Java能够给企业和最终用户带来数不尽的好处。Oracle公司董事长和首席执行官Larru Ellison说过:“Java正在进入企业、家庭、和学校。它正在像Internet本身一样成为普遍存在的技术。”

如果仔细观察,就会发现Java就在我们身边,如我们经常使用的Java开发工具Eclipse、NetBeans、JBuilder等,另外还有RSSOwl、Limewire、Azureus、CyberDuck、OpenOffice等优秀软件都是使用Java编写的。此外,各手机厂商都为自己的产品提供了Java技术的支持,各种手机上的Java程序和游戏已经数不胜数。

3.2.4 Java的版本

自从Sun公司推出Java以来,就力图使之无所不能。Java发展至今,按应用范围分为三个版本,即Java Se、Java EE、Java ME,也就是Java ONE(Open Net Environment)体系。本节将分别介绍这3个Java版本。

1.Java SE

Java SE是Java的标准版,主要用于桌面应用程序的开发,同时也是Java的基础,它包含Java语言基础、JDBC(Java数据库连接性操作)、I/O(输入输出)、网络通信、多线程等技术。Java SE的结构如图1.2所示。

图1.2   Java SE的结构

2.Java EE

Java EE是Java的企业版,主要用于开发企业级分布式的网络程序,如电子商务网站和ERP(企业资源规划)系统,其核心为EJB(企业Java组件模型)。Java EE的结构如图1.3所示。

图1.3   Java EE的结构

3.Java ME

Java ME主要应用于嵌入式系统开发,如掌上电脑、手机等移动通信电子设备,现在大部分手机厂商所生产的手机都支持Java技术。Java ME的结构图如图1.4所示。

图 1.4   Java ME的结构

Java SE、Java EE、Java ME又叫J2SE、J2EE、J2ME,区别在于J2EE是在java1.2是沿用下来的名字,
从java1.5开始更名为JavaEE 5.0。相应的J2SE-->JavaSE、J2ME-->JavaME现在是JavaEE 6.0只是名字的变换,并没有什么大的改变。要说有改变,那也就是版本的升级。

3.2.5 怎么学好Java

如何学好Java语言,是所有初学者需要共同面对的问题,其实每种语言的学习方法都大同小异,初学者需要注意的主要有以下几点:

n 明确自己的学习目标和大的方向,选择并锁定一门语言,按照自己的学习方向努力学习,认真研究。

n 初学者不要看太多的书,先找本相对基础的书系统的学习。很多程序开发人员工作了很久也只是熟悉部分基础而已,并没有系统地学习Java语言。

n 了解设计模式。开发程序必须编写程序代码,这些代码必须具有高度的可读性,这样编写的程序才能调试、维护和升级的价值。学习一些设计模式,能够更好的把握项目的整体结构。

n 不要死记语法。在刚接触一门语言,特别是Java语言时,掌握好基本语法,并大概了解一些功能即可。借助开发工具(如Eclipse或NetBeans)的代码辅助功能,完成代码的录入,这样可以快速进入学习状态。

n 多实践,多思考,多请教。仅读懂书本中的内容和技术是不行的,必须动手编写程序代码,并运行程序、分析运行结构,从而对学习内容有个整体的认识和肯定。用自己的方式思考问题、编写代码来提高编程思想。平时多请教老师或经理,和其他人多沟通技术问题,提高自己的技术和见识。

n 不要急躁。遇到技术问题,必须冷静对待,不要让自己思维混乱,保持清醒的头脑才能分析和解决各种问题。可以尝试用歌和散步等方式来放松自己。

n 遇到问题,首先尝试自己解决,这样可以提高自己的程序调试能力,并对常见问题有一定的了解,明白出错的原因,甚至举一反三,解决其他关联的错误问题。

n 多查阅资料。可以经常到Internet上搜索相关资料或解决问题的方法,网络上已经摘录了很多人遇到的问题和不同的解决方法,分析这些解决问题的方法,找到最适合自己的方法。

n 多阅读别人的源代码。不但要看懂别人的程序代码,还要分析编程者的编程思想和设计模式,并融为己用。

3.2.6 Java API文档

API的全称是 Application Programming Interface,即应用程序编程接口。Java API文档是Java程序开发不可缺少的编程词典,并记录了Java语言中海量的API,主要包括类的继承结构、成员变量和成员方法、构造方法、静态成员的详细说明和描述信息。可以在Java网站http://java.sun.com中找到最新版本的JDK文档(即API文档),Java API文档的页面效果如图1.5所示。

图1.5   Java API文档页面

3.2.7 Java语言组成

Java 由四方面组成:

●Java编程语言,即语法。

●Java文件格式,即各种文件夹、文件的后缀。

●Java虚拟机(JVM),即处理*.class文件的解释器

●Java应用程序接口(Java API)。

时间: 2024-11-08 16:19:23

菜鸟笔记 -- Chapter 3.2 Java简介的相关文章

菜鸟笔记 -- Chapter 3.1 计算机的基础

3.1 计算机的基础知识 每次想写些什么的时候,发现总是避不过计算机这块,在菜鸟笔记 Chapter 1 计算机从0讲起简单介绍一下计算机硬件,以后计划在线程和并发中详细介绍一下计算机的运行原理.这里我们还是先简单介绍一下计算机. 3.1.1 计算机 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备.由硬件和软件所组成,没有安装任何软件的计算机称为裸机.常见的形式有台式计算机.笔记本计算机.大型计算机等. 计算机的应用已渗透

菜鸟笔记 -- Chapter 3.4 环境变量

3.4 Java环境的搭建 工欲善其事必先利其器.在学习Java语言之前,必须了解并搭建好它所需要的开发环境.要编译和执行Java程序,JDK(Java Developers Kits)是必备的.下面将具体认识下JDK和JRE,并进行介绍下载安装JDK和配置环境变量的方法. 3.4.1 Java的跨平台 Java的跨平台是指:通过Java语言编写的应用程序在不同的系统平台上都可以运行.在这里我们要对平台进行一下解读,在菜鸟笔记 Chapter 1 计算机从0讲起中我们知道了OS的出现是为所有的开

菜鸟笔记 -- Chapter 6.4 面向对象的三大特性

6.4.1  三大特性概述 面向对象的三大特性是Java中一个很重要的基本理念. 封装是面向对象的核心思想.将对象的属性和行为封装起来,其载体就是类,类通常对客户隐藏其实现细节,这就是封装的意思.采用封装的思想保证了类内部数据结构的完整性,应用该类的用户不能轻易地直接操作此数据结构,只能执行类允许公开的数据.这样就避免了外部操作对内部数据的影响,提高了程序的可维护性. 继承和多态是面向对象开发语言中非常重要的一个环节,如果在程序中使用得当,可以将整个程序的架构变的非常有弹性,同时可以减少代码的冗

菜鸟笔记 -- Chapter 3.5 人生的第一个Java程序Hello World

3.5 第一个Java程序“Hello World” 3.5.1 工具介绍 编写Java程序可以使用很多种工具 l notepad(微软操作系统自带) l Notepad++ l Eclipse l MyEclipse 我们在初始学习阶段先通过Notepad++来学习,这样我们可以更直观的看到程序运行的流程. 3.5.2 HelloWorld 源代码 class HelloWorld{ public static void main(String[] args){ System.out.prin

JavaSE学习笔记(一)———Java简介与基础

一.  Java语言简介 1.1           计算机语言的发展过程 计算机语言发展主要分为三个阶段: 1.第一代:机器语言 2.第二代:低级语言 3.第三代:高级语言 1.2           Java发展简史 1.Java 是一种程序开发语言,既然是一门语言,就像其他语言一样,具备一定的语法 和自己的数据结构. 2.Java语言来源于sun公司,sun指的是斯坦福大学网络.由james gosling领导并开发. Java语言的具体发展历程 1991~1995  Sun 为了占领智能

菜鸟笔记 -- Chapter 5.4 Dead Code

不知道有没有前辈注意过,当你编写一段“废话式的代码时”会给出一个Dead Code警告,点击警告,那么你所写的废物代码会被编译器消除,那么如果你不理睬这个警告呢?编译后会是什么样的呢?下面我们写点代码,来查看一下编译后的结果,这里使用反编译工具jd-gui.exe.代码如下: package cn.five.four; public class Test { public static void main(String[] args) { int a = 7; int b = 9; test1(

菜鸟笔记 -- Chapter 6 面向对象

在Java语言中经常被提到的两个词汇是类与对象,实质上可以将类看作是对象的载体,它定义了对象所具有的功能.学习Java语言必须要掌握类与对象,这样可以从深层次去理解Java这种面向对象语言的开发理念,使程序员更好.更快地掌握Java编程思想与编程方式,掌握类与对象是学习理清Java语言的基础.            

菜鸟笔记 -- Chapter 09 常见类和接口

Java为我们提供了丰富的jar包支持,这其中很多都是我们日常开发所必须的,了解这些包和类,十分有助于我们的开发,深度了解源代码也有助于我们代码的优化和提高;JDK1.8为我们提供了多于4000个类与接口;我们主要从功能模块和特性来认识这些类和接口;如下: 用于比较的两个接口: Comparable:java.lang.Comparable<T> CompareTo()方法来源于此,Java中所有的比较功能,基本都源于这个接口,根据不同的类,有不同的实现; Comparator:java.ut

菜鸟笔记 -- Chapter 6.4.3 多态

6.4.3  多态 多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定.因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性. 简