面向对象的程序设计java课件第2章.ppt
- 文档编号:2653743
- 上传时间:2022-11-05
- 格式:PPT
- 页数:29
- 大小:263KB
面向对象的程序设计java课件第2章.ppt
《面向对象的程序设计java课件第2章.ppt》由会员分享,可在线阅读,更多相关《面向对象的程序设计java课件第2章.ppt(29页珍藏版)》请在冰豆网上搜索。
学习导读学习导读Java语语言言和和其其它它高高级级语语言言一一样样需需要要有有一一个个编编程程环环境境。
为为此此,首首先先要要安安装装Java平平台台,然然后后在在该该平平台台上上应应用用Java的的编译系统进行编程。
编译系统进行编程。
本本章章从从安安装装配配置置Java平平台台开开始始,举举例例说说明明Java源源程程序序的的结结构构,引引导导读读者者对对Java语言有一个基本的了解。
语言有一个基本的了解。
第2章Java概述教学重点与难点教学重点与难点:
v安装并配置安装并配置Java平台平台v字节码的编译生成字节码的编译生成v使用集成环境来编制使用集成环境来编制Java程序程序21安装并配置安装并配置Java平台平台2.1.1Java平台概述Java平台由Java应用编程接口(ApplicationProgrammingInterface,简称API)和Java虚拟机(Javavirtualmachine,简称JVM)构成。
Java应用编程接口是已编译的可在我们的程序中使用的代码库。
它们使我们能够添加现成的可定制的功能,以节约编程时间。
般认为,Java虚拟机是建立在实际的处理器基础上的假想的计算机。
Java虚拟机规范为Java虚拟机(JVM)作了如下定义:
在真实机器中用软件模拟实现的一种想象机器。
Java虚拟机代码被存储在.class文件中;每个文件都包含最多一个public类。
Java虚拟机规范为不同的硬件平台提供了一种编译Java技术代码的规范,该规范使Java软件独立于平台,因为编译是针对作为虚拟机的“一般机器”而做,这个“一般机器”可用软件模拟并运行于各种现存的计算机系统,也可用硬件来实现。
Java程序并不是在本机操作系统上直接运行,而是通过Java虚拟机向本机操作系统进行解释来运行。
这就是说,任何安装有Java虚拟机的计算机系统都可以运行Java程序,而不论最初开发应用程序的是何种计算机系统。
2.1.2Java平台的安装开始编写Java程序前,需要在我们的计算机系统中安装Java平台。
Java平台可从网站免费下载,该网站上提供了免费的Java开发工具集(JavaDevelopersKits,简称JDK),我们可以在这里下载适合于我们计算机操作系统的JDK,利用这些工具来开发Java程序。
2.2第一个JavaApplication程序2.2.1编辑源程序我们可以不采用任何集成开发环境,只是采用文本编辑器就可以编写简短的Java程序。
【例2.1】第一个JavaApplication程序/MyFirstApp.javapublicclassMyFirstApppublicstaticvoidmain(Stringargs)System.out.println(ThisismyfirstJavaApplication!
);本程序的作用是输出下面一行信息:
ThisismyfirstJavaApplication!
在一个JavaApplication应用程序中,一定要有一个类包含main方法。
而在本范例中,首先用保留字class来声明一个新的类,其类名为MyFirstApp,它是一个公共类(public)。
整个类定义由大括号括起来。
在该类中定义了一个main方法,这个方法共有三个修饰语,其意义分别如下:
(1)public:
表示这个类的main方法可以被所有的对象使用。
(2)static:
指明该方法是一个类方法,它可以通过类名直接调用,表示main是属于这个类所使用的方法,我们将之称为“静态方法”。
(3)void:
表示main方法执行后不会传回任何值。
这一点是重要的,因为Java编程语言要进行谨慎的类型检查,包括检查调用的方法确实返回了这些方法所声明的类型。
对于一个应用程序来说,main方法是必需的,而且必须按照如上的格式来定义。
Java解释器在没有生成任何实例的情况下,以main作为入口来执行程序。
Java程序中可以定义多个类,每个类中可以定义多个方法,但是最多只能有一个公共类,main方法也只能有一个,作为程序的入口。
main方法定义中,括号中的Stringargs是传递给main方法的参数,参数名为args,它是String类的一个实例。
参数可以为0个或多个,每个参数用“类名参数名”来指定,多个参数间用逗号分隔。
对于本程序,还有以下值得注意的地方:
(1)在main方法中,只有一条语句:
System.out.println(ThisismyfirstJavaApplication!
);它用来实现字符串的输出,这条语句实现与C语言中的printf语句相同的功能。
这里实际上是利用Java应用编程接口(API)向控制台打印输出一行文字。
API中已经有了可以使用的控制台打印功能,我们只需要提供要打印的文字。
这行程序所做的事是使用由System类的out成员引用的PrintStream类的out对象的println方法,将字串“ThisismyfirstJavaApplication!
”打印到标准输出上。
(2)语句System.out.println(ThisismyfirstJavaApplication!
);的最后有一个分号(;),在Java编程语言中,一个“;”代表一个语句的结束。
例如语句totals=a+b+c+d+e+f+g;与语句total=a+b+c+d+e+f+g;是等价的。
(3)在程序中出现了大括号(“”和“”),它们是成对出现的,以为边界的语句集合称为一个块(block)。
语句块可被嵌套,在本例中,MyFirstApp类是一个语句块;MyFirstApp类由main方法构成,main这个方法也是一个语句块,它是一个独立单元,单元本身又作为类MyFirstApp块中一部分。
(4)为了增强程序的可读性,在程序中有多处空格,这不影响程序的执行。
Java程序中允许任意多的空白。
(5)在本程序中第一行“/”后的内容为注释,进行编译时,这一行的从“/”开始的所有内容会被忽略。
Java里有两种类型的注释。
第一种是传统的、C语言风格的注释,是从C+继承而来的。
这些注释用一个“/*”起头,随后是注释内容,并可跨越多行,最后用一个“*/”结束;第二种类型的注释也起源于C+,这种注释叫作“单行注释”,以一个“/”起头,表示这一行的从“/”开始的所有内容都是注释,这种类型的注释更常用,因为它书写时更方便。
(6)程序名为MyFirstApp.java,和公共类的类名相同(包括大小写都一致,唯一不同的地方就是程序名有扩展名.java而类名没有扩展名),这是因为Java解释器要求公共类必须放在与其同名的文件中。
2.2.2字节码的编译生成程序必需转换为Java虚拟机能够理解的形式,这样,任何安装有Java虚拟机的计算机就可以解释并运行该程序。
编译Java程序是指:
提取程序文件中程序员可读的文本(亦称源代码)并把它转换成字节码,字节码是提供给Java虚拟机的与平台无关的指令。
Java编译器是通过外壳操作系统中的命令行进行调用的,下面对该程序进行编译,命令行调用命令为:
C:
javacMyFirstApp.java其中,“javac”是JDK工具包中提供的Java语言编译器,输出结果为Java字节码。
编译的结果是生成字节码文件MyFirstApp.class。
需要留意的是,使用javac这个指令并没有打开Java编译器里的侦错功能,所以你无法在它编译出来的字节码文件中找到与程序侦错有关的数据信息。
除非你用另外一个指令javac-g,它的编译结果除了字节码文件外还会附带一些有用的除错资料,可提供程序侦错时用。
事实上“javac”提供了一些指令参数供使用者编译时选用,各个参数代表不同的功能,以下是常用的几个:
(1)-calsspath:
告知编译器何处去引用其他的类型对象。
这个设定会取代你原先在开机执行文件里已说明过的环境变量CLASSPATH。
(2)-d:
指示编译器将编译后的执行码存放在特定的目录下,在这里要使用绝对路径。
(3)-g:
启动侦错功能。
2.2.3字节码的解释与运行现在可以运行该程序了,用Java解释器来运行该字节码文件:
C:
javaMyFirstApp其中,java是JDK工具包中提供的java解释器。
我们需留意的是,在这个指令行中文件名称不须附上扩展名“.class”,因为解释器本身会自行加入。
2.3JavaApplet程序的建立及运行程序的建立及运行JavaApplet程序的建立及运行可分为下述四个步骤:
(1)利用文本编辑器建立Java源程序文件;
(2)利用Java编译器(Javac)编译该JavaApplet,产生.class字节码文件;(3)建立一个HTML文件,在其中嵌入Java字节码文件;(4)用WWW浏览器或appletviewer装入该HTML文件,使Applet运行。
下面以示例程序c1_2.java为例,来说明JavaApplet程序的建立及运行步骤。
其建立与运行过程见图。
JavaApplet的建立与运行过程1.建立JavaApplet源程序文件建立JavaApplet源程序文件的方法与建立JavaApplication源程序文件的方法相同,此处不再重复。
只需注意应该给出一个有别于上一程序的文件名,本例为c1_2.java。
【程序示例c1_2.java】importjava.awt.*;importjava.applet.*;publicclassc1_2extendsAppletpublicvoidpaint(Graphicsg)g.drawString(JavaNow!
25,25);2.编译编译编译JavaApplet与编译JavaApplication也相同。
对于本例,可输入如下命令:
javacc1_2.java3.建立一个建立一个HTML文件文件在EDIT中建立名为c1_2.html的HTML文件,并输入下面两行语句:
4.运行运行在Windows9x的MS-DOS方式下,输入如下命令:
appletviewerc1_2.html按Enter键后,弹出如图1.6所示的Applet浏览器窗口。
图1.6示例程序c1_2的运行结果5.程序分析程序分析
(1)import语句。
Java的类库中存储了许多已编写好的类,将这些类按照功能分为许多包,提供给编程序人员使用。
编写Java程序时,若要使用Java类库中的类,则必须先用import语句将其引用。
程序中:
importjava.awt.*;importjava.applet.*;两条语句说明该程序要使用Java类库的类。
其中,“awt”为AbstractWindowingToolKit的缩写,表示该程序要使用抽象窗口工具集中的类;“applet”向编辑器说明该程序要使用applet包中的类。
(2)publicclassc1_2extendsApplet行声明此程序要建立一个新类,类名为c1_2。
Public指出这个类是公共类;extendsApplet说明该类是Applet的子类,而这个类的定义内容就在后面紧跟的花括号内。
所有的JavaApplet程序中都必须有一个Applet的子类,因为Applet类具有处理图形用户接口(GUI)的功能,其中定义的数据成员和方法规定了WWW浏览器如何解释JavaApplet程序。
根据子类继承父类的原则,可使WWW浏览器顺利地实现用户程序的功能。
(3)publicvoidpaint(Graphicsg)行定义了一个名为paint的方法,该方法用于重画JavaApplet对象的内容。
paint()方法的参数g是属于Graphics类的对象,当程序执行到这里时,g作为参数被传递至paint()中。
(4)g.drawString(JavaNow!
25,25);语句中的g.drawStri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 java 课件