本章主要介绍以下几个问题

24
本本本本本本本本本本本本 1. Java Application 本本 2. Java Applet 本本 3. 本本本本本本本本本 4. 本本本本本本本本本 5. Java 本本本本本

Upload: odessa

Post on 07-Jan-2016

38 views

Category:

Documents


3 download

DESCRIPTION

本章主要介绍以下几个问题. 1. Java Application 程序 2. Java Applet 程序 3. 图形界面的输入输出 4. 字符界面的输入输出 5. Java 语言的特点. 第二章 Java 概述. 2.1 第一个 Java Application 程序 1. Java 程序分为两类: Java Application 和 Java Applet 。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 本章主要介绍以下几个问题

本章主要介绍以下几个问题

1. Java Application 程序2. Java Applet 程序3. 图形界面的输入输出4. 字符界面的输入输出5. Java 语言的特点

Page 2: 本章主要介绍以下几个问题

第二章 Java 概述2.1 第一个 Java Application 程序

1. Java 程序分为两类: Java Application 和Java Applet 。

2. Java Application 是完整的程序,用独立的解释器解释运行; Java Applet 是嵌在Web 中的非独立程序,由 Web 浏览器内部包含的 Java 解释器来解释运行。

3. Java 编程分为编辑源程序、编译生成字节码和解释字节码几个步骤。

Page 3: 本章主要介绍以下几个问题

第二章 Java 概述

2.1.1 源程序编辑1. Java 源程序的扩展名为 .java , Java 字节码

程序的扩展名为 .class 。2. 例2-13. Java 源程序由类组成,类中成员有两种,

即域成员和方法成员。4. 所有 Java Application 程序必须包含且只

能包含一个名为 main 的方法。

Page 4: 本章主要介绍以下几个问题

第二章 Java 概述2.1.1 源程序编辑

5. main 方法是所有 Java Application 程序执行的入口点。 main 方法所在的类称为主类。

6. main 方法的方法头书写格式如下: public static void main(String args[]) 或 public static void main(String[] args)7. System 是一个系统对象; out 是 System 对

象的一个域,也是一个对象, println 是out 对象的一个方法。

Page 5: 本章主要介绍以下几个问题

第二章 Java 概述

2.1.2 字节码的编译生成1. Java 程序中源代码经编译生成的目标代码

称为字节码文件,扩展名为 .class 。2. 编译 Java 源程序的方法。

(1) 使用集成开发工具 Visual J++ 中的菜单命令。 (2) 使用命令行开发工具 JDK 。 例如: javac MyJavaApplication.java

将产生字节码文件 MyJavaApplication.class

Page 6: 本章主要介绍以下几个问题

第二章 Java 概述

2.1.2 字节码的编译生成3. Java 程序的编译是以源代码文件中的每个

类为单位的,源代码中有几个类,编译后就产生几个以该类名命名的字节码文件。

4. 例 2-2

该例编译后,将产生两个字节码文件MyApplication2.class 和 UserClass.class 。

Page 7: 本章主要介绍以下几个问题

第二章 Java 概述

2.1.3 字节码的解释与运行1. 编译型语言 ( 如 C) 的运行是直接作用于操

作系统的,对软硬件平台有较强的依赖性,可移植性差。

2. 解释型语言 ( 如 Java) 的运行不是直接作用于操作系统的,而是作用于 Java 虚拟机上, Java 虚拟机隐藏了不同软硬件平台的差异,故 Java 程序有很好的可移植性和跨平台性。

Page 8: 本章主要介绍以下几个问题

第二章 Java 概述

2.1.3 字节码的解释与运行3. 编译型语言和解释型语言运行机制比较。

4. 运行 Java Application 程序的方法。 (1) 使用集成开发工具 Visual J++ 中的菜单命令。

(2) 使用命令行开发工具 JDK 。

例如: java MyJavaApplication

将产生输出结果 Hello,Java World!

Page 9: 本章主要介绍以下几个问题

第二章 Java 概述

2.2 第一个 Java Appet 程序2.2.1 源程序的编辑与编译

1. Java Applet 是嵌在 Web 中的非独立程序,由 Web 浏览器内部包含的 Java 解释器来解释运行。

2. 例 2-3

3. Java Applet 程序中不能有 main 方法,但要有且只能有一个 Applet 系统类的子类。

Page 10: 本章主要介绍以下几个问题

第二章 Java 概述

2.2.1 源程序的编辑与编译4. paint 方法是系统类 Applet 的方法,子类

MyJavaApplet 继承并重载了它。5. g 是系统类 Graphics 的一个对

象, drawString 是该类的一个方法。6. 编译该 Java Applet 也可用 JDK 进行。 javac MyJavaApplet.java

Page 11: 本章主要介绍以下几个问题

第二章 Java 概述2.2.2 代码嵌入

1. 运行该 Java Applet 时应该将字节码嵌入到HTML 文件中。如嵌入到MyJavaApplet.htm 中。

2. <applet> 和 </applet> 是在 HTML 文件中嵌入字节码文件的标记。该标记中应包含三个参数。 code 指明字节码文件名, width指明显示宽度, height 指明显示高度。

3. MyJavaApplet.htm 文件内容。

Page 12: 本章主要介绍以下几个问题

第二章 Java 概述2.2.3 Applet 的运行

1. Java Applet 的字节码文件和编写好的 HTML 文件一般保存在 Web 服务器的合适目录下,当 WWW浏览器下载此 HTML 文件并显示时,会自动下载该 HTML 文件指定的 Java Applet 的字节码文件,然后调用内置在浏览器中的 Java 解释器来解释执行该字节码文件。

2. JDK 中的应用程序 AppletViewer.exe 也可以运行Java Applet 程序。

例如: AppletViewer MyJavaApplet.htm

Page 13: 本章主要介绍以下几个问题

第二章 Java 概述2.3 图形界面的输入输出2.3.1 Java Applet 图形界面输入输出

1. Java Applet 程序可以且只能在图形界面下工作。

2. 例 2-53. 凡是 Java Applet 程序,必须加载

java.applet 包;凡是使用图形界面,必须加载 java.awt 包;凡是使用图形界面的事件处理,必须加载 java.awt.event 包。

Page 14: 本章主要介绍以下几个问题

第二章 Java 概述2.3.1 Java Applet 图形界面输入输出

4. implements ActionListener 说明了该类是动作事件 (ActionEvent) 的监听者。

5. init() 方法在浏览器调用 Java Applet 程序时自动执行。

6. 动作事件的监听者使用方法actionPerformed() 来处理动作事件。

Page 15: 本章主要介绍以下几个问题

第二章 Java 概述2.3.2 Java Application 图形界面输入输出

1. Java Application 程序需要创建自己的图形界面。2. Java Application 程序创建图形界面的方法是在程

序中定义一个 java.awt 包中的窗框类 frame 类的子类。

3. 例 2-6 和例 2-7 。4. 函数 FrameInOut() 是类的构造函数,构造函数在

类对象创建时由系统自动调用。5. 语句 System.exit(0) 用于提出 Java 虚拟机返回操作

系统。

Page 16: 本章主要介绍以下几个问题

第二章 Java 概述2.4 字符界面的输入输出

1. 由于 Java Applet 程序只能在图形界面下工作,故只有 Java Application 程序可以实现字符界面的输入输出。

2. 例 2-8 和例 2-9 。 3. System.in 指系统缺省的输入设备 ( 键盘 ) 。4. BufferedReader 和 InputStreamReader 是和

输入有关的两个系统类。 InputStreamReader类提供了从字节流转换成字符流的桥梁。

Page 17: 本章主要介绍以下几个问题

第二章 Java 概述2.5 Java 语言的特点

1. 平台无关性。2. 面向对象。 3. 安全稳定。4. 支持多线程。5. 简单易学。

Page 18: 本章主要介绍以下几个问题

// 例 2-1 MyJavaApplication.java 返回import java.io.*;

public class MyJavaApplication

{

public static void main(String[] args)

{

System.out.println("Hello,Java World!");

try

{

char ch=(char)System.in.read();

}catch(IOException e){};

}

}

Page 19: 本章主要介绍以下几个问题

// 例 2-2 MyApplication2.java 返回import java.io.*;public class MyApplication2{

public static void main(String[] args){

System.out.println(UserClass.m_sMessage);try{

char ch=(char)System.in.read();}catch(IOException e){};

}}class UserClass{

static String m_sMessage="Message from User Defined Class";}

Page 20: 本章主要介绍以下几个问题

// 例 2-3 MyJavaApplet.java 返回import java.awt.Graphics;

import java.applet.Applet;

public class MyJavaApplet extends Applet

{

public void paint(Graphics g)

{

g.drawString("Hello,Java Applet World!",10,20);

g.fillRect(90,50,120,120);

}

}

Page 21: 本章主要介绍以下几个问题

//MyJavaApplet.htm 文件内容 返回<HTML>

<HEAD>

</HEAD>

<BODY>

<applet

code="MyJavaApplet.class" width=320 height=200 >

</applet>

</BODY>

</HTML>

Page 22: 本章主要介绍以下几个问题

// 例 2-5 AppletInOut.java 返回import java.awt.*;import java.applet.*;import java.awt.event.*;public class AppletInOut extends Applet implements ActionListener{

Label prompt;TextField input,output;public void init(){

prompt=new Label("请输入您的名字: ");input=new TextField (6);output=new TextField (20);add(prompt);add(input);add(output);input.addActionListener (this);

}public void actionPerformed(ActionEvent e){

output.setText (input.getText()+",欢迎你! ");}

}

Page 23: 本章主要介绍以下几个问题

// 例 2-8 ApplicationCharInOut.java 返回import java.io.*;public class ApplicationCharInOut{

public static void main (String[] args){

char c=' ';System.out.print ("Enter a character please:");try{

c=(char)System.in.read ();}catch(IOException e){};

System.out.println ("You have enter character:"+c); }

}

Page 24: 本章主要介绍以下几个问题

// 例 2-9 ApplicationLineIn.java 返回import java.io.*;public class ApplicationLineIn{

public static void main (String[] args){

String s=" ";System.out.print ("Enter a character string:");try{

BufferedReader in=new BufferedReader (new InputStreamReader (System.in));

s=in.readLine ();}catch(IOException e){};

System.out.println ("You have entered string:"+s);

}}