java从零开始系列——(一)java概述

luoyjx · 2014-08-24 20:20 · 2105次阅读

概要:    

    1.学习Java整个流程介绍 
    2.Java开发环境配置以及使用
    3.创建第一个Java应用程序 
    4.Java发展史及应用领域
    5.Java开发技术分类及版本
    6.Java体系结构
    7.Java语言主要特性
    8.Java虚拟机
    9.Java开发工具介绍

1.JDK(Java SE Development Kit)即java标准开发包,是Sun提供的一套用于开发Java应用程序的开发包,它提供了编译、运行java程序所需要的各种工具和资源,包含java编译器、java运行时环境、以及常用的java类库等。
JRE(Java Runtime Environment )Java运行时环境 

2.安装JDK。
安装完毕在JDK安装路径下面看到如下文件路径
bin:该路径下存放了jdk的各种工具命令,常用的javac、java等命令
db:安装java DB的路径
demo:该路径下存放了JDK提供的演示代码。
jre:该路径下安装的是运行java程序所必需的JRE环境
lib:该路径在存放的是JDK工具命令的实际执行程序,如tools.jar
sample:该路径下存放了JDK提供的一些简单示例代码。
src.zip:该压缩包里存放的就是java所有核心类库的源代码。

3、修改系统环境变量(右击“我的电脑” --> 选“高级” --> “环境变量”)
(1) 新建两个系统变量:
    变量名 值
JAVA_HOME C:\Program Files\Java\jdk1.6.0
    CLASSPATH .;%JAVA_HOME%\lib\dt.jar; %JAVA_HOME%\lib\tools.jar
    (2) 修改PATH环境变量,添加:
PATH %JAVA_HOME%\bin;

4、测试环境变量
java -version 或 javac -version
如果你能看到JVM的版本号,如 1.6.0_0,表示环境变量配置成功。

5、编译JAVA源代码:
进入DOS命令行,改变当前路径到源文件所在目录:
javac HelloWorld.java
带包名的源代码编译:
javac -d . ./HelloWorld.java
6、运行JAVA应用程序
进入DOS命令行,改变当前路径到类文件所在目录:
cd …

7、执行不带包名的JAVA应用程序:
java HelloWorld
8、执行不带包名的JAVA应用程序,指定classpath的执行方式
java -classpath . com.itJob.HelloWorld   
注意:
编译时,Java源文件名要包含扩展名,而在执行Java代码

CLASSPATH环境变量作用:
当我们使用java java类名 命名来运行java程序时,JRE到哪里搜索java类?在当前路劲下。
Jdk1.4及之前版本,需要在CLASSPATH环境变量里面添加一点(.)。用来告诉jre需要在当前路径下面搜索java类,另外编译和运行还需要JDK的lib路径的dt.jar、tools.jar文件的java类。
在jdk1.5及以上版本完全不要设置CLASSPATH,sun公司改进jdk设计,jre会自动搜索当前路径下面的类文件,而且使用java的编译和运行工具时,系统可以自动加载dt.jar和tools.jar文件中的java类。
在jdk1.5及以上版本设置CLASSPATH环境变量,jre就会按指定的路径搜索Java类。如果CLASSPATH没有包含一点(.),那么jre就不会在当前路径搜索java类。
如果我们希望运行java程序时,临时指定jre搜索java类的路径,可以使用-classpath选项,格式如下:
Java –classpath dir1;dir2;…;dirN java类
我们还可以想CLASSPATH环境指定的搜索路径有效,而且还会在当前路径搜索java类,格式如下
Java –classpath %CLASSPATH%;.;dir1;dir2;…;dirN java类

Java版的Hello World:
   1. public class HelloWorldApp{ 
   2. public static void main (String[] args) { 
   3.       System.out.println (“Hello World!”); 
   4. }
   5. }
保存文件名称: HelloWorldApp.java

Java类结构解说,如图1-1

Java历史

Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans (对象豆)等等。SUN和JAVA的标识也正是一杯正冒着热气的咖啡。 图1-2。

1、印尼的主要经济中心
2、古代印尼和中国有很强的联系,但目前南洋最排华的国家之一
3、三大咖啡豆出产地:巴西、爪哇、中国海南

1990 年Sun 公司的 James Gosling等人开始开发名称为 Oak 的语言。希望用于控制嵌入在有线电视交换盒、PDA等的微处理器。 
1993 年交互式电视和 PDA 市场开始滑坡,而 Internet 正处于增长时期,因此Sun 公司将目标市场转向 Internet 应用程序。
1994年将Oak语言更名为Java。 
1995年Sun 公司的 HotJava 浏览器问世
1995年5月23日,Java语言诞生
1996年1月,第一个JDK-JDK1.0诞生1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术 1996年9月,约8.3万个网页应用了JAVA技术来制作1997年2月18日,JDK1.1发布
1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
1997年9月,JavaDeveloperConnection社区成员超过十万
1998年2月,JDK1.1被下载超过2,000,000次
1998年12月8日,JAVA2企业平台J2EE发布
1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)
2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
2001年9月24日,J2EE1.3发布
2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升

2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0 
2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
2006年12月,SUN公司发布JRE6.0
2009年04月20日,甲骨文74亿美元收购Sun。取得java的版权。
2010年9月,JDK7.0已经发布,增加了简单闭包功能。
2011年7月,甲骨文公司发布java7的正式版。

Java应用

Java体系

Java分为三个体系:
JavaSE(Java2 Platform Standard Edition,java平台标准版),
JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),
JavaME(Java 2 Platform Micro Edition,java平台微型版)。

Java SE
 Java SE(Java Platform,Standard Edition)。Java SE 以前称为J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java 应用程序。Java SE 包含了支持Java Web 服务开发的类,并为Java Platform,Enterprise Edition(Java EE)提供基础。

Java EE
Java EE(Java Platform,Enterprise Edition)。这个版本以前称为J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在Java SE 的基础上构建的,它提供Web 服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和Web 2.0 应用程序。
Java ME
Java ME(Java Platform,Micro Edition)。这个版本以前称为J2ME,也叫K-JAVA。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。

如图1-4

Java语言特性

1、Java语言是简单的。
2、Java语言是一个面向对象的。
3、Java语言是分布式的。
4、Java语言是健壮的。
5、Java语言是安全的。
6、Java语言是体系结构中立的。
7、Java语言是可移植的。
8、Java语言是解释型的。
9、Java是高性能的。
10、Java语言是多线程的。
11、Java语言是动态的。

Java虚拟机概念

  Java虚拟机(Java Virtual Machine)是在真实机器中用软件模拟实现的一种想象机器 。
  Java虚拟机中有自己的想象硬件,和实际的计算机一样,它具有指令集并使用不同的存储区域。它负责执行指令,管理数据、内存、寄存器。

Java虚拟机功能

    提供运行时环境
    提供垃圾回收功能
    提供中立的体系结构

Java虚拟机结构,即运行时环境

如图,1-5。

Java虚拟机提供运行时环境
如图1-6。

一:Class loader 类加载器
加载程序执行所需要的全部类
使用“命名空间”分隔本地文件系统的类和网络导入的类
全部类被加载后,可执行文件的内存就确定下来,防止未授权的访问

二:Byte code verifier 字节码校验器
代码是否符合JVM规定的文件格式
没有访问权限的违例
代码未引起操作数的堆栈溢出
参数类型是正确的
无转型错误发生

三:JIT code generator JIT代码生成器
JIT编译器:Just In Time 实时编译器
JIT编译器是Java 虚拟机的一部分,它的主要用途是将字节码指令集转换为针对某一特定微处理器的机器代码指令。
通过使用JIT编译器提高了Java 代码的执行速度。

Java虚拟机提供运行时环境执行三大任务
    加载代码-由类加载器执行 
    校验代码-由字节码校验器执行 
    执行代码 -由运行时的解释器执行

Java虚拟机垃圾回收
    其它语言,回收已分配内存是程序员的责任 
    Java编程语言提供了一种系统级线程来跟踪内存的分配情况
    程序员不需要指令回收已的分配内存
    自动完成检查和释放不再需要的内存

Java类库和包介绍

类库是描述提供某种功能的模块的一般术语
类库被组织成许多包,每个包都包含若干个类。 
Java类库中几个重要的包:java.lang、java.awt、 java.applet、java.netjava.io、java.util

如图1-7。

JAVA开发工具

Eclipse是一个开放可扩展的集成开发环境(IDE)。它不仅可以用于Java的开发,通过开发插件,它可以构建其他的开发工具。

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。

EditPlus是共享软件,它的官方网址是:www.editplus.com。EditPlus也是功能很全面的文本、HTML、程序源代码编辑器。默认的支持HTML、CSS、PHP、ASP、Perl、C/C++、Java、JavaScript和VBScript的语法着色。通过定制语法文件还可以扩展到其他程序语言。可以在Tools菜单的Configure User Tools菜单项配置用户工具  

收藏

暂无评论

登录后可以进行评论。没有账号?马上注册