java面向对象程序设计第一章.ppt

上传人:tia****nde 文档编号:11496829 上传时间:2020-04-25 格式:PPT 页数:38 大小:931KB
返回 下载 相关 举报
java面向对象程序设计第一章.ppt_第1页
第1页 / 共38页
java面向对象程序设计第一章.ppt_第2页
第2页 / 共38页
java面向对象程序设计第一章.ppt_第3页
第3页 / 共38页
点击查看更多>>
资源描述
Java初级,第一章初次接触JAVA,主要内容,Java语言顺应网络时代的编程语言Java语言的特点Java程序的编译环境和执行环境第一个Java程序HelloWorldJava程序的分类Java平台,Java语言网络时代的编程语言,网络时代编程问题,网络带给我们精彩的同时,也为编程带来了困难,最为突出的表现为环境复杂,问题的解决方法,为了实现一个程序能被多个操作系统所认识,必须像不同语言国家的人交流那样,借助“翻译”的作用,C或C+:只有将编译后的文件连接成为.exe,才能在Windows操作系统上运行。,C+的解决策略,Java的解决策略:一次编译,处处执行,Java语言的特点,Asimple,object-oriented,distributed,interpreted,robust,secure,architecture-neutral,portable,high-performance,multi-threaded,anddynamiclanguage。即:Java是一种具有“简单、面向对象、分布式、解释型、健壮、安全、与体系结构无关、可移植、高性能、多线程和动态执行”等特性的语言。,Sun公司对Java的定义,简单性:Java语言简单而高效,基本Java系统(编译器和解释器)所占空间不到250KB。Java的风格类似于C+,因而C+程序员初次接触Java语言,就会感到很熟悉。从某种意义上讲,Java语言是C及C+语言的一个变种,因此,C+程序员可以很快地掌握Java编程技术。Java摒弃了C+中容易引发程序错误的一些特性,如指针、结构、枚举以及内存管理等。Java提供了丰富的类库,可以帮助我们很方便的开发Java程序。,面向对象:Java语言是纯面向对象的。平台无关性与可移植性:Java程序不经修改或少量修改就可在不同操作系统上运行。Java采用了以下机制:Java既是编译型又是解释型的语言。编译成字节码文件,由Java虚拟机在不同操作系统上解释执行。Java采用的是基于国际标准(IEEE标准)的数据类型。此外,Java编译器是用Java语言本身所编写的,整个运行时环境体现了一个定义良好的可移植性接口。Java遵循POSIX标准,这也使Java具有良好可移植性的重要原因。,稳定性和安全性Java首先摒弃了C+中的不安全的因素指针数据类型,避免恶意使用者利用指针去改变不属于自己程序的内存空间。Java致力于检查程序在编译和运行时的错误。Java也是一种强类型的语言,其类型检查比C+还要严格。类型检查帮助我们检查出许多开发早期出现的错误。提供自动内存管理机制,利用系统的空闲时间来执行诸如必要的垃圾清除等操作。此外,Java的运行环境还提供字节码校验器、运行时内存布局和类装载器(ClassLoader)、文件访问限制等安全措施,保证字节码本身的安全和访问系统资源的安全。,多线程和动态多线程使应用程序可以同时进行不同的操作,处理不同的事件。在多线程机制中,不同的线程处理不同的任务,互不干涉,不会由于某一任务处于等待状态而影响了其它任务的执行,这样就可以容易的实现网络上的实时交互操作。java在执行过程中,可以动态的加载各种类库,这一特点使之非常适合于网络运行,同时也非常有利于软件的开发,即使是更新类库也不必重新编译使用这一类库的应用程序。,高性能Java语言在具有可移植性、稳定性和安全性的同时,也保持了较高的性能。通常,解释型语言的执行效率一般也要低于直接执行源码的速度。但Java所采用的高效的字节码(java字节码格式的设计就是针对机器码的转换,实际转换时相当简便)与多线程措施却很好地弥补了这些性能差距。,分布式,分布概念包括数据分布和操作分布两个方面数据分布是指数据可以分散存放于网络上的不同主机中,以解决海量数据的存储问题;Java提供了一个URL对象,利用此对象我们可以打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。操作分布则指把计算分散到不同的主机上进行处理。Java的客户机服务器模式可以把计算从服务器分散到客户端,从而提高整个系统的执行效率,避免瓶颈制约,增加动态可扩充性。,Java程序的编译环境和执行环境,一种是编译环境,编译环境的建立需要到Sun的官方网站上下载JDK(JavaDevelopmentKit),网址为:。一种是运行环境。运行环境需要到Sun的官方网站上下载JRE(JavaRuntimeEnvironment)注意:如果是在Windows上开发软件,需要选择Windows类型的JDK,Unix和Linux同理;JDK的版本不断升级,如JDK1.0、JDK1.1、JDK1.2、JDK1.3、JDK1.4、JDK1.5,JDK1.2以后的版本,通称为Java2,JDK后续版本不完全确保与前一个版本兼容,作为初学者,可下载当前最新的版本。,Java源代码从编译到解释执行涉及两种环境,适用不同操作系统的JDK版本,运行环境的建立,运行环境负责装载用户自定义的类(分为从本地装载和从网络装载两种)和JavaAPI类,最重要的是,含有JVM(JavaVirtualMachine),它是一个平台软件,负责将字节码解释成机器码并提交操作系统执行。如果在一台机器上安装了JDK,则自动也安装了对应版本的JRE。如果希望JRE是另一种版本,则需要在【添加修改程序】中卸载旧版本的JRE,再安装新版本的JRE。,第一个Java程序HelloWorld,步骤,分为五个步骤:进行JDK的安装,配置环境变量,编写程序,编译和执行程序。JDK的安装:执行下载的文件【jdk-1_5_0_04-windows-i586-p.exe】,安装目录可定为【d:jdk1.5.0】。【bin】子目录下,存在jdk众多的工具集。,环境配置:桌面上选择【我的电脑】(右键)【属性】【高级】【环境变量】【系统变量】,选择【path】,点【编辑】,在【变量值】栏目的最前面,输入“d:jdk1.5.0bin;”。编写程序:在没有安装集成开发工具的前提下,可以选择一些文本编辑器书写Java代码,如“EditPlus2”、“UltraEdit”、“JCreator”等,当前也可以在Windows操作系统中的“记事本”编写程序。,书写代码,将文件保存在D:myJavaHelloWorld.javapublicclassHelloWorldpublicstaticvoidmain(Stringargs)System.out.println(HelloWorld!);编译:选择【开始】【运行】,进入Dos界面如下图所示,键入javacHelloWorld.java执行:编译通过后,输入javaHelloWorld,程序说明,类名和文件名应该同名,同为HelloWorld。main方法前的修饰符必须为publicstaticvoid。System.out.println()用于输出,其参数可以为字符串,也可为数。方法println的作用是换行,如果不换行,则调用print方法。,可能遇到的问题(一),问题编译出现“javac不是内部命令,也不是可运行程序”的问题。解决方案path路径没有设对,在dos窗口下,输入path,看是否包括d:jdk1.5.0,没有或设置不正确,重新设置path环境变量。,可能遇到的问题(二),首先检查是否将HelloWorld文件名写对否,包括大小写;其次,编译时带“.java”后缀名,执行时不带“.class”后缀;javac中指出java源文件时能带windows的路径,但执行时用java不可以,如:javad:testHelloWorld则不行,因为java将“d:testHelloWorld”当成一个字节码文件了;环境变量中设置了classpath,由于当前目录没有包含其中,所以java执行时,对当前目录的HelloWorld.class视而不见,解决方法为去掉classpath环境变量,或在其中加入当前目录即可。,问题:编译和执行时出现NoClassDefFoundError的错误。解决方案:(可能性有四个),可能遇到的问题(三),问题编译时出现error:cannotread:HelloWorld.java解决方案在windows设置成不显示后缀名的形式,然而在起文件名时,给文件名起了HelloWorld.java,造成实际文件名为HelloWorld.java.java。在【工具】【文件夹选项】【查看】中不选择“隐藏已只文件类型的扩展名”,可见到带后缀的所有文件名。,可能遇到的问题(四),问题执行出现“Error:couldnotfoundlibi386jvm.cfg”问题解决方案主要是安装集成环境以及Oracle数据库后,这些产品也安装了不同版本jdk造成的(通过javaversion看当前是哪个版本),解决方法是将d:jdk1.5.0放置在path路径的最前端。注:若在一台机器上安装多个版本的JDK,如果需要使用其中特定某一版本,需要通过path设置来决定启用哪个版本。,Java程序的分类,从大类上分为Application和Applet。前面的HelloWorld就是Application程序,它们之间的主要区别如下:,JAVA程序的分类,将HelloWorld改写成Applet程序,importjava.awt.*;importjava.applet.*;publicclassHelloWorldAppletextendsAppletpublicvoidinit()publicvoidpaint(Graphicsg)g.drawString(HelloWorld!,25,25);编辑html页面,和HelloWorldApplet.class在同一目录,取名为c1_2.html,在其中编写代码:,执行结果:,程序说明,程序中的import,相当于C语言中的include,是使用已经编译好的类的语法(包括API中的类),在上面的程序当中,如果没有importjava.awt.*;则Graphics类不可使用;没有importjava.applet.*;则Applet类不可使用。Graphics类用于绘图。paint方法(名字不可更改)用于界面刷新,问题浏览器applet程序不显示输出结果问题的解决html中类名书写是否正确;是否注意大小写;标识语句之间是否有空格;在浏览器中【工具】-【Internet选项】【高级】中的“使用Java2用于Applet”。paint方法名是否书写正确。,执行中可能遇到的问题,为什么Applet需要嵌入浏览器执行,这是由Java语言是网络时代编程语言的特点决定的。为了屏蔽众多浏览器下运行的语法差异,Applet应运而生。虽然Applet不能单独运行,但是所有的浏览器都支持嵌入Applet小程序,在编写HelloWorld时候,程序编写者不用关心这个Applet将来运行在哪个浏览器中,他只关心在浏览器中需要做什么工作,而且用统一的语法去编写程序。,Applet在浏览器中如何工作的?,Applet是Java程序,需要JVM来解释执行,现在所有的浏览器都嵌有JVM,当浏览器中载入Applet程序时,首先调用Applet的init()方法完成初始化工作(只调用一次),最后调用paint()方法进行图形的绘制。当浏览器被别的界面覆盖后重新显现,当浏览器移动,当浏览器尺寸改变时,此方法被重新调用。从而可见,Applet不像Application程序那样,有main的程序入口,因此不能单独运行,需要借助浏览器来执行。,Java平台,Java不仅是编程语言,还是一个开发平台。目前Sun公司把java平台划分成J2EE、J2SE、J2ME三个平台,针对不同的市场目标和设备进行定位:,J2EE是Java2EnterpriseEdition,主要是为企业计算提供一个应用服务器的运行和开发平台。J2SE是Java2StandardEdition,主要目的是为台式机和工作站提供一个开发和运行的平台。我们在学习java的过程中,主要是采用J2SE来进行开发。J2ME是Java2MicroEdition,主要是面向电子产品提供一个java运行平台,使java程序能够在手机、机顶盒、PDA等产品上运行。,三种版本之间的关系,此部分为微型版用于家电和手机方面独特部分,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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