好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

面向对象课件第一章.ppt

38页
  • 卖家[上传人]:kms****20
  • 文档编号:56774918
  • 上传时间:2018-10-15
  • 文档格式:PPT
  • 文档大小:954.50KB
  • / 38 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • Java 初级,第一章 初次接触JAVA,主要内容,Java语言-顺应网络时代的编程语言 Java语言的特点 Java程序的编译环境和执行环境 第一个Java程序——Hello World Java程序的分类 Java平台,Java语言——网络时代的编程语言,网络时代编程问题,网络带给我们精彩的同时,也为编程带来了困难,最为突出的表现为环境复杂,问题的解决方法,为了实现一个程序能被多个操作系统所认识,必须像不同语言国家的人交流那样,借助“翻译”的作用,C或C++:只有将编译后的文件连接成为.exe,才能在 Windows操作系统上运行C++的解决策略,Java的解决策略 :一次编译,处处执行,Java语言的特点,A simple, object-oriented, distributed, interpreted, robust,secure, architecture-neutral, portable, high-performance, multi-threaded, and dynamic language即: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的运行环境还提供字节码校验器、运行时内存布局和类装载器(Class Loader)、文件访问限制等安全措施,保证字节码本身的安全和访问系统资源的安全多线程和动态 多线程使应用程序可以同时进行不同的操作,处理不同的事件在多线程机制中,不同的线程处理不同的任务,互不干涉,不会由于某一任务处于等待状态而影响了其它任务的执行,这样就可以容易的实现网络上的实时交互操作 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程序——Hello World,步 骤,分为五个步骤:进行JDK的安装, 配置环境变量,编写程序,编译 和执行程序 JDK的安装:执行下载的文件【jdk-1_5_0_04-windows-i586-p.exe】,安装目录可定为【d:\jdk1.5.0】bin】子目录下,存在jdk众多的工具集环境配置: 桌面上选择【我的电脑】(右键)->【属性】->【 高级】->【环境变量】->【系统变量】,选择【path】,点【编辑】,在【变量值】栏目的最前面,输入“d:\jdk1.5.0\bin;” 编写程序:在没有安装集成开发工具的前提下,可以选择一些文本编辑器书写Java代码,如“EditPlus2”、“UltraEdit”、“JCreator”等,当前也可以在Windows操作系统中的“记事本”编写程序书写代码,将文件保存在D:\myJava\HelloWorld.java public class HelloWorld {public static void main(String args[]) { System.out.println(“Hello World!“); } } 编译:选择【开始】->【运行】,进入Dos界面如下图所 示,键入javac HelloWorld.java 执行:编译通过后,输入java HelloWorld,程序说明,类名和文件名应该同名,同为HelloWorld 。

      main方法前的修饰符必须为public static void System.out.println()用于输出,其参数可以为字符串,也可为数方法println的作用是换行,如果不换行,则调用print方法可能遇到的问题(一),问题编译出现“javac不是内部命令,也不是可运行程序”的问题 解决方案path路径没有设对,在dos窗口下,输入path,看是否包括d:\jdk1.5.0,没有或设置不正确,重新设置path环境变量可能遇到的问题(二),首先检查是否将HelloWorld文件名写对否,包括大小写; 其次,编译时带“.java”后缀名,执行时不带“.class”后缀; javac中指出java源文件时能带windows的路径,但执行时用java不可以,如:java d:\test\HelloWorld则不行,因为java将“d:\test\HelloWorld”当成一个字节码文件了; 环境变量中设置了classpath,由于当前目录没有包含其中,所以java执行时,对当前目录的HelloWorld.class视而不见,解决方法为去掉classpath环境变量,或在其中加入当前目录即可。

      问题:编译和执行时出现NoClassDefFoundError的错误 解决方案:(可能性有四个 ),可能遇到的问题(三),问题编译时出现error: cannot read: HelloWorld .java 解决方案在windows设置成不显示后缀名的形式,然而在起文件名时,给文件名起了HelloWorld .java,造成实际文件名为HelloWorld .java.java在【工具】->【文件夹选项】->【查看】中不选择“隐藏已只文件类型的扩展名”,可见到带后缀的所有文件名可能遇到的问题(四),问题执行出现“Error:could not found ‘……\lib\i386\jvm.cfg’”问题 解决方案主要是安装集成环境以及Oracle数据库后,这些产品也安装了不同版本jdk造成的(通过java –version看当前是哪个版本),解决方法是将d:\jdk1.5.0放置在path路径的最前端注:若在一台机器上安装多个版本的JDK,如果需要使用其中特定某一版本,需要通过path设置来决定启用哪个版本Java程序的分类,从大类上分为Application和Applet前面的HelloWorld就是Application程序,它们之间的主要区别如下:,JAVA程序的分类,将HelloWorld改写成Applet程序,import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet { public void init(){ }public void paint(Graphics g){ g.drawString(“Hello World!“,25,25); } } 编辑html页面,和HelloWorldApplet.class在同 一目录,取名为c1_2.html,在其中编写代码: ,执行结果:,程序说明,程序中的import,相当于C语言中的include,是使用已经编译好的类的语法(包括API中的类),在上面的程序当中,如果没有import java.awt.*;则Graphics类不可使用;没有import java.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的程序入口,因此不能单独运行,需要借助浏览器来执行。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.