JAVA大学教学课件第一章绪论.ppt

上传人:wuy****n92 文档编号:70793391 上传时间:2023-01-28 格式:PPT 页数:33 大小:282KB
返回 下载 相关 举报
JAVA大学教学课件第一章绪论.ppt_第1页
第1页 / 共33页
JAVA大学教学课件第一章绪论.ppt_第2页
第2页 / 共33页
点击查看更多>>
资源描述

《JAVA大学教学课件第一章绪论.ppt》由会员分享,可在线阅读,更多相关《JAVA大学教学课件第一章绪论.ppt(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 Java语言程序设计第一章第一章:绪论绪论1.1 Java语言的历史-1 Java 是什么吗?Just another valueless acronymJava 是一个地名吗?1.1 Java语言的历史-2 1991年4月,Sun公司的James Gosling领导了一个代号为Green的项目,其目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以通过手机、E-mail等方式发指令给电冰箱电视机等家用电器,对它们进行控制,和它们进行信息交流。开始,准备采用C+,但C+太复杂,安全性差,最后基于C+开发一种新的语言Oak。Oak是一种用于网络的精巧而安全的语言,Sun公司曾依此投标一

2、个交互式电视项目,但结果是被SGI打败。可怜的Oak几乎无家可归,恰巧这时MarkArdreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编制了HotJava浏览器,结果Java一夜成名,迅速流行,甚至被誉为Internet上的世界语。1.1 Java语言的历史-3 Java的取名也有一趣闻,有一天,几位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一个人灵机一动说就叫Java怎样,得到了其他人的赞赏,于是,Java这个名字就这样传开了。JavaJava创始人创始人 James GoslingJames

3、Gosling博士博士1.2 什么是 Java-1n JavaTM 技术是:1、程序设计语言 2、平台(开发环境、应用程序环境)1.2 什么是 Java-2 n一、Java是一种高级程序设计语言,并具有如下特征:简单性、面向对象、分布式、解释型、健壮性 安全性、可移植性、高性能、多线程、动态性zzJava Java 虚拟机虚拟机(JVM)JVM)zz垃圾收集垃圾收集 zz代码安全性代码安全性 1.2 什么是 Java-3nJava程序先被编译,然后被解释执行。通过编译器,可以把Java程序编译成一种中间代码字节码(Byte-code)。字节码是可以被Java解释器解释的独立于平台的代码,是运行

4、在Java虚拟机(Java VM)上的机器代码指令。通过解释器,每条Java字节指令被分析,然后在计算机上运行。下图说明了它是如何工作的:1.2 什么是 Java-4 Java字节码使得“一次编写,到处运行”成为可能。可以在任何有Java编译器的平台上把Java程序编译成字节码。这个字节码可以运行在任何Java VM上。例如,同一个Java程序可以运行在WindowsNT、Solaris和Macintosh上,甚至这个JVM可以是个硬件、一块芯片。1.2 什么是 Java-5nJavaTM 虚拟机(虚拟机(JVM)规范规范:Java虚拟机(JVM)是可运行Java字节码的假想计算机。只要根据J

5、VM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行。Java虚拟机(JVM)规范是一种用于计算设备的规范,可用不同的方式(软件或硬件)加以实现。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。编译虚拟机的指令集与编译微处理器的指令集非常类似。1.2 什么是 Java-6nJavaTM 内存垃圾自动回收(内存垃圾自动回收(Garbage Collector)JavaTM 程序设计语言使程序员不必负责释放内存,因为它提供了一个后台系统级线程,用于记录每一个内存分配操作并保留对每个内存指针的引用计数。在 Java 虚

6、拟机运行时的空闲周期内,垃圾收集线程查看是否有引用数已降到 0 的内存指针。如果有,则清除(解除分配)垃圾收集线程所标记的内存。垃圾收集在 Java 应用程序的生命期内自动发生,因此不必手动解除对内存的分配。1.2 什么是 Java-7nJavaTM 不存在可信任代码不存在可信任代码 安全机制安全机制 Java 程序设计语言代码在计算机上实际运行之前已经过几遍测试。字节码检验器对程序代码进行四遍测试。它确保代码遵守 JVM 规范且不违反系统完整性。如果检验器完成所有四遍测试并且未返回错误信息,则可以确信下列情况属实:1、类遵守 JVM 规范的类文件格式。2、没有违反存取限制。3、代码不导致操作

7、数堆栈溢出或下溢。4、所有操作码的参数类型正确。5、没有发生非法数据转换,例如将整型转换为指针。6、对象字段存取合法。1.2 什么是 Java-81.2 什么是 Java-9二、平台是程序运行的硬件或软件环境。Java平台与大多数其它平台不同之处在于它是运行于其它基于硬件平台的纯软件平台。大多数其它平台是硬件和操作系统的结合。nJava平台由两部分组成:Java虚拟机(Java VM)(应用程序环境)Java应用程序界面(Java API)(开发环境)n我们已经介绍了Java VM,它是Java平台的基础,可以移植到各种基于硬件的平台上。(Java操作系统或Java芯片)nJava API是软

8、件组件的集合,它们提供了很多有用的功能,如图形用户界面(GUI)。Java API被分组为相关组件的库(包)。1.2 什么是 Java-10 作为一种独立于平台的环境,Java比本地代码慢一些。然而,聪明的编译器、很好地调制过的解释器和即时字节码编译器(JIT-just in time compiler)可以在不牺牲可移植性的条件下使Java的表现接近本地代码。1.3 Java 的应用领域Java已经渐渐地渗透到各领域1。你可以编写JavaApplication程序,完成其他语言能完成的所有应用程序,而且是跨平台的,可应用于各行各业;2。你可以编写JavaApplet程序,可以嵌入在浏览器中直

9、接运行;3。你可以编写JavaServlet/JSP程序,将其挂在Apache、tomcat或其它网页服务器上;4。你可以编写EJB/JavaBeans,将其挂在Websphere、Weblogic、IAS或其他应用服务器上;5。你可以编写JavaMIDlet程序,在手机上执行;1.4 Java 的安装-1lJava的安装:(http:/)JDK(javadevelopmentkit):jdk-1_4_0_008-win.exeJRE(javaruntimeenvironment):jre-1_4_0_008-win.exel环境变量的设置:可通过autoexec.bat文件设置:SETPAT

10、H=c:j2sdk1.4bin;.;%PATH%SETCLASSPATH=c:j2sdk1.4lib;.;%CLASSPATH%(其中,JDK安装在c:j2sdk1.4)1.4 Java 的安装-2l开发工具:一、文字模式(consolemode)的开发工具:Sun的Java2SoftwareDevelopmnetKit(Java2SDK),最新版JavaTMSE6(,Thenumber6isusedtoreflecttheevolvinglevelofmaturity,stability,scalabilityandsecurityofJavaSE.)。其中提供24个工具,都放在bin子目录

11、中,常用的有javac、java、appletviewer等。编辑器可使用记事本。*关于版本号的说明:v1.1.8前两个数字代表功能的变更,第三个(以及以后的数字),代表错误修订版。*J2SE(标准版)J2EE(企业版)J2ME(微型版)1.4 Java 的安装-3二、GUI模式的开发工具(graphicsuserinterfacemode):IDE(IntegratedDevelopmentEnvironment,集成式开发环境):将程序的编辑、编译、执行、调试等功能整合在一起。如Jcreator2,Freejava2等,我们要使用的集成开发环境是Jcreator2。RAD(RapidApp

12、licationDevelopment,快速应用程序开发):除具备IDE功能外,可通过可视(Visual)处理的方法摆设组件(component),所见既所得,并调整其属性(property),使编写程序(特别是用户接口部分)就像搭积木一样简便。如Jbuilder:是Borland公司产品(最多人使用的开发工具);VisualAgeforJava:是IBM的产品(最先进的开发工具);VisualCafe:是WebGain的产品(产品家族最完整的开发工具);NetBeans、Forte、SunJavaStudio:是Sun的产品;Eclipse:是一种开源的、可扩展IDE,是免费的。1.5 第一

13、个Java程序-1第一个“HelloWorld”小应用程序按照以下步骤,可以创建一个Java小应用程序。/用C语言实现#includeMain()println(“HelloWorld”);/用C+语言实现#includevoidmain()cout“HelloWorldn”;1.5 第一个Java程序-2/用Java语言实现1.建立一个名建立一个名为HelloWorld.java的文件:的文件:publicclassHelloWorldpublicstaticvoidmain(Stringargs)System.out.println(“HelloWorld”);2.编译源文件源文件用Jav

14、a编译器编译这个源文件。(javacHelloWorld.java)如果编译成功,编译器产生一个与Java源文件(HelloWorld.java)在同一个目录(文件夹)的名为HelloWorld.class的文件。这个class文件包含Java字节码,是可以被Java运行系统解释的独立于平台的代码。3.运行小运行小应用程序用程序 (javaHelloWorld)1.6 Java的反编译-1 控制台下的:JAD的使用 图形用户界面的:FrontEnd的使用 *使用混淆器加密你的Java程序。1.7 Java的文档注释方法-1 在注释方面,java提供一种C/C+所不具有的文档注释方式。其核心思想

15、是当程序员编完程序以后,可以通过JDK提供的javadoc命令(javacdoc 文件名.java),生成所编程序的API文档,而该文档中的内容主要就是从文档注释中提取的。该API文档以HTML文件的形式出现,与java帮助文档的风格与形式完全一致。凡是在“/*”和“*/”之间的内容都是文档注释。例如下面的DocTest.java文件:/*这是一个文档注释的例子,主要介绍下面这个类 *author walkman *version 1.1.48 2008/09/1 */public class DocTest/*变量注释,下面这个变量主要是充当整数计数*/public int i;/*方法注释

16、,下面这个方法的主要功能是计数*/public void count()1.8 Java的学习方法-1 在理解课堂教授内容的基础上,尽量独立完成课后习题。对于疑难问题,可采用如下办法解决:a.参考教材配套书籍或其它相关书籍,上机调试程序,自行解决。问人之前,先人之前,先问自己自己。b.结成学习小组(3人左右),互助学习;c.通过互联网的技术社区或BBS,向高手请教;d.通过参与开发开源软件项目,阅读源代码,边开发 边学习。e.通过robocode,机器人坦克大战,边娱乐边学习。官方网站1.8 Java的学习方法-2向上延伸,向下延伸,向旁延伸向上延伸,向下延伸,向旁延伸 当你发现你已经可以掌握

17、此程序语言基本知识之后,你可以选择:1、向上延伸:学习对象导向分析设计、UML、DesignPatterns、以及软件工程。培养自己具有做大型项目的能力。2、向下深入:深入了解内部底层的机制,例如JVM,操作系统(甚至硬件)内部。3、向旁延伸:学习不同的API,例如:多媒体、数据库、企业运算等等,扩展自己的编程能力。另外,数据结构、算法等基础也很重要。在人月神化中,F.Brooks 对他自己做的软件项目描述为:“史前巨兽在柏油坑中做垂死前的挣扎挣扎得越厉害,柏油就会黏的越紧,没有任何的猛兽力量够强,技巧够高,得以逃过终至灭顶的命运。在过去的十年,大型系统的程序设计工作就陷进了一个像这样的柏油坑

18、中。”在 Quality Softwre Management II 中,G.Weinberg 这样来描述他自己做软件项目的经验:“你身处湖心当中,划着一艘小船,船底有几个漏洞,水慢慢的渗进来。你想要去堵住漏洞,但却遭到一大群仲夏凶恶蚊子的攻击。能够随时注意到是否有问题的发生,或更进一步能预先加以防范(修补漏洞),理论上说来还不错,但是你得一直忙着去干昨日的问题(不停地打蚊子),完全抽不出空来实现分毫的理论。”Tom DeMarco 人件,管理,不仅仅是技术,更是充满人文精神的艺术。1.9 Java的参考书籍Sun公司编著Java程序员认证教材SL-110Sun公司编著Java程序员认证教材S

19、L-275机械工业出版社Java编程思想Java程序设计大学教程国外计算机经典教材Java2实用教程Java夜未眠1.10 Java认证考试-1Java认证考试认证考试(Java方面,方面,Sun推出七项认证推出七项认证):-Sun Certified Java Associate(SCJA)-Sun Certified Java Programmer(SCJP)-Sun Certified Java Developer(SCJD)-Sun Certified Web Component Developer(SCWCD)-Sun Certified Business Component Dev

20、eloper(SCBCD)-Sun Certified Developer For Java Web Services(SCDJWS)-Sun Certified Mobile Application Developer(SCMAD)-Sun Certified Enterprise Architect(SCEA)1.10 Java认证考试-21.10 Java认证考试-3SCJP(SunCertifiedJavaprogrammer),测试Java编程的观念和能力,内容偏重于Java语法和JDK内容。共59题复选和填充,2小时,61%及格;SCJD(SunCertifiedJavadevel

21、oper)测试Java软件开发的进阶技能。分两阶段,第一阶段是程序设计题,不限时,80%进入第二阶段,5-10题简答,90分钟,对70%通过认证;SCWD(SunCertifiedWebComponentDeveloperforJ2EEPlatform)内容覆盖Servlet与JSP。共60题复选和填空,2小时,70%及格;SCAJ(SunCertifiedEnterpriseArchitectforJ2EE)测试对于J2EE架构的熟悉程度以及系统整合能力。分三个阶段,第一阶段,48复选题,75分钟,68%进入下个阶段。第二阶段是系统设计专题,时间不限,70%进入下个阶段。第三阶段是4个申论题

22、,90分钟,通过即可得到认证。所有考试都是英文试题。最新信息:1.11 教授的主要内容-1第一讲:概述第二讲:面向对象程序设计方法学第三讲:Java的语言规范第四讲:类和对象第五讲:类和对象的高级特性第六讲:异常处理第七讲:Java的图形用户界面第八讲:事件模型及Swing组件第九讲:JavaApplet第十讲:课程设计(科学计算器、扫雷、记事本)(大约50学时)基 础 部 分1.11 教授的主要内容-2第一讲:I/O输入输出AdvancedI/OStreams第二讲:多线程MultiThreads第三讲:网络编程Networking第四讲:数据库技术DatabaseConnectivity(JDBC)第五讲:BrokerToolProject项目实践(SUN285课程)(大约80学时)提 高 部分

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

当前位置:首页 > 教育专区 > 大学资料

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

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