7Java编程思想第七章复用类
时间:2025-07-05
时间:2025-07-05
7Java 编程思想 第七章 复用类
第七章 复用类
★
组合
★
继承
7Java 编程思想 第七章 复用类
一、组合语法
★
组合的概念
◆ ◆
由现有类的对象组成新的类 典例分析:P125
7Java 编程思想 第七章 复用类
★ class WaterSource
// 水源
{ private String s; // 字符串对象WaterSource() { System.out.println(“WaterSource()”); s=“Constructed”; } public String toString()
{ return s;}}
7Java 编程思想 第七章 复用类
public class SprinklerSystem // 洒水系统
{ private String value1,value2,value3,value4; private WaterSource source = new WaterSource(); private int i; private float f; public String toString()
{ return “value1=”+value1+“”+.....“source=”+source;}
7Java 编程思想 第七章 复用类
// 以下为简单的测试程序
public static void main(String[] args){ SprinklerSystem sprinklers = new SprinklerSystem(); System.out.println(sprinklers); }
7Java 编程思想 第七章 复用类
★ 解释:toString()方法 ◆ 每一个非基本类型的对象都有一个toString方法 ◆ 调用时机:当编译器需要一个String(字符串) 而你却只有一个对象时,该对象中 的toString方法将被调用
7Java 编程思想 第七章 复用类
二、继承语法
1、 继承的概念和语法
★ ◆
使用extends关键字 典例分析:P127
7Java 编程思想 第七章 复用类
★ class Cleaner
{private String s="Cleaner"; public void append(String a ){s+=a;} public void dilute(){ append(" dilute()");} public void apply(){ append(" apply()");} public void scrub(){ append(" scrub()");}
public String toString(){ return s;}
7Java 编程思想 第七章 复用类
public static void main(String[] args)
{Cleaner x=new Cleaner(); x.dilute(); x.apply(); x.scrub(); System.out.println(x); } }
7Java 编程思想 第七章 复用类
public class Detergent extends Cleaner
{public void scrub() super.scrub();} public void foam() // 增加 // 改写 { append(“ Detergent.scrub()”);
{ append(“foam()”);}
7Java 编程思想 第七章 复用类
public static void main(String[] args)
{Detergent x=new Detergent(); x.dilute(); x.apply(); x.scrub(); x.foam(); System.out.println(x); System.out.println(“Testing base class:”); Cleaner.main(args); }
}
7Java 编程思想 第七章 复用类
★ 解释:
1、数据成员指定为private,方法指定为public ◆ 如果数据成员指定为private,该数据成员同样 是往下遗传的,只是在子类中不能访问父类的 private对象而已
7Java 编程思想 第七章 复用类
★ 解释:
2、可以为每个类都创建一个main方法 ◆ 优点:方便调试 ◆ 注意:只有在命令行所调用的那个类的main方法 会被调用
7Java 编程思想 第七章 复用类
二、继承语法
2、 初始化基类
⑴
当创建了一个导出类的对象时,该对象包含了一个基类的子对象
★
关键:该子对象与你直接用基类创建的 对象是一样的
7Java 编程思想 第七章 复用类
二、继承语法
⑵
无参构造器情形
★
Java会自动在导出类的构造器中插入对基类构造器的调用
◆
首先调用基类构造器,再调用导出类的 构造器(典例分析:P129)
7Java 编程思想 第七章 复用类
…… 此处隐藏:108字,全部文档内容请下载后查看。喜欢就下载吧 ……