




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计,Java语言概述,2,教学目的,Java语言通过本门课程的学习可以使学生掌握Java语言的基本语法和编程规范;尤其是掌握用Java语言进行网络编程的方法和技巧。程序设计方法Java语言是一种面向对象的语言,通过学习使学生掌握用面向对象进行编程的思想和实践。培养实际开发能力,使学生成为一名合格的Java程序员。,Java语言概述,3,课程信息,本课程以Java语言为素材,讲授面向对象程序设计的方法与思路。课程主要包括以下内容:Java语言基础知识。面向对象程序设计的基本概念与方法。Java语言面向对象程序设计基础。图形用户界面设计。Java编程中的几个专题(异常处理、输入输出、多线程、多媒体、网络编程等)。,Java语言概述,4,课程总体安排,授课学时44学时上机安排22学时考核方式平时作业(占30%)+考试成绩(占70%)。作业提交方式通过电子邮件,Java语言概述,5,教学用书,Java程序设计教程潘浩,北京邮电大学出版社,2008.10Java程序设计上机指导与习题选解潘浩,北京邮电大学出版社,2008.10,Java语言与面向对象概述,Java语言概述,7,主要内容,Java的发展史Java虚拟机Java2平台的版本JDK的安装Java程序集成开发工具面向对象开发概述,Java语言概述,8,Java是什么,Java是面向对象的程序设计语言Java是Internet上的世界语。Java是最佳的网络应用开发语言。Java是环境Java是产业,Java已经逐步从一种单纯的计算机高级编程语言发展为一种重要的Internet平台,并进而引发、带动了Java产业的发展和壮大,成为当今计算机业界不可忽视的力量和重要的发展潮流与方向!,Java语言概述,9,Java的历史,前身:Oak(JamesGosling1990)Java大事记90年,Sun公司开始Green工程93年,WWW席卷全球94年,开始定位于Internet95.1,Java命名HotJava,第一个支持Java的浏览器Netscape2.0,Java语言概述,10,Java的发展,1995.5.23Java诞生(Java1.0.2API)1997.2.18JDK1.1(java1.1API)VJ+6.0、JBuilder.支持1998.12JDK1.2(Java2SDKv1.2StandardEdition)网址(查询新动向),Java语言概述,11,Java语言的特点,简单性面向对象封装性多态性继承安全性和可靠性平台无关性多线程分布性,Java语言概述,12,Java的工作方式,文件类型.javaJava源文件.class二进制字节码文件编译过程,Java语言概述,13,Java的工作方式,本地计算机系统,Java虚拟机(JVM),.class二进制字节码文件,.javajava源程序文件,编译,Java语言概述,14,Java的工作方式,Java虚拟机(JVM)Java虚拟机类似于一个小巧而高效的CPU,Java处理器“芯片”,一般由软件实现,Java语言概述,15,Java虚拟机的概念,Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。使用“Java虚拟机”程序就是为了支持与操作系统无关、在任何系统中都可以运行的程序。,Java语言概述,16,Java虚拟机的结构,Java虚拟机包括5个部分:方法区、Java堆、Java栈、程序计数器和本地方法Java虚拟机的体系结构图(P6,图1-2),Java语言概述,17,Java虚拟机,编译型工作方式,解释型工作方式,Java语言概述,18,Java虚拟机,加载代码类加载器加载程序运行所需要的所有的类。类加载器将本地文件系统的类的名字空间与从网络资源来的类的名字空间分开。这样就限制了特洛伊木马程序,因为本地类总是首先加载。一旦所有的类被加载,可执行程序的内存布局就被确定了。内存地址被分配给符号引用表,查找表被建立。由于内存的布局出现在运行时刻,防止了对于代码域的未授权的访问。,Java语言概述,19,Java虚拟机,验证代码字节代码验证器java代码在你的机器上执行前要经过几个测试。字节码验证器测试代码段的格式,检查代码段是否有非法代码(伪造指针,对象上的非法存取,试图改变对象类型等)。所有网络来的类文件都要经过字节验证。执行代码运行解释器,Java语言概述,20,Java虚拟机,JVM提供以下定义:指令集(Bytecodes是JVM的机器指令)。寄存器组(用于保存机器的运行状态)类文件格式栈(局部变量区、执行环境区和操作数区)垃圾回收“堆”(实现内存的动态分配和自动回收)方法区域(是编译后的代码区域,包括方法代码、符号表等),Java语言概述,21,Java术语JVM、JRE,JVMjavavirtualmachineJVM虚拟机将java字节码程序翻译成机器语言。然后由计算机执行。JVM没有其他相关的文件。.JVM本身不足以支持javaapplication和applet的运行。JREjava运行环境.JRE是由JVM和javaplatform核心类以及相关支撑文件组成。.,Java语言概述,22,Java术语API,Applicationprogramminginterface.API是rules(syntax):在java技术中如何编程。API包括数百个类sun公司预先编好的代码,你可以在编程中充分利用它们的功能。,Java语言概述,23,Java术语JDK、J2SDK,JDKjavadeveloperskit(java开发工具包)JDK包含JVM和其他工具,以及所有的API和相关文件。JDK是java技术的旧名(1999/11以前),JDK1.1是最后版本。Java2Java2Platform,J2SDKjava技术的新名称SDKSoftwareDevelopmentKit,Java语言概述,24,Java2开发平台,JavaSE(标准版本)为台式机和工作站提供一个开发和运行平台。JavaEE主要是为实现基于Web的企业级应用程序的服务器端Java组件而设计的。JavaME主要应用于嵌入式系统的开发。,Java语言概述,25,JDK的安装(P16),在Sun的网站“”上下载JDK的最新版本。安装目录:c:JDK1.5生成的子目录:bin,lib,jre,demo,includeBin子目录中对Java程序进行编译和运行的文件javacJava编译器,将Java源程序编译成字节码文件用法:javacfilename.java,Java语言概述,26,JDK的安装,JavaJava解释器,直接从类文件执行Java应用程序,即application用法:javafilenameappletviewer小程序浏览器,执行html文件中的Java小程序,即Applet(不带后缀名),Java语言概述,27,JDK的环境配置,右键单击“我的电脑”,在快捷菜单重选择“属性”;,Java语言概述,28,单击“高级”选项卡;,Java语言概述,29,单击“环境变量”按钮;,Java语言概述,30,首先设置用户变量path,单击“新建”按钮;,若用户变量中已存在PATH,则选中PATH后点击“编辑”,在变量值中添加“;c:JDK1.5BIN”,Java语言概述,31,输入变量名和变量值,单击“确定”按钮;,Java语言概述,32,设置系统变量classpath,单击“新建”按钮;,Java语言概述,33,输入变量名和变量值,单击“确定”按钮”,Java语言概述,34,Java程序集成开发工具(P18),UltraEditJava编译命令的配置Java运行命令的配置JavaApplet运行命令的配置EditPlus工具JCreator工具Eclipse工具,Java语言概述,35,面向对象开发步骤(P13),面向对象的分析确定对象和类确定结构确定主题确定属性确定方法面向对象的设计面向对象编程实现,Java语言概述,36,Java语言应用,由于其跨平台的特点,可用于不同机型、不同操作系统计算机之间的数据交换和通信,完成协调控制、综合管理等功能用于可视化图形软件和动画软件的设计由于其具有良好的图形功能、可视化及可操作化等优点,可用于计算机交互软件的设计和开发由于具有Applet功能,可很方便地将动画和各种信息嵌入到网页,为Internet网络用户设计生动活泼的带动画的主页提供了便利,Java语言概述,37,Java程序的几种类型,Application“Java应用”是可以独立运行的Java程序。由Java解释器控制执行。Applet“Java小程序”不能独立运行,而是被嵌入到Web页中。由与Java兼容的浏览器控制执行。,Client机,Server机,Browser,网页,字节码,Java语言概述,38,Java应用程序(P21),/HelloWorld.javapublicclassHelloWorldpublicstaticvoidmain(Stringargs)System.out.println(“Hello,World!”);,类声明与定义,类中的方法,语句结尾以分号标志,用大括号括起语句组,Java语言概述,39,Java语言规则,Java语言区分大小写类名第一个字母大写PhoneCard方法名第一个字母小写getBalance()变量名第一个字母小写cardNumber内含单词首字母大写,Java语言概述,40,Application程序基本结构,任何Java程序都是由若干类定义组成,定义类用关键字class。各类定义之间是独立的,类体部分不能再定义其他类。其中必须有一个“类”定义了main()方法,该方法是自动执行的类方法,是Java应用运行的起始点。而这个类也就称之为“主类”。类体部分由一对大括号括起。className是类名,由用户自己定义,要有一定的含义,要与该程序的文件名相同。一个类产生一个.class文件。,Java语言概述,41,Application程序编译与执行,编辑Java源文件。编译javacjavacHelloWorld.java产生HelloWorld.class文件解释执行javajavaHelloWorld(隐含.class文件),Java语言概述,42,applet小程序,applet程序中必须包含java.applet.Applet类的子类。该子类就是applet小程序的主类。系统类Applet中已经定义了很多的成员域和成员方法,它们规定了Applet小程序如何与执行它的解释器WWW浏览器配合工作;主方法被浏览器自动调用的方法。init()start()stop()destroy()paint(),Java语言概述,43,编写applet小程序就是根据需要重新编写这些方法,applet小程序,当applet的字节码文件下载后,浏览器首先创建Applet实例并调用从Applet类那里继承来的init()方法进行初始化工作,然后调用start()方法开始applet小程序的执行。当用户离开小程序所在页面时,浏览器调用stop()方法停止小程序执行;当用户重新进入小程序页面时,就再调用start方法。当用户退出浏览器时,浏览器调用destroy()方法并释放资源。每当需要在Applet的界面中显示文字、图形和其他界面元素时,浏览器调用paint()方法重画界面。,Java语言概述,44,applet小程序编译与执行,编辑Java源文件HelloAppletWorld.javaimportjava.awt.Graphics;importjava.applet.Applet;/将java.applet包中的/系统类Applet引入本程序publicclassHelloAppletWorldextendsAppletpublicvoidinit()resize(400,200);publicvoidpaint(Graphicsg)g.drawString(“Hello,JavaWorld!”,10,20);编译java小程序javacHelloAppletWorld.java,Java语言概述,45,applet小程序编译与执行,建立HelloAppletWorld.html文件,嵌入HelloAppletWorld.class浏览html文件在DOS环境下使用appletviewerappletviewerHelloAppletWorld.html使用常规的浏览器,theHelloAppletWorldHTML,Java语言概述,46,Applet开发、执行模式,applet小程序编译与执行,CLIENT机,SERVER机,Browser,Java语言概述,47,Java应用程序的输入/输出,文本界面的输入/输出字符模式的用户界面JDK1.4以前,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论