《Java2实用教程》第四版备课笔记第1页第一章Java语言入门Java语言是一门很优秀的语言,具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设计中极为健壮的编程语言。Java语言的出现是源于对独立于平台语言的需要,即这种语言编写的程序不会因为芯片的变化而发生无法运行或出现运行错误。目前,随着网络的迅速发展,Java语言的优势越显明显,Java已经成为网络时代一门非常重要的语言。计算机语言的发展史★第一代语言打孔机一纯机器语言★第二代语言汇编★第三代语言C、FORTRAN、PASCAL面向过程*C++面向过程/对象JAVA跨平台的纯面向对象的语言*NET跨语言的平台1.1Java的诞生Java是1995年6月由Sun公司引进到我们这个世界的革命性的编程语言.1990年Sun公司成立了由JamesGosling领导的开发小组,开始致力于开发一种可移植的、跨平台的语言,该语言能生成正确运行于各种操作系统、各种CPU芯片上的代码。他们的精心专研和努力促成了Java语言的诞生。1.2Java的特点1.简单2.面向对象3.与平台无关,提供程序运行的解释环境4.健壮性,吸收了C/C++语言的优点,去掉了影响程序健壮性的部分(如:指针、内存的申请和释放等)5.多线程6.安全7.动态Java程序运行机制及运行过程Java两种核心机制★Java虚拟机(JavaVirtualMachine)★垃圾收集机制(GarbageCollection)类装裁器酒源程序(.j文件)字节码校验器Java编译器+解释器+(节文件)操作系统平台核心机制之Java虚拟机★Java虚拟机可以理解成一个以字节码为指令的CPU★对于不同的运行平台,有不同的虚拟机
《Java2 实用教程》第四版备课笔记 第 1 页 第一章 Java 语言入门 Java 语言是一门很优秀的语言,具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目 前软件设计中极为健壮的编程语言。 Java 语言的出现是源于对独立于平台语言的需要,即这种语言编写的程序不会因为芯片的变化而发生 无法运行或出现运行错误。目前,随着网络的迅速发展,Java 语言的优势越显明显,Java 已经成为网络时 代一门非常重要的语言。 计算机语言的发展史 第一代语言 ❖ 打孔机—纯机器语言 第二代语言 ❖ 汇编 第三代语言 ❖ C、FORTRAN、PASCAL 面向过程 ❖ C++面向过程/对象 ❖ JAVA 跨平台的纯面向对象的语言 ❖ .NET 跨语言的平台 1.1 Java 的诞生 Java 是 1995 年 6 月由 Sun 公司引进到我们这个世界的革命性的编程语言.1990 年 Sun 公司成立了由 James Gosling 领导的开发小组,开始致力于开发一种可移植的、跨平台的语言,该语言能生成正确运行于 各种操作系统、各种 CPU 芯片上的代码。他们的精心专研和努力促成了 Java 语言的诞生。 1.2 Java 的特点 1.简单 2.面向对象 3.与平台无关,提供程序运行的解释环境 4.健壮性,吸收了 C/C++语言的优点,去掉了影响程序健壮性的部分(如:指针、内存的申请和释放 等) 5.多线程 6.安全 7.动态 Java 程序运行机制及运行过程 Java 两种核心机制 Java 虚拟机(Java Virtual Machine) 垃圾收集机制(Garbage Collection) 核心机制之 Java 虚拟机 Java 虚拟机可以理解成一个以字节码为指令的 CPU 对于不同的运行平台,有不同的虚拟机
第2页《Java2实用教程》第四版备课笔记★Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,处处运行JVMforUNIXUNIX执行编译JVMforWindowsWindows*.class*.javaJVMforOtherOtherPlatform核心机制之垃圾收集个不再使用的内存空间应回收一垃圾收集?在C/C++等语言中,由程序员负责回收无用内存★Java语言消除了程序员回收内存空间的责任★垃圾收集在Java程序运行过程中自动进行1.3安装SUN公司的SDK目前Java运行平台主要分为3个版本:?J2SE:Java标准平台J2EE:Java企业平台J2ME:Java小型平台学习Java必须从J2SE开始,可以登录到Sun公司的网站:http://java.sun.com,免费下载SDK1.5(例如:jdk-1_5_0-beta2-windows-i586.exe)J2SDK&JRESoftwareDevelopmentKit(软件开发包)JavaRuntimeEnvironment(Java运行环境)开发需要JDK,用户只需JRE系统环境变量Path值的设置SDK平台提供的Java编译器(javac.exe)和Java解释器(javaexe)位于Java安装目录的bin文件夹中,为了能在任何目录中使用编译器和解释器,应在系统特性中设置Path。对于Windows2000、Windows2003、WindowsXP,用鼠标右键点击"我的电脑”,弹出菜单,然后选择属性,弹出“系统特性"对话框,再单击该对话框中的高级选项,然后点击按钮“环境变量”,添加如下的系统环境变量。系统环境ClassPath值的设置SDK的安装目录的jre文件夹中包含着Java应用程序运行时所需要的Java类库,这些类库被包含在jrellib目录下的压缩文件rt.jar中。区编辑系统变量新建系统变量?风变量名变量名:PathClasspath支量值支量值0tjail.5lbin:d: jdki.5ujrellibrt.jer.:确定确定取消取消1.4一个Java程序的开发过程
《Java2 实用教程》第四版备课笔记 第 2 页 Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,处处运行” 核心机制之垃圾收集 不再使用的内存空间应回收—垃圾收集 在 C/C++等语言中,由程序员负责回收无用内存 Java 语言消除了程序员回收内存空间的责任 垃圾收集在 Java 程序运行过程中自动进行 1.3 安装 SUN 公司的 SDK 目前 Java 运行平台主要分为 3 个版本: J2SE:Java 标准平台 J2EE:Java 企业平台 J2ME:Java 小型平台 学习 Java 必须从 J2SE 开始,可以登录到 Sun 公司的网站:http://java.sun.com,免费下载 SDK1.5(例 如:jdk-1_5_0-beta2-windows-i586.exe) J2SDK&JRE Software Development Kit(软件开发包) Java Runtime Environment(Java 运行环境) 开发需要 JDK,用户只需 JRE 系统环境变量 Path 值的设置 SDK 平台提供的 Java 编译器(javac.exe)和 Java 解释器(java.exe)位于 Java 安装目录的 bin 文件夹中, 为了能在任何目录中使用编译器和解释器,应在系统特性中设置 Path。对于 Windows2000、Windows2003、 Windows XP,用鼠标右键点击“我的电脑”,弹出菜单,然后选择属性,弹出“系统特性”对话框,再单击该 对话框中的高级选项,然后点击按钮“环境变量”,添加如下的系统环境变量。 系统环境 ClassPath 值的设置 SDK 的安装目录的 jre 文件夹中包含着 Java 应用程序运行时所需要的 Java 类库,这些类库被包含在 jre\lib 目录下的压缩文件 rt.jar 中。 1.4 一个 Java 程序的开发过程
《Java2实用教程》第四版备课笔记第3页Java编译器javac源刘牛:文半名j通V编译生成字节码文件Java应用程序Java小应用程序由浏览器执行由Java解释器执行图1.4 Java 程序的开发过程1.5一个简单的Java应用程序publicclassHello1public static void main (String args[ D)1System.out.println("你好,很高兴学习Java");11Java的源文件以Java为扩展名。源文件的基本组成部分是类(class)源文件中最多只能有一个public类,其它类的个数不限,如果源文件包含一个public类,就必须按该全类命名★Java应用程序的执行入口是main()方法。它有固定的书写格式:+publicstaticvoidmain(stringarg[)(...)★Java语言严格区分大小写★Java方法由一条条语句构成,每个语句以分号结束★Java语言有三种注释方式★编译当创建了Hello.java这个源文件后,就要使用Java编译器(javac.exe)对其进行编译。C:110001>javacHello.java运行Java应用程序必须通过Java虚拟机中的Java解释器(javaexe)来解释执行其字节码文件。Java应用程序总是从主类的main方法开始执行。因此,必须如下运行Java应用程序:C:11000>javaHello1.6一个简单的Java小应用程序(JavaApplet)import java.applet.*;import java.awt.*;publicclassBoyextendsApplettpublic void paint(Graphics g)g.setColor(Color.red);g.drawString("我一边喝着咖啡,一边学Java呢"5,30);g.setColor(Color.blue);g.drawString("我学得很认真"10,50);33★编译c:l1000\>javacBoy.java★运行JavaApplet由浏览器来运行,因此我们必须编写一个超文本文件(含有applet标记的web页)通知浏览器来运行这个JavaApplet。以下是一个简单的html文件:Boy.html
《Java2 实用教程》第四版备课笔记 第 3 页 1.5 一个简单的 Java 应用程序 public class Hello { public static void main (String args[ ]) { System.out.println("你好,很高兴学习 Java"); } } Java 的源文件以 Java 为扩展名。源文件的基本组成部分是类(class) 源文件中最多只能有一个 public 类,其它类的个数不限,如果源文件包含一个 public 类,就必须按该 类命名 Java 应用程序的执行入口是 main()方法。它有固定的书写格式: ❖ public static void main(string arg[ ]){.} Java 语言严格区分大小写 Java 方法由一条条语句构成,每个语句以分号结束 Java 语言有三种注释方式 编译 当创建了 Hello.java 这个源文件后,就要使用 Java 编译器(javac.exe)对其进行编译。 C:\1000\>javac Hello.java 运行 Java 应用程序必须通过 Java 虚拟机中的 Java 解释器(java.exe)来解释执行其字节码文件。Java 应用程序总是从主类的 main 方法开始执行。因此,必须如下运行 Java 应用程序: C:\1000\>java Hello 1.6 一个简单的 Java 小应用程序(Java Applet) import java.applet.*; import java.awt.*; public class Boy extends Applet { public void paint(Graphics g) { g.setColor(Color.red); g.drawString("我一边喝着咖啡,一边学 Java 呢",5,30); g.setColor(Color.blue); g.drawString("我学得很认真",10,50); } } 编译 c:\1000\>javac Boy.java 运行 Java Applet 由浏览器来运行,因此我们必须编写一个超文本文件 (含有 applet 标记的 web 页) 通知浏览器来运行这个 Java Applet。以下是一个简单的 html 文件:Boy.html
第4页《Java2实用教程》第四版备课笔记<applet code=Boy.class height=100 width=300></applet>★如果浏览器不支持JavaApplet程序(比如WinXP自带的E),你也可以使用SDK提供的appletviewer来调试小程序,如,在DOS命令行执行:c:11000lappletviewerBoy.html1.7什么是JSPJSP是JavaServerPages的缩写,是由Sun公司1999于年推出的一种动态网页技术标准。JSP是基于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立安全、跨平台的先进动态网站,这项技术还在不断的更新和优化中。ASP也是一个Web服务器端的开发环境,可以开发出动态的、高性能的Web服务应用程序。JSP和ASP技术非常相似,ASP的编程语言是VBScript,JSP使用的是Java。与ASP相比,JSP以Java技术为基础,又在许多方面做了改进,具有动态页面与静态页面分离,能够脱离硬件平台的束缚,以及编译后运行等优点,完全克服了ASP的脚本级执行的缺点
《Java2 实用教程》第四版备课笔记 第 4 页 <applet code=Boy.class height=100 width=300></applet> 如果浏览器不支持 Java Applet 程序(比如 Win XP 自带的 IE),你也可以使用 SDK 提供的 appletviewer 来调试小程序,如,在 DOS 命令行执行: c:\1000\appletviewer Boy.html 1.7 什么是 JSP JSP 是 Java Server Pages 的缩写,是由 Sun 公司 1999 于年推出的一种动态网页技术标准。JSP 是基于 Java Servlet 以及整个 Java 体系的 Web 开发技术,利用这一技术可以建立安全、跨平台的先进动态网站, 这项技术还在不断的更新和优化中。ASP 也是一个 Web 服务器端的开发环境,可以开发出动态的、高性能 的 Web 服务应用程序。JSP 和 ASP 技术非常相似,ASP 的编程语言是 VBScript,JSP 使用的是 Java。与 ASP 相比,JSP 以 Java 技术为基础,又在许多方面做了改进,具有动态页面与静态页面分离,能够脱离硬 件平台的束缚,以及编译后运行等优点,完全克服了 ASP 的脚本级执行的缺点
《Java2实用教程》第四版备课笔记第5页第2章标识符、关键字和数据类型基本数据类型Java的基本数据类型包括:boolean、byte、short、int、long、float、double、char。2.1标识符和关键字用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。Java标识符命名规则:标识符由字母、下划线、美元符或数字组成标识符应以字母、下划线、美元符开头*标识符大小写敏感,长度无限制Java标识符选取应注意“见名知意”,且不能与Java语言的关键字重名。合法的标识符不合法的标识符HelloWorldclassDataclassDataclass#_98398.3$bs5_c7HellWorld关键字:Java中一些赋以特定的含义,用做专门用途的字符串称为关键字(keyword)。2.2Java语言的基本数据类型基本数据类型也称作简单数据类型。Java语言有8种简单数据类型,分别是:boolean、byte、short、int、long、float、double、char。这8种数据类型习惯上可分为4大类型:+逻辑类型:boolean字符类型:char+整数类型:byte、short、int、long浮点类型:float、double1.逻辑类型★常量:true,false。★变量的定义?使用关键字boolean来定义逻辑变量,定义时也可以赋给初值:booleanx=true,tom=falsejiafei2.int型★使用关键字int来定义int型整型变量,定义时也可以赋给初值:intx=12,tom=-1230,height=9898,number★对于int型变量,内存分配给4个字节(byte),一个字节由8位(bit)组成,4个字节占32位★int型变量的取值范围是:-231~231-13.byte型★使用关键字byte来定义byte型整型变量,可以一次定义几个,定义时也可以赋给初值:byte m=-12,deep=28,speed=98;★对于byte型变量,内存分配给1个字节,占8位,因此byte型变量的取值范围是:-27~27-1。4.short型★使用关键字short来定义short型整型变量,可以一次定义几个,定义时也可以赋给初值:shortx=12.tom=1234.漂亮=9876.jiafei★对于short型变量,内存分配给2个字节,占16位,因此short型变量的取值范围是:-215~215-1。5.Char型★常量:Java使用unicode字符集,uincode表中的字符就是一个字符常量,字符常量需使用单引号扩起,例如:"A、"b、"?、!、"9、“好”、"t、‘、8★变量:使用关键字char来定义字符变量,可以一次定义几个,定义时也可以赋给初值:
《Java2 实用教程》第四版备课笔记 第 5 页 第2章 标识符、关键字和数据类型 基本数据类型 Java 的基本数据类型包括:boolean、byte 、short、int、long、float、double、char。 2.1 标识符和关键字 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说, 标识符就是一个名字。 Java 标识符命名规则: ❖ 标识符由字母、下划线、美元符或数字组成 ❖ 标识符应以字母、下划线、美元符开头 ❖ 标识符大小写敏感,长度无限制 Java 标识符选取应注意“见名知意”,且不能与 Java 语言的关键字重名。 关键字:Java 中一些赋以特定的含义,用做专门用途的字符串称为关键字(keyword)。 2.2 Java 语言的基本数据类型 基本数据类型也称作简单数据类型。Java 语言有 8 种简单数据类型,分别是:boolean、byte 、short、 int、long、float、double、char。 这 8 种数据类型习惯上可分为 4 大类型: 逻辑类型:boolean 字符类型:char 整数类型:byte、short、int、long 浮点类型:float、double 1.逻辑类型 常量:true ,false。 变量的定义 使用关键字 boolean 来定义逻辑变量,定义时也可以赋给初值:boolean x=true,tom=false,jiafei; 2.int 型 使用关键字 int 来定义 int 型整型变量,定义时也可以赋给初值: int x= 12,tom=-1230,height=9898,number; 对于 int 型变量,内存分配给 4 个字节(byte),一个字节由 8 位(bit)组成,4 个字节占 32 位 int 型变量的取值范围是:-231~231-1 3.byte 型 使用关键字 byte 来定义 byte 型整型变量,可以一次定义几个,定义时也可以赋给初值: byte m=-12,deep=28,speed=98; 对于 byte 型变量,内存分配给 1 个字节,占 8 位,因此 byte 型变量的取值范围是: -27~27-1。 4.short 型 使用关键字 short 来定义 short 型整型变量,可以一次定义几个,定义时也可以赋给初值: short x=12,tom=1234,漂亮=9876,jiafei; 对于 short 型变量,内存分配给 2 个字节,占 16 位,因此 short 型变量的取值范围是:-215~ 215-1。 5.Char 型 常量:Java 使用 unicode 字符集,uincode 表中的字符就是一个字符常量,字符常量需使用单引号 扩起,例如:'A'、 'b'、 '?' 、'!' 、'9'、 '好' 、'\t' 、'き'、 'δ' 变量:使用关键字 char 来定义字符变量,可以一次定义几个,定义时也可以赋给初值: