当前位置:首页 >> 工学 >>

第2章Java面向对象编程基础_图文

第2章 Java面向对象编程基础

【学习目标】

1.理解类的包含和继承关系, 掌握方法重载和方法覆盖,并能应 用到类的设计中。 2.熟悉一些重要的关键字的含 义和使用,如this、super、static、 final等。

3.理解接口的含义,能根据需 要定义接口和实现接口。 熟悉内部类和匿名类对象的含 义并灵活使用。

4.熟悉JavaAPI常用类库的类 层次关系和组织结构。 熟悉String类、常用工具类和 Java集合框架中常用类的使用等。 能通过查阅JavaAPI文档,学习 和拓展编程知识。

5.能根据要解决的问题设计 对象模型、设计类和接口及它们的 层次关系,编写Java程序解决一些 实际问题。 进一步熟悉Eclipse开发平台的 使用。

2.1 面向对象编程概述

2.2 类的继承、接口、内部类和多态性
2.3 Java类库简介和常用类的使用举例

2.1 面向对象编程概述

2.1.1


面向对象编程的基本特

1.抽象
类是对一批具有相同属性及相同行为 的对象的抽象,是同一类对象的模板。

2.封装
(1)把描述对象属性的变量、实现 对象之间交互功能的方法封装在一对 花括号“{}”中,作为一个基本的程 序单位——类。

(2)为封装在一个类中的变量及方 法,规定了不同级别的“可见性”— 访问权限。 (3)将类定义在一个包(package) 中,对类的访问进行限定。

3.继承 4.多态性

2.1.2 包和访问权限
1.包和类库
Java中的包(package)是用来把一 些相关的类、接口放在一起的组织结构, 是一个相对独立的软件单元,可以简单地 理解为放置这些类和接口的文件夹。 包的集合称为类库。

2.类的完全限定名
一个包中的类的完全限定名是“包名. 类名”。

3.创建包
创建包的语句格式:

4.public访问权限和包访问权限
类的访问权限修饰符有public和缺省 (没有访问权限修饰符)两种,分别代表 以下两种访问权限。

① 类头声明中不使用关键字public修 饰,则只能被同一包的其他类访问。 ② 类头声明中使用关键字public修饰, 该类可以被任何包中的其他类访问。

5.setter方法和getter方法 6.封装和公开

2.1.3 源文件结构、程序说明 文档和jar文档的生成
1.源文件结构 2.生成程序说明文档

为了生成程序的说明文档,可在类、 变量和方法定义的前面添加文档注释“/** 注释*/”,分别对类、变量和方法作出说明

在命令行界面中使用下面的命令可从 Java源程序中提取这些文档注释,

2.1.4 关键字this和static的说


1.关键字this的使用
① 类定义中使用this代表类对象本身。

② 类中有多个重载的构造方法时,构 造方法中可以通过this( )调用本类的其他构 造方法,但必须是构造方法中的第一条语 句。 ③ 静态变量和静态方法不能用this做 前缀来使用。

2.关键字static的使用
(1)静态变量
用关键字static修饰的变量称为静态变

量。

(2)静态方法
用关键字static修饰的方法称为静态方 法。

2.1.5 对象的清除
对象的生命周期分为三个阶段:生成、 使用和清除。

2.2 类的继承、接口、内部类 和多态性 2.2.1 类的包含关系和继承关 系
1.类的包含关系(HAS-A)
当一个类定义中包含另一个类的实例 时,就是类的包含关系,通常称为“HASA(有A)”。

2.类的继承关系(IS-A)

图2-3 汽车的“HAS-A”关系

图2-4 水果的“IS-A”关系

2.2.2 抽象类(abstract)、最 终类(final)和静态(static)成 员
1.抽象类和抽象方法
(1)抽象类

(2)抽象方法
如果定义一个方法时,只写出其方法 头声明,而没有方法体,则称为抽象方法。

(3)具体类

2.2.3 类的继承
1.定义子类的格式

2.类成员的继承
子类继承某个父类后便具有了父类的 特性。

3.子类添加成员
继承的目的是为了扩展父类,满足需 要并增强类的功能。

4.变量隐藏和方法覆盖—super 关键字的使用
(1)变量隐藏 (2)方法覆盖

(3)方法覆盖的规则
① 参数列表完全相同。 ② 返回类型相同。 ③ 访问限制相同或更弱,但不能更 强。

5.方法覆盖与方法重载的说明 6.子类中调用父类的构造方法— —super关键字的使用

Java中用关键字super表示父类对象。 ① 在子类中使用super做前缀可引用 被子类隐藏的父类变量和被子类覆盖的父 类方法; ② 子类构造方法中可以通过super (实际参数)调用父类的构造方法,但必 须是构造方法中的第一条语句。

7.方法的动态绑定——多态性

2.2.4 接口和接口的实现
1.接口概述
类的继承可分为单继承和多继承两种。 如果一个类只能有一个直接父类,称为单 继承。 如果一个类可以有多个直接父类,称 为多继承。

Java中的接口把完成特定功能的若干 属性和方法组织成相对独立的属性和方法 集合,用关键字interface来声明。

2.定义接口
Java中的接口是类似于类的一种结构 (没有实现的类),用关键字 interface 后 跟接口名字来定义。 接口中的成员只有静态常量和抽象方 法,文件名保存为“接口名字.java”。

格式如下:

3.实现接口
一个类可以实现一个或多个接口,声 明实现接口的关键字是implements,后跟 要实现的接口名。

一个类实现接口的格式如下:

2.2.5 内部类和匿名类对象的 使用
1.内部类
内部类是定义在一个类里面的类,内 部类中也可以定义变量和方法。

外部类和内部类成员的相互访问规则 如下。

(1)内部类可以直接访问外部类的 所有成员,包括private成员。

(2)外部类必须通过内部类的实例, 才能访问内部类的成员。外部类可以 在其成员方法中,创建内部类的一个 实例,然后通过实例名做前缀访问内 部类的成员。

2.匿名类对象
匿名内部类对象是定义在一个表达式 范围里的没有名字的类对象。

2.3Java类库简介和常用类的 使用举例 2.3.1 Java类库简介
1.java核心包 2.javax扩展包

2.3.2 JavaAPI文档 2.3.3 常用类的使用

2.3.4 字符串类和正则表达式
1.字符串类(String)
字符串类java.lang.String是字符的序 列。

2.缓冲字符串类(StringBuffer)
缓冲字符串类java.lang.StringBuffer 是可变长度和内容的字符串。 下面的构造方法用来创建缓冲字符串 类对象:

3.字符串分析类 (StringTokenizer)
要根据指定的分隔符将字符串分解为 一个个标记符号(token),可通过字符串 分析类java.util.StringTokenizer实现,该 类构造方法如下:

4.使用正则表达式判断字符串匹 配
(1)判断字符串匹配 (2)正则表达式

2.3.5 Java集合框架中的接口 和类的使用
1.Java集合框架
Java集合框架(Java Collections Framework)包含很多接口和类,它们都 在java.util包中。

(1)java.util.Collection接口
java.util.Collection接口是 java.util.List接口和java.util.Set接口的父接 口,提供了一些公共的操作方法

图2-12 Java集合框架中的接口及常用的实现类

① java.util.List接口 ② java.util.Set接口是一种不包含重复 元素的集合。

(2)java.util.Map接口
Map接口是将键映射到值的对象,每 个条目是一个键/值对,一个映射不能包含 重复的键,每个键最多只能映射一个值。

2.数组序列类(ArrayList)
List(序列)是一种能包含重复元素 的有序集合,ArrayList类实现了List接口, 它实现了List接口的大小可变的对象数组。

使用ArrayList类没有参数的构造方法 ArrayList(),将构造一个初始容量为10的 空序列。

3.树集(TreeSet)的使用
① java.util.HashSet类,该类实现了 Set接口,由哈希表(实际上是一个 HashMap实例)支持,不保证集合的迭代 顺序。

② java.util.LinkedHashSet类,该类 是可预知迭代顺序(元素的插入顺序)的 Set接口的哈希表和链式序列实现,是 HashSet类的子类。

③ java.util.TreeSet类,该类实现了 Set 接口的子接口java.util.SortedSet,保证 迭代器按照元素递增顺序遍历,即按照元 素的自然顺序进行排序。

4.数组类(Arrays)的使用 5.集合类(Collections)的使用
类java.util.Collections 继承自Object 类(注意名字差别,不是 java.util.Collection接口),提供了大量操 作List、Set和Map对象的静态方法。

6.自定义和使用比较器 (Comparator)
(1)使用Comparator接口比较两个 对象大小

(2)使用Comparable接口实现自定 义类的自然排序

7.树映射(TreeMap)的使用
① java.util.Hashtable类,用于存储键 /值对哈希表,也称散列表。

② java.util.HashMap类,是基于哈希 表的Map接口的实现,该类提供所有可选 的映射操作,不保证映射的顺序,并允许 使用null值和null键(除了不同步和允许使 用null之外,HashMap类与Hashtable类大 致相同)。

③ java.util.LinkedHashMap类,是 Map接口的哈希表和链接列表的实现,具 有可预知的迭代顺序,该类是HashMap类 的子类。

④ java.util.TreeMap类,是 SortedMap 接口基于红黑树的实现,该类 保证了映射按照升序排列关键字,根据使 用的构造方法不同,可能会按照键的自然 顺序进行排序,或者按照创建时所提供的 比较器进行排序。


相关文章:
第2章 Java面向对象编程基础_图文.ppt
第2章 Java面向对象编程基础 - 第2章 Java面向对象编程基础 ? ?
ACCP7.0_S2_Java面向对象编程_第2章_图文.ppt
ACCP7.0_S2_Java面向对象编程_第2章 - 第二章 继承 回顾及作业
Java面向对象程序设计第2章 面向过程编程_图文.ppt
Java面向对象程序设计第2章 面向过程编程 - 第2章 面向过程编程 主讲人:
java面向对象程序设计第二章_图文.ppt
java面向对象程序设计第二章 - Java 初级 第二章 Java语言基础
Java面向对象程序设计第2版第2章_基本数据类型汇总_图文.ppt
Java面向对象程序设计第2版第2章_基本数据类型汇总 - 《Java面向对象程序设计》第2版 第 2章 基本类型、数组和枚举类型 Power point 制作:耿祥义 张跃平 配合< ...
Java面向对象编程基础_图文.ppt
Java面向对象编程基础 - 第五章 Java面向对象编程基础 类:现实世界中实
《移动通信面向对象编程》第二章Java编程基础2_图文.ppt
《移动通信面向对象编程第二章Java编程基础2 - 移动通信面向对象编程 第二章 JAVA编程基础 IC-MSP V1.0 回顾 学会编写简单的java程序 学会运算符的使用 学会...
第2章Java面向对象编程基础.ppt
第2章 Java面向对象编程基础 【学习目标】 1.理解类的包含和继承关系, 掌
《移动通信面向对象编程》第二章Java编程基础1_图文.ppt
《移动通信面向对象编程第二章Java编程基础1 - 移动通信面向对象编程 第二章 JAVA编程基础 IC-MSP V1.0 回顾 JAVA完全面向对象、平台无关、分布式的、安全 ...
Java第2章 面向对象编程_图文.ppt
Java第2章 面向对象编程 - 第2章 面向对象编程 本章主要内容 ?1.面向对象基本概念 ?2.Java的类与对象 ?3.成员变量与访问权限 ? 4.成员方法 2.1 面向对象...
Java面向对象程序设计第2章_基本数据类型_图文.ppt
面向对象程序设计》 《Java面向对象程序设计》 第2章 面向对象程序设计 章 基本类型、数组和枚举类型 Power point 制作:耿祥义 张跃平配合< Java面向对象程序设计 ...
Java面向对象程序设计第2章_基本数据类型_图文.ppt
Java面向对象程序设计第2章_基本数据类型 - 面向对象程序设计》 《Java面向对象程序设计》 第2章 面向对象程序设计 章 基本类型、数组和枚举类型 Power point 制作...
java课件---Java面向对象程序设计第2章_基本数据类型_....ppt
java课件---Java面向对象程序设计第2章_基本数据类型 - 《Java面向对象程序设计》 第2章 基本类型、数组和枚举类型 2010-1-10 1 导读 主要内容 ? 标识...
第四章 Java面向对象编程基础_图文.ppt
第四章 Java面向对象编程基础 - 清华大学出版社 java语言与面向对象程序设计(第二版)... 清华大学出版社 java语言与面向对象程序设计(第二版) 第四章 抽象、封装...
第4章 Java面向对象编程基础_图文.ppt
第4章 Java面向对象编程基础 - JAVA 第4章 Java面向对 章 面向
《Java_2面向对象程序设计基础》第2章:Java语言开发环....ppt
Java_2面向对象程序设计基础》第2章:Java语言开发环境 - 第2章 Java语言开发环境 (时间:2次课,4学时) http://www.wenyuan.com.cn/webnew...
面向对象程序设计 java编程基础_图文.ppt
面向对象程序设计 java编程基础 - 第二章 Java 编程基础 回顾 ? J
第四章 Java面向对象编程基础_图文.ppt
第四章 Java面向对象编程基础 - 第四章 4-1 Java面向对象编程基础 Programming in Java 提纲 4.1 java的类 4.1.1 系统定义的类 4.1.2...
第3章 Java面向对象编程基础.ppt
第3章 Java面向对象编程基础 3.1面向对象软件开发概述 3.2 Java的
JAVA学习--第2章 面向对象编程_图文.ppt
JAVA学习--第2章 面向对象编程 - JAVA学习--适合初学者,和有一定其他语言基础的自学者... JAVA学习--第2章 面向对象编程_互联网_IT/计算机_专业资料。JAVA学习-...
更多相关标签: