java编程思想第四版第七章习题
时间:2022-07-25
本文章向大家介绍java编程思想第四版第七章习题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
- (略)
- (略)
- (略)
- (略)
- 创建两个带有默认构造器(空参数列表)的类A和类B。从A中继承产生一个名为C的新,并在C内创建一个B类的成员。不要给C编写构造器。创建一个C类的对象并观察其结果。
package net.mindview.reusing;
public class A {
public A(){
System.out.println("A");
}
}
package net.mindview.reusing;
public class B {
public B(){
System.out.println("B");
}
}
package net.mindview.reusing;
public class C extends A {
B b = new B();
public static void main(String[] args) {
C c = new C();
}
}
- (略)
- (略)
- (略)
- 创建一个Root类,令其含有名为Component1、Component 2、Component3的类的各一个实例(这些也由你写)。从Root中派生一个类Stem,也含有上述各“组成部分”。所有的类都应带有可打印出类的相关信息的默认构造器
package net.mindview.reusing;
public class Root {
private Component1 c1 = new Component1();
private Component2 c2 = new Component2();
private Component3 c3 = new Component3();
public Root() {
System.out.println("Root");
System.out.println("Root->c1");
System.out.println("Root->c2");
System.out.println("Root->c3");
}
}
package net.mindview.reusing;
public class Component1 {
public Component1() {
System.out.println("Component1");
}
}
package net.mindview.reusing;
public class Component2 {
public Component2() {
System.out.println("Component2");
}
}
package net.mindview.reusing;
public class Component3 {
public Component3() {
System.out.println("Component3");
}
}
package net.mindview.reusing;
public class Stem extends Root {
private Component1 c1 = new Component1();
private Component2 c2 = new Component2();
private Component3 c3 = new Component3();
public Stem() {
System.out.println("RootChild");
System.out.println("Stem->c1");
System.out.println("Stem->c2");
System.out.println("Stem->c3");
}
public static void main(String[] args) {
Root t = new Stem();
}
}
- (略)可参考总结中的第5点,使用代理模式。
- (略)
- (略)
- (略)
- 在Car.java中给Engine添加一个service(),并在main()中调用该方法。
package net.mindview.reusing;
class Engine {
public void start(){}
public void rev(){}
public void stop(){}
public void Service() {
System.out.println("Engine.Service");
}
}
class Wheel {
public void inflate(int psi){}
}
class Window{
public void rollup(){}
public void rolldown(){}
}
class Door{
public Window window = new Window();
public void open(){}
public void close(){}
}
public class Car {
public Engine engine = new Engine();
public Wheel[] wheels = new Wheel[4];
public Door left = new Door(),right = new Door();
public Car(){
for(int i=0;i<4; i++){
wheels[i] = new Wheel();
}
}
public static void main(String[] args) {
Car car = new Car();
car.left.window.rollup();
car.wheels[0].inflate(72);
car.engine.Service();
}
}
- (略)
- 创建一个名为Amphibian的类,由此继承产生一个成为Frog的类,在基类中设置适当的方法,在main()中,创建一个Frog向上转型至Amphibian, 然后说明所有方法都可工作
package net.mindview.reusing;
//两栖动物
class Amphibian{
//交配
public void mating(Amphibian amphibian){
System.out.println("两栖动物交配");
}
}
//青蛙
public class Frog extends Amphibian{
public static void main(String[] args) {
Frog frog = new Frog();
frog.mating(frog);
}
}
- 修改练习16,使Frog覆盖基类中方法的定义。请留心main中都发生了什么
package net.mindview.reusing;
//两栖动物
class Amphibian{
//交配
public void mating(Amphibian amphibian){
System.out.println("两栖动物交配");
}
}
//青蛙
public class Frog extends Amphibian{
public void mating(Frog frog){
System.out.println("青蛙交配");
}
public static void main(String[] args) {
Frog frog = new Frog();
frog.mating(frog);
}
}
- (略)
- (略)
- [喵咪Redis]Redis安装与介绍
- [喵咪Liunx(4)Monit进程监控
- 【第四期】GC专题
- ML中相似性度量和距离的计算&Python实现
- ASP.NET MVC Model元数据及其定制: Model元数据的定制
- 小白也可以操作的手机TensorFlow教程:Android版和iOS版
- PhalApi-PHPExcel基于PhalApi的PHPExcel拓展
- [喵咪软件推荐(2)]全球服务器测速工具speedtest-cli
- 使用Keras创建一个卷积神经网络模型,可对手写数字进行识别
- 新生代的垃圾回收:Copy GC之基本原理
- [喵咪软件推荐(1)]全球国家信息库
- 一文教你在Python中打造你自己专属的面部识别系统
- [喵咪Liunx(6)]Nginx日志分析工具goaccess
- 用Atomic实现锁
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Ts安装及自动编译ts文件
- python 自动化测试(1):获取验证码图片,实现自动登录
- RocketMQ学习第一步之源码构建
- python 库学习之:openpyxl
- python 学习之:读取xml配置文件
- 我的C语言入门笔记~!
- 宜信OCR技术探索之版面分析业务实践|技术沙龙直播速记
- python 学习之:将字符串转换成变量,调用该变量实例对象的方法
- iOS 登录接口封装实践
- 机器学习模型部署—PMML
- 「文档数据库之争」MongoDB和CouchDB的比较
- 【Python】【爬虫】最近想买电脑,用Python爬取京东评论做个参考
- 新手如何快速入门Python
- 10行Python代码自动清理电脑内重复文件,解放双手!
- 模型评价指标—KS