北大计算机系java讲义java类

上传人:乐*** 文档编号:117150087 上传时间:2019-11-18 格式:PPT 页数:76 大小:221.50KB
返回 下载 相关 举报
北大计算机系java讲义java类_第1页
第1页 / 共76页
北大计算机系java讲义java类_第2页
第2页 / 共76页
北大计算机系java讲义java类_第3页
第3页 / 共76页
北大计算机系java讲义java类_第4页
第4页 / 共76页
北大计算机系java讲义java类_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《北大计算机系java讲义java类》由会员分享,可在线阅读,更多相关《北大计算机系java讲义java类(76页珍藏版)》请在金锄头文库上搜索。

1、第一章 Java的类 北京大学计算机系 代亚非 1 第一章 Java的类 1.1 有关面向对象的概念 1.2 Java语言的特点 1.3 Java的开发环境 1.4 第一个Java程序 1.5 Java类型系统 1.6 Java中字符串的类 1.7 Java中的类、方法和变量 1.8 Java名空间及访问规则 1.9 Java中的抽象类、接口和程序包 1.10 对象的构造函数 2 1.1 有关面向对象的概念 面向对象程序设计围绕的几个主要概念: 抽象数据类型、类、类型层次(子类),继 承性、多态性。 3 1.1 有关面向对象的概念 class Car int color_number; int

2、 door_number; int speed; void brake() void speedUp() ; void slowDown() 计算机中 的对象的原型 现实生活 中的对象 数据抽象类型 4 1.1 有关面向对象的概念 什么是类? 类是描述对象的“基本原型”,它定义一种对 象所能拥有的数据和能完成的操作,在面向对 象的程序设计中,类是程序的基本单元。 variables methods 程序中的对象 是类的一个实例 ,是一个软件单 元,它由一组结 构化的数据和在 其上的一组操作 构成。 5 1.1 有关面向对象的概念 变量:即指对象的所知道的状态 方法:指对象的功能单元。 什么是消

3、息? 软件对象通过相互间传递消息来相互作用和 通信 一个消息由三部分组成: 1. 接受消息的对象 2. 要完成方法的名字 3. 方法需要的参数 对象B 对象 A message 6 1.1 有关面向对象的概念 一个例子 在程序中操作对象是类的一个实例:即对象 创建一个对象 Hello obj=new Hello(); 调用方法 obj.showString(“Hello World!”) class Hello private String s; public void showString () System.out.println(s); public void changeString(

4、String str) s=str; return s; 7 1.1 有关面向对象的概念 什么是封装? 封装把对象的所有组成部分组合在一起,封 装定义程序如何引用对象的数据,封装实际 私有数据 方法 上使用方法将类 的数据隐藏起来 ,控制用户对类 的修改和访问数 据的程度。 方法 数据 对象A对象B 公有数据 8 1.1 有关面向对象的概念 什么是子类? 子类是作为另一个类的扩充或修正所定义的 一个类. bicycle (super class) Mountain bikes Racing bikes Tandem bikes sub class 9 1.1 有关面向对象的概念 什么是继承?

5、继承是子类利用父类中定义的方法和变量就 像它们属于子类本身一样. class Car int color_number; int door_number; int speed; push_break() add_oil() class Trash_Car extends Car double amount; fill_trash() 10 1.1 有关面向对象的概念 什么是方法的覆盖? 在子类中重新定义父类中已有的方法。 class Car int color_number; int door_number; int speed; push_break() speed=0; add_oil()

6、 class Trash_Car extends Car double amount; fill_trash() push_break() speed=speed-10; 11 1.1 有关面向对象的概念 什么是方法的重载(多态性)? 在同一个类中至少有两个方法用同一个名字 ,但有不同的参数。 类 void show(int int_num) void show(double double_num) void show(nit nit_ um, float float_um) 123 1.23 123,1.23 12 1.2 Java语言的特点 Java是什么? Java= “C+”-“复杂性

7、和奇异性”+“安全性和可移植性” Java由那些特性? (1) 面向对象 封装性、多态性、继承性、动态链接 (2) 操作平台无关性 严格的语言定义:“没有依据机器的不同而不 同” 或“由编译器决定”等字眼,最后的目标码 都是一致的,初值都是确定的 13 1.2 Java语言的特点 两种工作模式的比较 源 程 序 Java编译器 SPARC pentium Powerpc 中间码 Powerpc pentium SPARC 二进制 源 程 序 SPARC Powerpc pentium Powerpc pentium SPARC 编译器二进制 Java解释器 14 1.2 Java语言的特点 .

8、 编译,没有绝对地址 调入包含,继承所用 道的所有类, 内存分 配确定,编程真正可 执行的机器码 Java源程序 (.java文件) Java编译器 Java Bytecode (.class文件) 系统执行平台 Bytecode 解释器 Bytecode 载入器 字节码校验器 不存在伪造的指针 不违反访问权限 不非法访问对象 不导致操作栈溢出 15 1.2 Java语言的特点 Java虚拟机 Java interpreter Just-in-time compiler Runtime System Operating System Hardware 不同的操作系统有不同的虚 拟机. 它类似一

9、个小巧而高效的CPU. byte-code代码是与平台无关的 是虚拟机的机器指令. Java字节代码运行的两种方式: interpreter(解释方式) Just-in-time(即时编译):有代码 生成器将字节代码转换成本机 的机器代码,然后可以以较高速 度执行. 16 1.2 Java语言的特点 (3) 安全问题 Java是在网络环境下使用的语言 一个安全的网络至少要防止以下几种破坏的 可能性: 毁灭系统资源 消耗系统资源 挖掘系统或个人机密 骚扰正常工作的进行 17 1.2 Java语言的特点 Java源程序 (.java文件) Java编译器 Java Bytecode (.class

10、文件) Bytecode 载入器 Bytecode 解释器 系统执行平台 语言定义 public protected private final 取消指针 自动回收 垃圾 Bytecode检查 限定对象的 存取权限 系统堆栈溢出 参数类型一致 程序执行系统 WWW浏览器 限制Java小应用程序 的不正当使用 18 1.2 Java语言的特点 (4) 多线程 Java提供现成的类Thread,只要继承这个类就可以 编写多线程的程序。 (5) Java与C及C+的区别 不再有#include 和#define 等于处理功能 不再有structure,union及typedef 不再有函数、不再有指

11、针、不再有多重继承 不再有goto 不再有操作符重载(Operatior Overloading) 取消自动类型转换,要求强制转换 19 1.3 Java的开发环境 Java开发环境 JDK JDK中有Java编译器和bytecode解释器 Applwtviewer是小应用程序的bytecode解释器 JDK的安装 直接执行JDK.exe 20 1.3 Java的开发环境 产生如下目录结构 javabin的目录下包含义下主要文件: javac: Java编译器, 用来将java程序编译成 Bytecode java: Java编译器,执行已经转换成Bytecode的 java应用程序. jdb

12、: Java调试器, 用来调试java程序 javap: 反编译,将类文件还原回方法和变量. javadoc:文档生成器,创建HTML文件 appletviwer : Java解释器, 用来解释已经转换成 Bytecode的java小应用程序. 21 1.3 Java的开发环境 javalib子目录 库函数,其中classese.zip不要解开. 在autoexec.bat中加入以下两条命令 1. PATH c:javabin 2. SET CLASSPATH=. ; c:.libclasses.zip; c:myclasses; 22 1.3 Java的开发环境 C: java bin li

13、b classes.zip javac java appletviewer 用户类文件 所在目录 myclasses 当前目录 23 1.3 Java的开发环境 vj1.1+的使用 1.进入vj,创建一个project 2.加入java文件 3. 编辑java文件 4. 编译java文件 5. Build一个project文件 6. 运行java程序 -如果是小应用程序,则直接在VJ环境下运行 -如果是应用程序,则在dos下运行 24 1.4 你的第一个Java程序 编辑存盘:主类名(含有main方法)和 文件名要一致性 HelloWorldApp.java 编译程序 : javac Hell

14、oWorldApp.java 运行程序 : java HelloWorldApp “myjava” 运行结果 : Hi, myjava class HelloWorldApp public static void main(String args) System.out.println(“Hi, ”+args0); Java应用和Java小应用程序 25 1.4 你的第一个Java程序 1. 声明一个类 : public class HelloWorldApp , 类名的第一个字母要大写 2. 一个类中可有很多方法, main方法是运行程 序的第一个方法,方法名的第一个字母要小 写. 3. S

15、ystem.out.println是向屏幕输出,相当于C中 的printf(); public class HelloWorldApp public static void main(String args) System.out.println(“Hi, ”+args0); 26 1.4 你的第一个Java程序 4. 命令行参数的获取 c:java HelloWorldApp myjava! 6. 字符串的拼接 public class HelloWorldApp public static void main(String args) System.out.println(“Hi, ”+args0); 27 1.4 你的第一个Java程序 Java小应用程序不能直接执行和使用,必须要在 浏览器中执行 import java.applet.Applet; import java.awt.*; public class HelloApplet extends Applet public void paint(Graphics g)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号