Java与面向对象方法.ppt

上传人:牧羊曲112 文档编号:6509619 上传时间:2023-11-07 格式:PPT 页数:53 大小:824.50KB
返回 下载 相关 举报
Java与面向对象方法.ppt_第1页
第1页 / 共53页
Java与面向对象方法.ppt_第2页
第2页 / 共53页
Java与面向对象方法.ppt_第3页
第3页 / 共53页
Java与面向对象方法.ppt_第4页
第4页 / 共53页
Java与面向对象方法.ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《Java与面向对象方法.ppt》由会员分享,可在线阅读,更多相关《Java与面向对象方法.ppt(53页珍藏版)》请在三一办公上搜索。

1、2023/11/7,1,Java程序设计,刘 维,2023/11/7,2,教材,Java程序设计张白一,西电出版社,2006年第2版。参考书目 Java语言程序设计Y.Daniel Liang 著,王镁,李娜译,机械工业出版社,2004年4月第1版。Java语言导学Mary Campione 等著,马朝晖,陈美红译,机械工业出版社,2003年1月第2版。Java程序设计教程阎菲主编,中国水利水电出版社,2004年2月第1版。Java程序设计辛运帏 等编,清华大学出版社,2001年9月第1版。深入Java虚拟机Bill Venners著,曹晓钢,蒋靖译,机械工业出版社,2003年9月第1版。,2

2、023/11/7,3,期末总成绩=卷面成绩(70%)+平时成绩(30%),2023/11/7,4,四大部分,一,Java基础 二,Java面向对象设计程序三,图形程序设计 四,开发综合应用工程,2023/11/7,5,比较:面向过程程序设计面向对象程序设计,例:问题:求一个长为5,宽为4的长方形的周长和面积,2023/11/7,6,/*以面向过程的程序设计方式思考:1.确定长方形的周长和面积的算法;2.编写两个函数分别计算长方形的周长和面积;3.求周长的函数和求面积的方法(函数)需要两个参数,分别是长方形的长和宽*/,2023/11/7,7,/*以面向对象的程序设计方式思考:1.一个长方形可以

3、看成是一个长方形对象;2.一个长方形对象有两个状态(长和宽)和两个行为(求周长和面积)3.将所有长方形的共性抽取出来,设计一个长方形的类 4.通过长方形对象的行为,就可以求出某个具体的长方形的周长和面积*/,2023/11/7,8,第一章 Java与面向对象方法,重点掌握:Java语言开发运行环境;Java特点。1.1 Java是网络编程的首选1.2 Java的开发运行环境1.3 第一个Java application程序1.4 第一个Java applet程序,2023/11/7,9,Java,1.1 Java是网络编程的首选,2023/11/7,10,2023/11/7,11,是一种有生产

4、力的OOP语言 与网络关系不大,更不是专用来做网页的 国外广泛地用来做各种应用,正确认识Java,2023/11/7,12,Java历史,Birthday:May 23,19951991:Set-Top box:Jame Gosling1994:OAK and FirstPerson1995:Java and HotJavaInternet play,2023/11/7,13,1995年5月23日,Java语言诞生1996年1月,第一个JDK-JDK1.0诞生1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术1996年9月,约8.3万个网页应用了JAVA技术来制作19

5、97年2月18日,JDK1.1发布1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录1997年9月,JavaDeveloperConnection社区成员超过十万1998年2月,JDK1.1被下载超过2,000,000次1998年12月8日,JAVA2企业平台J2EE发布1999年6月,SUN公司发布Java的三个版本:标准版(JavaSE,以前是J2SE)、企业版(JavaEE以前是J2EE)和微型版(JavaME,以前是J2ME)2000年5月8日,JDK1.3发布2000年5月29日,JDK1.4发布2001年6月5日,NOKIA宣布,到2003年将

6、出售1亿部支持Java的手机2001年9月24日,J2EE1.3发布2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.02005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME2006年12月,SUN公司发布JRE6.02009年04月20日,甲骨文7

7、4亿美元收购Sun。取得java的版权。2010年11月,由于甲骨文对于Java社区的不友善,因此Apache扬言将退出JCP3。2011年7月28日,甲骨文发布java7.0的正式版。,2023/11/7,14,Java语言的特点:1、语法简单 类似于C+,但取消了指针、结构、释放内存2、分布式与安全性 面向网络的编程语言 内置TCP/IP,HTTP,FTP协议 三级代码安全检查机制,2023/11/7,15,代码安全的保证,Java源程序,Java编译器,Java字节码,编译时,网络,类装载器,字节码校验器,解释器,运行部件,代码生成 器,硬件,运行时,2023/11/7,16,3、与平台

8、无关 bytecode(字节码)-虚拟机-机器码 由Java语言程序经编译后生成的应用程序不用经过任何的修改就可以在不同的软、硬件平台上运行,这就是Java语言的平台无关性。,2023/11/7,17,4、解释执行、高效率 源代码目标代码-可执行代码-操作系统 源代码字节码-java虚拟机-操作系统5、多线程6、丰富的API文档和类库7、动态执行 执行时可动态地载入其所需要的类,2023/11/7,18,1.2 Java的开发运行环境,开发工具 SUN公司的JDK和Java Workshop Borland公司的Jbuilder IBM公司的Visual Age for Java Micros

9、oft公司的VJ+Symantec公司的VisualCafe Xinox Software公司的JCreator,2023/11/7,19,1.2 Java的开发运行环境,Java程序的编译和执行过程如图,2023/11/7,20,1.2 Java的开发运行环境,JDK(Java Development kit)是 SUN公司提供的一套Java开发环境,通常称之为它主要包括了一些常用的JDK工具、执行时需要的函数库、与C连接时所需的文件及一些Java应用程序范例等。1.2.1 JDK的获取JDK可以从SUN公司的网站http:/或国内一些常用的资料下载网站免费下载而得。,2023/11/7,2

10、1,1.2 Java的开发运行环境,1.2.2 JDK的安装安装好JDK后,JDK目录下的一些文件和文件夹说明:COPYRIGHT:JDK版本说明;README.html:JDK的HTML说明文档;README.txt:JDK基本内容及功能说明;src.zip:JDK程序源代码压缩文件;bin目录:包含了常用的JDK工具;lib目录:包含了一些在执行JDK可执行文件时所要用到的类库;include目录:包含了一些与c连接时所需的文件;demo目录:包含了许多Sun公司提供的Java小应用程序范例。,2023/11/7,22,1.2 Java的开发运行环境,1.2.3 安装Java帮助文档 JD

11、K的安装程序中并不包含帮助文档,因此必须从Sun的网站上下载进行安装(是个压缩包)。通常安装在JDK所在目录的docs子目录下面。1.2.4 环境变量的配置在安装完JDK之后,必须配置环境变量classpath和path,JDK才能够正常运行。在环境变量中新建名为classpath的环境变量(如已经存在则只要修改),值为:.;d:jdk1.3lib;classpath指明Java虚拟机要装载类的路径,“.”表示当前目录,2023/11/7,23,1.2 Java的开发运行环境,在环境变量中新建名为path的环境变量(如已经存在则只要修改),值为:%path%;d:jdk1.3bin;path指

12、明了操作系统查找JDK工具如javac、java等文件的路径,2023/11/7,24,1.2 Java的开发运行环境,工具集 javac java编译器,将源程序编译成字节码(.class)命令格式为:javac 选项 源文件名 java java解释器,用于解释执行字节码(java虚拟机(JVM)命令格式为:java 选项 类名 参数 appletviewer 小应用程序浏览器,用来测试和运行Java applet程序命令格式为:appletviewer 选项 URL,2023/11/7,25,1.3 第一个Java application程序,Java Applet程序与Java App

13、lication程序的区别:Application是独立程序,与其他高级语言编写的程序相同,能够在任何具有Java解释器的计算机上运行。Application必须有一个main方法。Applet是一特殊的Java程序,从HTML文件中通过Web浏览器运行。(在图形环境中运行,任何东西,包括文本信息,都需要在图形模式下运行。),2023/11/7,26,一、编辑源程序【例1】第一个Java Application程序/MyFirstApp.javapublic class MyFirstApp public static void main(String args)System.out.prin

14、tln(This is my first Java Application!);,2023/11/7,27,public class MyFirstApp public static void main(String args)System.out.println(This is my first Java Application!)本程序的作用是输出下面一行信息:This is my first Java Application!,2023/11/7,28,运行截图,2023/11/7,29,运行截图,2023/11/7,30,在一个Java Application应用程序中,一定要有一个类

15、包含main方法。在本范例中:,public class MyFirstApp public static void main(String args)System.out.println(This is my first Java Application!);,首先用保留字class来声明一个新的类,其类名为MyFirstApp;整个类定义由大括号 括起来。,2023/11/7,31,在该类中定义了一个main方法,这个方法共有三个修饰语,其意义分别如下:(1)public:表示这个类的main方法可以被所有的对象使用。(2)static:指明该方法是一个类方法,它可以通过类名直接调用,表示

16、main是属于这个类所使用的方法,我们将之称为“静态方法”。(3)void:表示main方法执行后不会传回任何值。这一点是重要的,因为Java编程语言要进行谨慎的类型检查,包括检查调用的方法确实返回了这些方法所声明的类型。,public class MyFirstApp public static void main(String args)System.out.println(This is my first Java Application!),2023/11/7,32,对于一个应用程序来说,main方法是必需的,而且必须按照如上的格式来定义:public static void main

17、(String args)Java解释器在没有生成任何实例的情况下,以main作为入口来执行程序。Java程序中可以定义多个类,每个类中可以定义多个方法,但是最多只能有一个公共类,main方法也只能有一个,作为程序的入口。main方法定义中,括号中的String args是传递给main方法的参数,参数名为args,它是String类的一个实例。参数可以为0个或多个,每个参数用“类名 参数名”来指定,多个参数间用逗号分隔。,2023/11/7,33,对于本程序,还有以下值得注意的地方:(1)在main方法中,只有一条语句:System.out.println(This is my first

18、Java Application!);它用来实现字符串的输出,这条语句实现与C语言中的printf语句相同的功能。这里实际上是利用Java应用编程接口(API)向控制台打印输出一行文字。API中已经有了可以使用的控制台打印功能,我们只需要提供要打印的文字。这行程序所做的事是使用由System类的out成员引用的PrintStream类的out对象的println方法,将字串“This is my first Java Application!”打印到标准输出上。,2023/11/7,34,(2)语句System.out.println(This is my first Java Applica

19、tion!);最后有一个分号(;),在Java编程语言中,一个“;”代表一个语句的结束。例如语句 totals=a+b+c+d+e+f+g;与语句 total=a+b+c+d+e+f+g;是等价的。,2023/11/7,35,(3)在程序中出现了大括号(“”和“”),它们是成对出现的,以 为边界的语句集合称为一个块(block)。语句块可被嵌套,在本例中:MyFirstApp类是一个语句块;MyFirstApp类由main方法构成;main这个方法也是一个语句块,它是一个独立单元,单元本身又作为类MyFirstApp块中一部分。,public class MyFirstApp public s

20、tatic void main(String args)System.out.println(This is my first Java Application!),2023/11/7,36,(4)为了增强程序的可读性,在程序中有多处空格,这不影响程序的执行。Java程序中允许任意多的空白。,public class MyFirstApp public static void main(String args)System.out.println(This is my first Java Application!),2023/11/7,37,(5)在本程序中第一行“/”后的内容为注释,进行编

21、译时,这一行的从“/”开始的所有内容会被忽略。Java里有两种类型的注释。(a)是传统的、C语言风格的注释,是从C+继承而来的。这些注释用一个“/*”起头,随后是注释内容,并可跨越多行,最后用一个“*/”结束;(b)起源于C+,这种注释叫作“单行注释”,以一个“/”起头,表示这一行的从“/”开始的所有内容都是注释,这种类型的注释更常用,因为它书写时更方便。,public class MyFirstApp/公共类 public static void main(String args)System.out.println(This is my first Java Application!),2

22、023/11/7,38,(6)程序名为MyFirstApp.java,和公共类的类名相同(包括大小写都一致,唯一不同的地方就是程序名有扩展名.java而类名没有扩展名),这是因为Java解释器要求公共类必须放在与其同名的文件中。,public class MyFirstApp public static void main(String args)System.out.println(This is my first Java Application!),2023/11/7,39,二、字节码的编译生成 程序必需转换为Java虚拟机能够理解的形式,这样,任何安装有Java虚拟机的计算机就可以解释

23、并运行该程序。编译Java程序是指:提取程序文件中程序员可读的文本(亦称源代码)并把它转换成字节码,字节码是提供给Java虚拟机的与平台无关的指令。Java编译器是通过外壳操作系统中的命令行进行调用的,下面对该程序进行编译,命令行调用命令为:D:javac MyFirstApp.java,2023/11/7,40,三、字节码的解释与运行 现在可以运行该程序了,用Java解释器来运行该字节码文件:D:java MyFirstApp 其中,java是JDK工具包中提供的java解释器。,2023/11/7,41,一、建立源文件 helloapplet.java例2 helloapplet.java

24、import java.awt.*;import java.applet.*;public class HelloApplet extends Applet public void paint(Graphics g)g.drawString(“hello,my first applet!”,20,20);,1.4 第一个Java applet程序,2023/11/7,42,二、编译D javac HelloApplet.java 如果正确,产生 helloapplet.class字节码文件三、建立一个HelloApplet.HTML文件 四、用IE打开HelloApplet.HTML文件,20

25、23/11/7,43,2023/11/7,44,import java.awt.*;import java.applet.*;public class HelloApplet extends Applet public void paint(Graphics g)g.drawString(“hello,my first applet!”,20,20);,语句分析:(1)import 语句将用到的java类库中的类引用到程序中。(2)public class HelloApplet extends Applet建立新类:?类名?类的定义内容?说明:extends Applet说明该类是Apple

26、t的子类,所有的java Applet程序中都必须有一个Applet的子类。,2023/11/7,45,(3)public void paint(Graphics g)行定义了一个名为paint的方法,用于重画java Applet对象的内容。(4)g.drawString(“hello,my first applet!”,20,20)行,g.drawString()方法将字符串显示在applet窗口。方法中的参数:(a)双引号中要显示的字符串;(b)(20,20)表示applet窗口的x 和y坐标(以像素为单位),import java.awt.*;import java.applet.*;

27、public class HelloApplet extends Applet public void paint(Graphics g)g.drawString(“hello,my first applet!”,20,20);,2023/11/7,46,(1)建立HTML文件是用来显示applet程序内容的网页。(2)卷标用来标示置于网页上的java Applet程序;(3)CODE指明嵌入到HTML文件中的java Applet字节码文件的文件名;(4)width,height 指出applet窗口的宽和高。,建立的HelloApplet.HTML文件,2023/11/7,47,注意:,a

28、pplet必须是一个public 类,以便web浏览器能访问它;applet总是扩展类Applet;必须为applet创建一个HTML文件,该文件必须包含指定applet字节码文件的标记;Web浏览器中的Java虚拟机调用paint方法在applet显示区域中显示图形;显示区域大小用像素度量,左上角为(0,0)。,2023/11/7,48,小练习,试编写一个显示“I Love Internet”的Java Application 程序.试编写一个显示“Hello Internet”的Java Applet程序。,2023/11/7,49,public class C1 public stati

29、c void main(String args)System.out.println(“I Love Internet),2023/11/7,50,import java.awt.*;import java.applet.*;public class C2 extends Applet public void paint(Graphics g)g.drawString(“Hello Internet”,20,20);,2023/11/7,51,Hello Internet,2023/11/7,52,JAVA虚拟机跨平台,Java 源程序,Compile,JavaByte Code,Java VMFor PC,Java VMFor UNIX,Java VMFor Mac,Java 的承诺:Write Once,Run Anywhere(WORA),2023/11/7,53,Java虚拟机,任务:装载class文件 执行其中的文件与主机交互:Java API,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号