Java程序设计技术

上传人:沈*** 文档编号:169534072 上传时间:2022-11-15 格式:PPT 页数:36 大小:1.23MB
收藏 版权申诉 举报 下载
Java程序设计技术_第1页
第1页 / 共36页
Java程序设计技术_第2页
第2页 / 共36页
Java程序设计技术_第3页
第3页 / 共36页
资源描述:

《Java程序设计技术》由会员分享,可在线阅读,更多相关《Java程序设计技术(36页珍藏版)》请在装配图网上搜索。

1、第一章第一章 JavaJava程序设计技术程序设计技术1面向对象的基本概念面向对象的基本概念 对象对象是用来描是用来描述客观事物述客观事物的一个实体的一个实体张三李四抽象抽象类类是具有相同是具有相同属性和服务属性和服务的一组对象的一组对象的概括的概括属性服务性别,年龄说话,行走具体化具体化继承继承新类新类人人说话说话,行走行走性别性别,年龄年龄大学生大学生性别性别,年龄年龄,专业说话说话,行走行走,学习消息消息2概述 什么是什么是JavaJava语言语言一个简单的一个简单的JavaJava程序程序程序的编译和运行程序的编译和运行常见错误常见错误使用使用JavaJava核心核心APIAPI文档文

2、档3什么是Java语言前身是1991年由美国Sun公司的Jame Gosling、Bill Joe等人开发的Oak语言Java是一种功能强大的程序设计语言,既是开发环境,又是应用环境,它代表一种新的计算模式4什么是Java语言面向对象的程序设计语言与机器无关的二进制格式的类文件Java虚拟机(用来执行类文件)完整的软件程序包(跨平台的API和库)Java语言5Java语言的特点语法简单,功能强大 类似于C+,去掉了C+中不常用且容易出错的地方 完全面向对象分布式与安全性 强调网络特性,内置TCP/IP、HTTP、FTP协议类库 三级代码安全检查机制与平台无关 一次编写,到处运行 6Java语言

3、的特点解释编译两种运行方式 just-in-time编译器,简称JIT编译器多线程动态执行 执行代码是在运行时动态载入的丰富的API文档和类库7Java的三层架构主机架构 集中处理,集中管理,各用户分享使用计算机资源。这种模式下,可移植性差,扩充系统费用较大个人计算机(PC)本地处理,本地管理,各用户独占系统资源,管理维护费用直线上升8Java的三层架构Java计算模式 结合了上述两种模式的优势,它可用于客户/服务器架构,将公共使用的程序放到应用程序服务器上,用户使用时从服务器上下载到客户端,各用户独立使用设备和程序。当程序更新时,只需在服务器上进行。不必在客户端做任何维护工作,达到“零管理”

4、的理想目标。9Java语言的目标创建一种面向对象的语言提供一种解释环境 这可以缩短系统开发的编译连接装载测试周期,提高开发速度。去掉了影响代码健壮性的功能 如指针结构及程序员负责的内存分配与释放。10Java语言的目标为程序运行多线程提供了方法允许程序下载代码模块 在程序运行生命期内可以动态修改检查下载的代码模块,提供了保证安全的一种手段11Java虚拟机JavaJava虚拟机(虚拟机(Java virtual machineJava virtual machine,JVMJVM)是运行是运行JavaJava程序必不可少的机制。编译后程序必不可少的机制。编译后的的JavaJava程序指令并不直

5、接在硬件系统的程序指令并不直接在硬件系统的CPUCPU上执行,而是由上执行,而是由JVMJVM执行。执行。JVMJVM是编译后的是编译后的Java Java 程序和硬件系统之间的接口,程序员程序和硬件系统之间的接口,程序员可以把可以把JVMJVM看作一个虚拟的处理器。它不仅看作一个虚拟的处理器。它不仅解释执行编译后的解释执行编译后的JavaJava指令,而且还进行指令,而且还进行安全检查。它是安全检查。它是JavaJava程序能在多平台间进程序能在多平台间进行无缝移植的可靠保证,同时也是行无缝移植的可靠保证,同时也是JavaJava程程序的安全检验引擎。序的安全检验引擎。12JavaJava虚

6、拟机虚拟机 JVM的定义 JVM是在一台真正的机器上用软件方式实现的一台假想机 JVM的具体实现 指令集(等价于CPU的指令集)、寄存器组、类文件格式、栈、垃圾收集堆、内存区 JVM代码格式为压缩的字节码,效率较高 JVM的实现叫做Java运行时系统或运行时环境(Runtime Environment),简称为运行时 13JavaJava虚拟机的性能虚拟机的性能 Java解释器经过优化,字节码的执行速度已有很大提高在字节码执行之前先经过JIT编译器进行编译,生成针对具体平台的本机执行代码。执行效率可比解释执行的效率大幅度提高。并仍不失跨平台的特点14JavaJava虚拟机的性能虚拟机的性能Ho

7、tspot技术 是Sun公司推出,为根本上解决Java程序的效率问题。它提供对代码的运行时选择。在程序执行时,对每个字节码指令进行分析,根据它的执行次数,动态决定它的执行方式15垃圾收集程序员不必亲自释放内存 后台系统级线程,记录每次内存分配的情况,并统计每个内存指针的引用次数。垃圾收集自动进行,无需用户释放内存,消除了内存漏洞16代码安全语言定义public protectedprivate final取消指针取消指针自动回收垃圾自动回收垃圾bytecode检查限定对象的存取权限限定对象的存取权限系统堆栈溢出系统堆栈溢出 参数类型一致参数类型一致程序执行系统程序执行系统WWW浏览器浏览器限制

8、限制Java小应用程序的不正当使用小应用程序的不正当使用Java源程序源程序(.java文件文件)Java编译器编译器Java bytecode(.class文件文件)bytecode 下载器下载器bytecode 解释器解释器系统执行平台系统执行平台17代码安全对于Applet,因其是从其他机器上通过网络下载到本机执行的,程序中可能隐藏某些非法操作,所以在Applet运行之前,系统要对之进行严格的三级代码安全检查,即验证、分析和跟踪监测。18代码安全JDK1.0版本中,安全模型是所谓的“沙箱”模型JDK1.1版本中,使用“签名Applet”Java 2允许用户自己设定相关的安全级别19代码安

9、全Java解释器 Java解释器只能执行为JVM编译的代码 Java解释器有三项主要工作:(1)下载代码由类下载器完成(2)校验代码由字节码校验器完成(3)运行代码由运行时解释器完成 20代码安全类下载器 从Internet网上下载类文件 类下载器把本地文件系统的类名空间和网络源输入的类名空间区分开来,以增加安全性21代码安全字节码校验器 检查代码的安全性,代码段的格式,并使用规则来检查非法代码段 主要检查以下几项内容:(1)类遵从JVM的类文件格式。(2)不出现访问违例情况。(3)代码不会引起运算栈溢出。(4)所有运算代码的参数类型总是正确的。(5)不会发生非法数据转换,如把整数转换为指针。

10、(6)对象域访问是合法的。22开发环境开发环境开发环境的安装 安装JDK 设置环境变量PATH=C:Program FilesJavajdk1.5.0bin;CLASSPATH=.;c:Program FilesJava jdk1.5.0LIB;c:Program FilesJava jdk1.5.0demo 23JDKJDK目录结构目录结构C:Jdk1.5.0binlibjavacjavaappletviewer用户类文件所在目录用户类文件所在目录c:javaexamplesapplications当前目录当前目录jredemo24Java程序Java应用程序(Java Applicatio

11、n)Java小应用程序(Java Applet)25JavaJava应用程序例应用程序例public class HelloWorldApppublic static void main(String args)System.out.println(Hello World!);编译命令编译命令运行命令运行命令运行结果运行结果26程序的编译和运行编译编译源文件是文本形式的文件,经过编译,生成二进制格式的字节码类文件Java编译器:“javac”$javac HelloWorldApp.java27运行Java的解释器是“java.exe”java和javac一般放在$JAVA_HOME/bin目

12、录中,系统配置文件的PATH变量中应包含该目录$java HelloWorldApp28常见错误编译时错误编译时错误 javac:Command not found包含javac编译器的路径变量设置不正确。HelloWorldApp.java:3:Method printl(java.lang.String)not found in class java.io.PrintStream.System.out.printl(“Hello World!”);方法名printl不正确,HelloWorldApp.java:1:Public class HelloWorldapp must bedefi

13、ned in a file called HelloWorldapp.java.public class HelloWorldapp 文件定义的公有类HelloWorldapp的名字和文件名不匹配。29常见错误运行时错误 Cant find class HelloWorldApp 系统找不到名为HelloWorldApp的类文件。In class HelloWorldApp:main must be public and static main()方法的左侧缺少static或public 文件中含有的类个数错误 在一个源文件中只能定义一个公有类30常见错误层次错误 解释:一个.java源文件可

14、以含有三个“顶层”元素,这三个元素必须依次是:(1)一个包说明,即package语句,可选(2)任意多个引入语句,即import语句(3)类和接口说明31常见错误整体来看,Java程序的结构如下:package语句:零个或1个,必须放在文件开始;import语句:零个或多个,必须放在所有类定义之前;公有的(public)类定义:零个或一个;类定义:零个或多个;接口定义:零个或多个;源文件命名时,若文件中含有public类,源文件必须与该类名字一致,注意区分大小写。32常见错误正确的语句序列:错误的语句顺序:package Transportation;import java.awt.Graphics;import java.applet.Applet;import java.awt.Graphics;import java.applet.Applet;package Transportation;该例中在包说明语句之前含有其他语句33常见错误错误的语句顺序:package Transportation;package House;import java.applet.Applet;该例中含有两个包说明语句34使用Java API文档从SUN公司的网站上下载文档文件,假定文件存放在jdk目录下,则在浏览器地址框中输入jdkdocsindex.html即可以查看JDK文档。3536

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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