1 / 24

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

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

odessa
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 本章主要介绍以下几个问题 1. Java Application程序 2. Java Applet程序 3. 图形界面的输入输出 4. 字符界面的输入输出 5. Java语言的特点

  2. 第二章 Java概述 2.1 第一个Java Application程序 1. Java程序分为两类:Java Application和Java Applet。 2. Java Application是完整的程序,用独立的解释器解释运行; Java Applet是嵌在Web中的非独立程序,由Web浏览器内部包含的Java解释器来解释运行。 3. Java编程分为编辑源程序、编译生成字节码和解释字节码几个步骤。

  3. 第二章 Java概述 2.1.1 源程序编辑 1. Java源程序的扩展名为.java , Java字节码程序的扩展名为.class。 2. 例2-1 3. Java源程序由类组成,类中成员有两种,即域成员和方法成员。 4. 所有Java Application程序必须包含且只能包含一个名为main的方法。

  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对象的一个方法。

  5. 第二章 Java概述 2.1.2 字节码的编译生成 1. Java程序中源代码经编译生成的目标代码称为字节码文件,扩展名为.class。 2. 编译Java源程序的方法。 (1)使用集成开发工具Visual J++中的菜单命令。 (2)使用命令行开发工具JDK。 例如:javac MyJavaApplication.java 将产生字节码文件MyJavaApplication.class

  6. 第二章 Java概述 2.1.2 字节码的编译生成 3. Java程序的编译是以源代码文件中的每个类为单位的,源代码中有几个类,编译后就产生几个以该类名命名的字节码文件。 4. 例2-2 该例编译后,将产生两个字节码文件MyApplication2.class和UserClass.class。

  7. 第二章 Java概述 2.1.3 字节码的解释与运行 1. 编译型语言(如C)的运行是直接作用于操作系统的,对软硬件平台有较强的依赖性,可移植性差。 2. 解释型语言(如Java)的运行不是直接作用于操作系统的,而是作用于Java虚拟机上, Java虚拟机隐藏了不同软硬件平台的差异,故Java程序有很好的可移植性和跨平台性。

  8. 第二章 Java概述 2.1.3 字节码的解释与运行 3. 编译型语言和解释型语言运行机制比较。 • 4. 运行Java Application程序的方法。 • (1)使用集成开发工具Visual J++中的菜单命令。 • (2)使用命令行开发工具JDK。 • 例如:java MyJavaApplication • 将产生输出结果Hello,Java World!

  9. 第二章 Java概述 2.2 第一个Java Appet程序 2.2.1 源程序的编辑与编译 1. Java Applet是嵌在Web中的非独立程序,由Web浏览器内部包含的Java解释器来解释运行。 2. 例2-3 3. Java Applet程序中不能有main方法,但要有且只能有一个Applet系统类的子类。

  10. 第二章 Java概述 2.2.1 源程序的编辑与编译 4. paint方法是系统类Applet的方法,子类MyJavaApplet继承并重载了它。 5. g是系统类Graphics的一个对象,drawString是该类的一个方法。 6. 编译该Java Applet也可用JDK进行。 javac MyJavaApplet.java

  11. 第二章 Java概述 2.2.2 代码嵌入 1. 运行该Java Applet时应该将字节码嵌入到HTML文件中。如嵌入到MyJavaApplet.htm中。 2. <applet>和</applet>是在HTML文件中嵌入字节码文件的标记。该标记中应包含三个参数。code指明字节码文件名,width指明显示宽度,height指明显示高度。 3. MyJavaApplet.htm文件内容。

  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

  13. 第二章 Java概述 2.3 图形界面的输入输出 2.3.1 Java Applet图形界面输入输出 1. Java Applet程序可以且只能在图形界面下工作。 2. 例2-5 3. 凡是Java Applet程序,必须加载java.applet包;凡是使用图形界面,必须加载java.awt包;凡是使用图形界面的事件处理,必须加载java.awt.event包。

  14. 第二章 Java概述 2.3.1 Java Applet图形界面输入输出 4. implements ActionListener说明了该类是动作事件(ActionEvent)的监听者。 5. init()方法在浏览器调用Java Applet程序时自动执行。 6. 动作事件的监听者使用方法actionPerformed()来处理动作事件。

  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虚拟机返回操作系统。

  16. 第二章 Java概述 2.4 字符界面的输入输出 1. 由于Java Applet程序只能在图形界面下工作,故只有Java Application程序可以实现字符界面的输入输出。 2. 例2-8和例2-9。 3. System.in指系统缺省的输入设备(键盘)。 4. BufferedReader和InputStreamReader是和输入有关的两个系统类。InputStreamReader类提供了从字节流转换成字符流的桥梁。

  17. 第二章 Java概述 2.5 Java语言的特点 1. 平台无关性。 2. 面向对象。 3. 安全稳定。 4. 支持多线程。 5. 简单易学。

  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){}; } }

  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"; }

  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); } }

  21. //MyJavaApplet.htm文件内容 返回 <HTML> <HEAD> </HEAD> <BODY> <applet code="MyJavaApplet.class" width=320 height=200 > </applet> </BODY> </HTML>

  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()+",欢迎你!"); } }

  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); } }

  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); } }

More Related