第一课 JAVA概述
一、JAVA技术背景及特点
学习方法:不管明白与不明白,练习
实战写代码为主作为入门的法宝,然后再了解各个知识点的详细用法。
学习内容:编程规范和习惯。
1.背景:
最基本的开发工具:jdk(java development kit) j2sdk
Jdk:java1以前的称谓,java开发套件。
J2sdk:java2后的称谓
Java语言的产生可以追溯到1990年,1995年由Sun公司公布。
经过10年的发展,Java技术已经遍布世界的各个角落,真正成为一种无处不在的编程语言。
到2004年10月为止,从Sun公司网站下载Java开发工具的次数已经超过1亿次,有超过6.5亿台PC安装了Java虚拟机,超过3.5亿部移动电话使用了Java技术。更为重要的是,J2EE已经成为企业应用开发实际上的标准,被认为是当今最完整、技术最先进的企业应用平台之一。
2.java 2 SDK 的版本分类及应用领域:
1999年Java技术被分成三个平台:
J2SE (standard 标准版)
:
(Java 2, Standard Edition)
是
SUN
公司针对桌面开发以及低端商务计算解决方案而开发的版本。
J2EE (enterprise 企业版)
:
(Java 2, Enterprise Edition)
是一种利用
Java 2
平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
J2EE
的基础是
J2SE
,
J2EE
不仅巩固了标准版中的许多优点,同时还提供了对
EJB
、
Servlets
、
JSP
以及
XML
技术的全面支持。
J2ME (micro 嵌入式)
:
(Java 2, Micro Edition)
一种以广泛的消费性产品为目的的高度优化的
Java
运行环境,包括讯呼机、移动电话、可视电话、数字机顶盒、智能卡等,它是致力于消费产品和嵌入式设备的开发人员的最佳选择。
应用领域广泛,就业前景极佳:
网站后台开发:JSP(Servlet/JavaBean)
独立应用程序开发:J2EE
手机、电子产品等:J2ME
而这一切的知识和技术的基础是:
J2SE(包括JAVA程序设计基础)
关键的关键!!!!!
注:自从jdk5.0以后改名为 java se java ee java me。
3.Java技术的特点:
完全面向对象、与平台无关性、易学、易用、安全、可靠等等,备受青睐,发展迅猛。
二、JAVA虚拟机
1、软件模拟硬件的技术,该技术使得Java语言能够跨平台,即:
“
一次编写,各处运行
”
2、于JRE
JRE 是Java运行环境 (Java Runtime Environment) 的缩写。它是JDK的基础,在安装JDK时就已经安装了它。如果只想运行Java程序,而不编译Java程序的话,安装JRE就足够了。
三、JAVA开发环境的搭建
1、Java开发环境简介:
Java是面向对象的编成语言,JDK作为其开发包。可以在Web上开发相关的Web应用;也可以开发各种类型的桌面程序。前者称为小程序Applet;后者称为应用程序Application。Java开发工具包JDK(Java Development Kit)是编写Java程序的基础,它集成了编译Java源程序的编译器、运行Java类文件的解释器等必备工具。
2、获得JDK
目前
SUN
公司发布的
JDK
版本最高为
1.5
,所对应的平台有
LInux
、
Solaris
和
Windows
等等。
从
http://java.sun.com/products/
可以下载,包括:
(a) jdk-1_5_0_05-windows-i586-p.exe --- JDK
开发包的
Windows
版本。
(b) jdk-1_5_0-doc.zip ---
相应的帮助文档。
(API
文档
)
3、配置Java开发环境
首先,安装JDK,
解压和安装上述下载的文件。
并选择安装的目的地:
d:/j2sdk
(如果你选择的安装目录不同,下面的环境变量设置处要做相应的修改。)
其次,配置PATH和CLASSPATH环境变量。
1.
对于
Windows 95/98
:
打开C:/的AOTUEXEC.BAT文件,找到PATH并在其最前加上
“d:/jdk14/bin;”。如果没有PATH,则加上“PATH d:/jdk14/bin;.”。重起后即可。
2.
对于
Windows NT/2000/XP
:
鼠标右键单击[我的电脑],选择[属性],在[系统特性]面板上选择[高级]标签,单击[环境变量]按钮,在[系统变量]列表中选择“
path”项,单击[编辑],在最前面添加
d:/j2sdk/bin;
(
注意要加分号
)
,添加该项内容,是为了让系统能够找到javac.exe 和 java.exe等可执行文件,其中,javac.exe 用于编译java源文件(.java文件),java.exe用于解释执行字节码文件(.class文件)
。检验配置是否正确:进入DOS命令提示符,在任意目录输入“javac”并回车,如果出现该命令的使用方法(usage ...)。则表示配置正确。
然后再在系统变量中
新建classpath环境变量,并在最前面添加
.;d:/j2sdk/lib/dt.jar; d:/j2sdk/lib/tools.jar; 等。
其中,
.; 告诉系统在当前文件夹找class文件,d:/j2sdk/lib/dt.jar; d:/j2sdk/lib/tools.jar; 告诉系统到哪里找系统类文件
注意事项:
(1)设置好环境变量(path和classpath)后要有时要注销或重新启动机器, 才能使设置起作用。
(2)要检查是否设置成功,在命令行窗口内键入 set path 或 set classpath。
最后,还要配置JAVA_HOME环境变量,为以后应用其它相关服务器打下基础。
JAVA_HOME=
d:/j2sdk
恭喜你!我们可以进入
Java
的编程世界了。
4、开发Java的常用工具
1.
记事本+JDK:原始社会,不可思议的组合。
2.
EditPlus等。
3.
Eclipse:可以通过插件实现意想不到的功能。
4.
Jbuilder:地球人都知道。
5.
netBeans:Sun提供的IDE 环境,要求配置很高,反正我的机器跑得很慢。
6. Jcreator+JDK:小巧伶俐的组合,提供自动补全功能,强力推荐。如果安装Jcreator后无法编译程序,就手动配置一下[Configure]-->[Options]-->[JDK Profiles]-->[New]选择JDK的安装目录。要使用自己的类,可以使用[Edit...]功能在已有的JDK中添加类,其功能类似设置CLASSPATH。(其中add Path是添加路径、add Archive来添加一个.jar的文件)
5、源程序的编译与运行
JDK
的编译与运行需要在
DOS
命令提示符下使用。
Javac *.java
Java *
编译器(
javac.exe
):
格式:javac [参数] 源程序
如:编译当前目录下Hello.java文件,并且把生成的类文件也放到当前目录
javac Hello.java
通常情况下,如果 CLASSPATH 设置正确,我们只需要使用不带参数的 javac 即可很好的编译 Java 程序,但是,为了方便以见,这里还是要介绍一些参数:
-classpath <path> 如果编译时需要用到的 Java 类文件不在 CLASSPATH 指定的路径中,编译时可以指定 -classpath 参数指定可能用到类所在的目录。如 (假设 Java 运行类放在 d:/javacode 目录下):
javac -classpath d:/javacode Hello.java
-d <directory> 使用 -d 参数可以指定编译生成的 .class 文件输入到哪一个目录。通常情况下,javac 把生成的 .class 文件放在 .java 文件所在的目录中。如果使用 -d 参数,则可以指定 javac 将生成的 .class 文件入在其它目录中,如下例将生成的 HelloJava.class 输出到 d:/myclass 中
javac -d :/myclass HelloJava.java
常用的 javac 参数就介绍这两个。如果你需要了解其它参数的用法和作用,可以运行不带任何参数的 javac。它将打印出 javac 的用法文档。
解释器(
java.exe
):
格式:java [参数] 类名 [程序参数]
如果运行当前目录中Hello类:java Hello 即可,而不是java Hello.class
-classpath <path> 如果编译时需要用到的 Java 类文件不在 CLASSPATH 指定的路径中,编译时可以指定 -classpath 参数指定可能用到类所在的目录。如 (假设 Java 运行类放在 d:/javacode 目录下):
java -classpath d:/javacode Hello.java
如果你需要了解其它参数的用法和作用,可以运行不带任何参数的 java。它将打印出 java 的用法文档。
6、关于CLASSPATH环境变量
它是用来设置“类路径”的,提供给JVM的类装载器到哪里寻找第三方提供的类和用户定义的类。
它的配置方法和PATH环境变量的方法一样,只是该成CLASSPATH。
例如:在d:/javacode目录写程序,那么,就可以把CLASSPATH设置成“.;d:/javacode”,以后,无论在哪个目录下都可以运行自己所写的类了。
注意:每个类目录用“;”分隔,分号前面的那个句点“.”很重要,它代表“当前目录”,如果没有它,JVM只到“d:/javacode”里去找类,而当前目录就被忽略了。
有的朋友运行程序时,出现:
Exception in thread "main" java.lang.NoClassDefFoundError:
一般就是JVM没有找到所使用的类。当然,第三方提供的“.jar”文件也是在这里设置的,
例如:在CLASSPATH里写上这么一句:“;d:/jxta/lib/jxta.jar”,
那么,在编程过程中就可以使用jxta.jar包中的API了。至于JXTA是Java实现P2P编程的一个平台。
7关于Java方面的书
买书要慎重。现在市面上的关于Java的书已经很多了,
我推荐一些:
初级读物:
《21天学通Java2第三版》
《Java 2编程详解》
《Java 2从入门到精通》
高级读物:
《Thinking in Java》
《java与模式》
……
作为入门Java来说,主要是学习“面向对象的概念”和“Java编程的思维方式”,至于类的使用可以查看Java文档资料。
8、Sun的资料
如果English说得过去,可以看Sun的Java文档,那里有每个类的详细说明。
同时,Sun还提供了Java从初级到高级的一系列“书籍”:
1、The Java Tutorial Java指南,讲得很具体。
2、The JFC Swing Tutorial, Second Edition: A Guide to Constructing GUIs
3、The Java Tutorial Continued: The Rest of the JDK
四、一个最简单的JAVA程序
(一)、使用普通文本编辑器或Java开发工具(如Jcreator)编写一个最简单的Java源程序如下:
public class Test{
public static void main(String args[]){
System.out.println("Hello 韩福华!");
}
}
并以
Test.java
为文件名保存,例如
d:/hfh/lesson1
文件夹下。
(
二
)
、进入
DOS
命令行状态,执行编译,纠正错误,直到没有任何错误提示。具体如下:
在
DOS
提示符下键入:
d:
回车
cd /hfh/lesson1
回车
d: /hfh/lesson1>javac Test.java
回车
(编译
java
源文件时要加上
.java
扩展名,文件名大小写必须一致。)
(
三
)
、使用
java
解释器(
java.exe
)执行
java
程序。
d:/hfh/lesson1>java Test
回车
(
注意:类名后面不要加
.class)
(
四
)
、一条
java
语句以分号(
;
)结束,
例如:
System.out.println("xxx");
该语句在屏幕上输出字符串,并换行。
输出后不想换行则将
ln
去掉,改为
:System.out.print("xxx");
(
五
)
、
System
的第一个
S
一定要大写,其余字母一定要小写。
(
六
)
、
Java
注释
注释的内容编译器不再理会,是给人看的。
(1)单行注释:从"//"开始到本行结束的内容都是注释,例如:
//
这是一行单行注释
//
则是另一行单行注释
(2)多行注释:在"/*"和"*/"之间的所有内容都是注释,例如:
/*
这是一段注
释分布
在多行之中
*/
(3)文档注释:在注释方面java提供一种C/C++所不具有的文档注释方式:
/** 文档注释
内容 */
用javadoc命令文件生成java程序的API文档时就将文档注释的内容包含进去。
注意事项:
注释是程序的一个重要部分,编写程序的同时尽量要将有关信息,编程思路写在程序中,供自己和他人日后参考。
注意事项:
(1)
一个
java
文件最多只能有一个
public class(
公有类
)
。
(2)
保存的文件名一定要与该公有类名完全一致,包括字母的大小写。
(3)
保存的文件名如果用双引号
""
括起来,就可以保证文件的扩展名不会
再添加上
".txt"
等。
(4)
一个文件最多只有一个
main
方法,并且此方法是程序的入口,没有此方法就没办法运行。并且此方法要在一个类内部。