Java面向对象程序设计_1(吴卿).ppt

上传人:s****8 文档编号:67195772 上传时间:2022-12-24 格式:PPT 页数:70 大小:1.66MB
返回 下载 相关 举报
Java面向对象程序设计_1(吴卿).ppt_第1页
第1页 / 共70页
Java面向对象程序设计_1(吴卿).ppt_第2页
第2页 / 共70页
点击查看更多>>
资源描述

《Java面向对象程序设计_1(吴卿).ppt》由会员分享,可在线阅读,更多相关《Java面向对象程序设计_1(吴卿).ppt(70页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Java 面向对象程序设计第一次课吴吴 卿卿 博士博士 副教授副教授提纲课程简介教学安排程序设计语言介绍走进Java1.课程简介(1)课程名称Java面向对象程序设计uJava语言程序设计程序设计程序设计程序设计 u面向对象对象程序设计 问题uWhat is 程序设计程序设计程序设计程序设计?(编程?)(编程?)(编程?)(编程?)uWhat is 对象对象?1.课程简介(2)认识大家认识大家100100位同学位同学u请记住各位的课程序号自我介绍,联系方式自我介绍,联系方式uOffice:1-311uTel:86919095,MP:13958100277uE-Mail:1.课程简介(3)几几句

2、话,与大家共勉句话,与大家共勉u程序设计很有趣u多看多学多实践u积极主动勤于思u勿在浮沙筑高台祝大家快乐祝大家快乐学习学习JavaJava,学业有成!,学业有成!2.教学安排(1)课时安排课时安排u总 课 时:48学时u讲 课:36学时(12次)u课内上机:12学时(4次,具体待定)u课外上机:20学时2.教学安排(2)时间u周一晚10-12节u预备铃 18:20(18:20(请各位提前进入,保持安静!请各位提前进入,保持安静!)u第10节 18:30 19:15u第11节 19:20 20:05u第12节 20:10 20:55地点u11-3012.教学安排(3)教材及参考Java程序设计

3、第2版,刘慧宁 等编,机械工业出版社;JavaJava编程编程思想思想 Bruce Eckel 著 陈昊鹏 译 机械工业出版社JAVA JAVA 2 2核心技术核心技术卷卷 基础知识(原书第7版)Cay S.Horstmann,Gary Cornell 著 机械工业出版社2.教学安排(4)计算模式变化计算模式变化JavaJava概述、开发环境概述、开发环境JavaJava语言基础、流程控制、输入输出、数组、语言基础、流程控制、输入输出、数组、字符串字符串类与对象、类与对象、JavaJava语言类的特性语言类的特性类的继承、抽象类和接口类的继承、抽象类和接口异常处理、多线程、GUI、事件Appl

4、et Servlet Network.3.程序设计语言简介(1)3.程序设计语言简介(2)PositionPositionProgramming Programming LanguageLanguageRatingsRatings2121Assembly0.590%2222MATLAB0.543%2323F#0.512%2424SAS0.504%2525COBOL0.471%2626Logo0.448%2727Scheme0.400%2828R0.385%2929C shell0.383%3030Fortran0.372%3131ActionScript0.370%3232Go0.358%33

5、33Scratch0.327%3434NXT-G0.327%3535Haskell0.325%PositionPositionProgramming Programming LanguageLanguageRatingsRatings3636ABAP0.320%3737Forth0.3173838Erlang0.315%3939Visual Basic.NET0.309%4040Prolog0.282%4141APL0.272%4242PL/I0.268%4343ML0.263%4444Smalltalk0.255%4545MOO0.236%4646Alice0.235%4747Ladder

6、Logic0.223%4848Q0.216%4949Awk0.212%5050Scala0.209%3.程序设计语言简介(3)3.程序设计语言简介(4)3.程序设计语言简介(5)程序设计语言programming languageu书写计算机程序的语言u记号+规则记号串的总体语言u记号串就是程序u程序设计语言三因素语法、语义和语用l语法表示程序的结构或形式(组合规律)l语义表示程序的含义l语用表示程序与使用者的关系3.程序设计语言简介(6)解释型l脚本(Java Script HTML Perl )编译型uC uC+Java C#3.程序设计语言简介(7)程序 源代码编辑(edit)调试(de

7、bug)运行(run)纯命令行方式集成开发环境.Net走走进JavaJava是什么JAVA是面向对象的程序设计语言Java是Internet上的世界语Java是最佳的网络应用开发语言 JAVA是环境JAVA是产业产业4 Java语言简介(1)Java语言出现的背景发展初期 19901991 年Sun Microsystem公司的James Gosling、Bill Joe等人开发了面向信息家电(消费电子)的编程语言Oak有心栽花花不开!有心栽花花不开!Gosling用了一个新语言Oak来解决这个问题。Oak保留了熟悉的C+语法“Green Team”的“Green Project”4 Java

8、语言简介(2)Java语言出现的背景发展中期 1994Oak-Java:互联网(信息高速公路信息高速公路)给Java带来新的生机无心插柳柳成荫无心插柳柳成荫!James Gosling The father of The father of JAVAJAVAIBMIBMIBMIBMSUNSUNSUNSUNOracleOracleOracleOracleGoogleGoogleGoogleGoogleLiquid RoboticsLiquid RoboticsLiquid RoboticsLiquid Robotics当Oak成熟时,因特网也正处于戏剧性增长的时期,Sun公司的开发小组认识到Oa

9、k非常适合Internet编程。1994年,完成了一个用Oak编写的早期Web查看器,称为WebRunner,后被改名为HotJavaJava让人联想到印度尼西亚有个重要的盛产咖啡的岛屿,开发人员为这种新的语言起名为Java,其寓意是为世人端上一杯热咖啡。1995年,Oak更名为Java,并在SunWorld 95中发布JAVAJAVA历史历史JAVAJAVA程序设计程序设计Birthday:May 23 1995Birthday:May 23 19951990 Sun Microsystem Green James Gosling1994 Oak门前橡树失败Netscape HTMLWebR

10、unner HotjavaJAVAInternetOak已被注册 爪哇 咖啡1996.05 JAVA 1.11998 JAVA 1.2 JAVA 1.4.2 JAVA 1.5FreeJDK 1.2 JAVA Platform 2JAVAJAVA程序设计程序设计JAVAJAVA特点特点JAVA白皮书简单的简单的SimpleSimple C+-C+-面向对象的面向对象的Object OrientedObject Oriented 有生产力的有生产力的90%90%面向对象面向对象 健壮的健壮的RobustRobust 强类型强类型 内存管理内存管理 异常处理异常处理 安全的安全的Secure Sec

11、ure 避免非法内存操作避免非法内存操作 Java安全体系架构安全体系架构 分布的分布的DistributedDistributed Internet编程可移植的可移植的Portable Portable JVM Unique Data TypeJVM Unique Data Type 结构中立的结构中立的Architecture-neutralArchitecture-neutral 字节码与计算机结构无关字节码与计算机结构无关 解释型的解释型的Interpreted Interpreted 半编译半解释半编译半解释 .class.class中间代码中间代码 JavaJava虚拟机虚拟机(J

12、ava Virtual Machine)(Java Virtual Machine)JAVAJAVA程序设计程序设计高效率的高效率的High-performance High-performance 中偏下中偏下 多线程的多线程的Multi-threaded Multi-threaded ThreadedThreaded类类 动态的动态的DynamicDynamicJIT(Just-In-Time)JIT(Just-In-Time)及时编译器及时编译器JAVAJAVA特点特点编译型源程序型源程序字字节码程序程序Java源程序源程序可可执行程序行程序EXE裸裸机机操操作作系系统解解释器器编译连接

13、接编译运行运行解解释运行运行.java.classJVMJVMJava语言的特点 在Java语言白皮书中,Java被描述为“是一种简单、面向对象、分布式、解释、健壮、安全、结构中立、可移植、高效能、多线程、动态的语言。A simple,object-oriented,network-savvy,interpreted,robust,secure,architecture neutral,portable,high-performance,multithreaded,dynamic language。James Gosling,Henry McGilton.The Java Language E

14、nvironment,A White Paper.Java 是简单的Java的风格类似于C+;从某种意义上讲,Java语言本身很大程度上模仿了C及C+,因此C和C+程序员可以很快掌握Java编程技术Java摒弃了C+中很少使用、难理解、容易引发程序错误的地方,如指针等。Java采用接口(interface)取代了C+的多重继承Java采用自动内存分配和回收Java很“小”。40KB的内核,175KB的基本库Java 是面向对象的Java语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的接口模型对象中封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏而类则提供了一类对象的原型,并

15、且通过继承机制,子类可以使用父类所提供的方法,实现了代码的复用Java是真正的面向对象语言封装性(Encapsulation)继承性(Inheritance)多态性(Polymorphism)Java 是分布式的分布式计算涉及到几台计算机在网络上一起工作由于Java一开始就设计了网络工作的能力Servlet JSP Struts MVC Spring Java 是解释执行的Java的源程序首先由编译器(javac.exe)编译成字节码再由解释器(java.exe)解释执行Java解释器能直接在任何机器上执行Java字节码Java源代码Java编译器Java字节码Java解释器CPUJava 是

16、健壮的程序的健壮性即是程序的可靠性Java非常重视及早检查错误,Java编译器可以查处许多其它编译器运行时才能发现的错误Java不支持指针,从而避免了对内存直接操作容易造成的数据破坏Java具有实时异常处理的功能,Java强制程序员编写异常处理的代码,能够捕获并响应意外情况Java 是安全的作为Internet程序设计语言,Java用于网络和分布式环境Java执行多层安全机制用来保护系统不受恶意程序攻击和破坏不允许Applet读写计算机的文件系统,防止对文件破坏、传播病毒等不允许Applet运行浏览器所在计算机上的任何程序除了存储Applet的服务器之外,不允许Applet建立用户计算机与任何

17、其他计算机相连Java 是安全的编译编译,没有绝对地址没有绝对地址调入包含调入包含,继承所用继承所用道的所有类道的所有类,内存分内存分配确定配确定,编程真正可编程真正可执行的机器码执行的机器码 Java源程序源程序(.java文件文件)Java编译器编译器Java Bytecode(.class文件文件)系统执行平台系统执行平台Bytecode 解释器解释器Bytecode 载入器载入器字节码校验器字节码校验器不存在伪造的指针不存在伪造的指针不违反访问权限不违反访问权限不非法访问对象不非法访问对象不导致操作栈溢出不导致操作栈溢出 Java 是体系结构中立的Write once,Run Anyw

18、here即Java的平台无关性 Java 程序被编译成一种与体系结构无关的字节代码只要安装了Java运行时系统Java程序就可以在任意的处理器上运行,Java解释器得到字节码后,对他进行转换使他能够在不同的平台上运行Java在操作系统级得到统一支持Java 是体系结构中立的(续)Windows下 C 语言编程过程Java 语言编程过程C 源程序(扩展名.c)Java 源程序(扩展名.java)Windows可执行文件(扩展名.exe)Windows操作系统C编译程序执行Java字节码文件(扩展名.class)Java编译程序Windows下Java字节码解释程序Linux下Java字节码解释程

19、序能直接解释Java字节码的CPUJava虚拟机(JVM)执行执行执行Windows操作系统Linux操作系统Java 是可移植的基本数据类型的大小和算法作统一规定例如与C不同,int型大小固定32位定义了可移植性接口例如抽象Windows类系统本身是可移植的Java系统可以放在任何环境中Java 是高性能的Java作为一种解释型语言,其速度不会超过编译语言和其他解释执行的语言如BASIC等不同,Java字节码的设计使之能很容易地直接转换成对应于特定CPU的机器码,从而具有较高的性能Java 是多线程的多线程概念很象多任务,Java可以把一个程序分成多个任务以便使任务易于完成和最大限度利用CP

20、U资源多线程机制使应用程序能够并行执行,而且同步机制保证了对共享数据的正确操作通过使用多线程,程序设计者可以分别用不同的线程完成特定的行为,而不需要采用全局的事件循环机制,这样就很容易地实现网络上的实时交互行为Java 是动态的Java自身的设计使她适合于一个不断发展的环境在Java类库中可以自由的加入新的方法和实例变量而不会影响用户程序的执行Java通过接口来支持多重继承使之比严格的类继承具有更灵活的方式和扩展性Java版本High-EndHigh-EndServerServerJava TechnologyJava TechnologyEnabled DesktopEnabled Desk

21、topWorkgroupWorkgroupServerServerJava TechnologyJava TechnologyEnabled DevicesEnabled DevicesJAVAJAVA程序设计程序设计JAVAJAVA平台平台Java PlatformJDK Java Develop Kit以前叫法J2SDK Java 2 Software Develop Kit现在叫法JRE Java Runtime Environment 包含在J2SDK中J2SE:Java Platform 2 Standard Edition 标准版J2EE:Java Platform 2 Enter

22、prise Edition 企业版J2ME:Java Platform 2 Micro Edition 微型版下载安装J2SDK http:/ path=%PATH%;D:SET path=%PATH%;D:Javajdk1.6binJavajdk1.6binSET classpath=D:SET classpath=D:Javajre1.6librt.jarJavajre1.6librt.jar;自编类自编类Java技术的架构J2EE(Java 2 Platform Enterprise Edition)企业版(J2EE)是为面向以企业为环境而开发应用程序的解决方案J2SE(Java 2 P

23、latform Stand Edition)标准版(J2SE)为桌面开发和低端商务应用提供了可行的解决方案J2ME(Java 2 Platform Micro Edition)小型版(J2ME)是致力于消费产品和嵌入式设备的最佳解决方案源程序程序名.java Java编译器字节码文件与平台无与平台无关关.classJava Applet由Web浏览器执行由java解释器执行Java ApplicationJAVAJAVA程序设计程序设计JAVAJAVA开发过程开发过程Java平台的工作原理Java Java 程序运行一般要经过程序运行一般要经过5 5个阶段个阶段编辑(编辑(EditEdit)程

24、序员编写程序,并保存到磁盘上程序员编写程序,并保存到磁盘上编译(编译(CompileCompile)编译器编译程序生成字节码(编译器编译程序生成字节码(bytecodesbytecodes)加载(加载(LoadLoad)类加载器(类加载器(Class loaderClass loader)将字节码加载进内存)将字节码加载进内存检测、评估(检测、评估(VerifyVerify)检测字节码(检测字节码(bytecodesbytecodes)确保它不违反安全规则)确保它不违反安全规则执行(执行(ExecuteExecute)解释器(解释器(InterpreterInterpreter)将字节码转换为

25、机器语言)将字节码转换为机器语言JAVAJAVA程序设计程序设计JAVAJAVA开发工具开发工具Java IDEBorland JBuilderJ2SDKNetBeans Sun Java StudioIBM Visual Age for Java Eclipse Eclipse Microsoft VJ+Oracle JDeveloperBEA WebLogic WorkshopJCreatorJCreatorJ2SDKJ2SDK是是JavaJava语言最基本的开发工具。语言最基本的开发工具。javacjavac(JavaJava编译器)编译器)javajava(JavaJava解释器)解释

26、器)javapjavap(JavaJava反汇编器)反汇编器)javadocjavadoc(JavaJava文档管理器)文档管理器)appletviewerappletviewer(Java AppletJava Applet浏览器)浏览器)JAVAJAVA程序设计程序设计Java ApplicationJava Applicationpublic class HelloWorld public static void main(String args)System.out.println(“HelloWorld”);定义类定义类类修饰类修饰(公共类公共类)类名至多一个public类,若有则文

27、件名必须与其类名一致;若没有文件名与某个类名一致即可。扩展名为.java。必须是public类含有?必须有一个类含有程序入口点 只能一个 主类良好的编程习惯良好的编程习惯缩进对齐缩进对齐遵循命名规则遵循命名规则添加注释添加注释程序可读性程序可读性JAVAJAVA程序设计程序设计Java AppletJava Applet1.编写源文件编写源文件import java.applet.*;import java.awt.*;public class SA1 extends Applet public void paint(Graphics g)g.setColor(Color.red);g.dra

28、wString(“Java Good!”,50,60);2.编译编译 javac SA1.java3.运行运行 由浏览器运行由浏览器运行保存为sa1.htm不再需要main方法,但必须有且只有一个扩展的Applet类,称为主类。主类必须是public。文件名必须与主类相同。引用包引用包浏览sa1.htmJava应用程序(Application)举例Application程序:HelloWorldApp.javapublic classclass HelloWorldApp /an Apppublic static void main(String args)System.out.println

29、(“Hello World!”);HelloWorldApp应用程序分析(1)类定义Java程序的基本组成部分是类(class),如本例中的HelloWorldApp类:HelloWorldApp应用程序分析(2)public classclass HelloWorldApp HelloWorldApp应用程序分析(3)main()方法Java Application程序的入口是main()方法。它有固定的书写格式:public static void main(String args)注意:并不是每个类都必须有main方法,往往是大多数类没有main 方法,而由有main 方法的类来调用。H

30、elloWorldApp应用程序分析(4)public classclass HelloWorldApp public static void main(String args)HelloWorldApp应用程序分析(5)程序内容 由方法体实现程序要完成的功能,方法体由一条条语句组成,本例中只有一条语句:System.out.println(“Hello World!”);HelloWorldApp应用程序分析(6)注释 与C+相同,一行中/后的内容为注释,/*和*/中的内容也是注释,例如:public classclass HelloWorldApp/公共类 public static vo

31、id main(String args)/*这是主方法*/编译:Javac HelloWorldApp.java得到HelloWorldApp.class文件运行:Java HelloWorldAppApplication程序的运行1、进入HelloWorldApp.java 所在目录Application程序的运行(演示)2、编译HelloWorldApp.java输入:Javac HelloWorldApp.java Javac HelloWorldApp.java 进行编译3、执行HelloWorldApp.class字节码文件输入:Java HelloWorldApp Java Hel

32、loWorldApp 进行解释执行Applet程序HelloWorldApplet.javaimport java.awt.Graphics;import java.applet.Applet;public class HelloWorldApplet extends Appletextends Applet public void paint(Graphics g)g.drawString(“Hello World!”,20,20);1-5 Java小应用程序(Applet)举例HelloWorldApp应用程序分析(1)类定义所有的Java Applet也都是类(class),而且必须是A

33、pplet类的子类;用关键字extends来实现继承:public class HelloWorldApplet extends Applet 类库支持 程序中用到了类库中的一些方法,因此必须在程序中进行声明。在Java中,用import来输入包或类,本例中便输入了java.awt.Graphics和java.applet.Applet类:HelloWorldApp应用程序分析(2)import java.awt.Graphics;import java.applet.Applet;编译:JavacJavac HelloWorldApplet.java得到HelloWorldApplet.cl

34、ass文件编写HTML文件Hello.html,把Applet嵌入其中运行:AppletviewerAppletviewer Hello.html或在浏览器中运行Applet程序运行 An Applet An AppletJava 区分大小写类定义不能嵌套一个程序中可以有一个或多个类,但其中只能有一个主类源程序编写完毕,应该用主类名作为文件名,再加后缀.java 存储成磁盘文件编写Java程序需要注意的几点本讲小结计算模式、编程语言计算模式、编程语言JavaJava历史历史JavaJava特点特点JavaJava虚拟机和虚拟机和JavaJava平台平台JavaJava程序类型程序类型JavaJava简单小程序入门简单小程序入门下次课见!下次课见!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁