Java编程思想第四版*第七章*个人练习

练习1:(2)创建一个简单的类。第二个类中,将一个引用定义为第一个类的对象。运用惰性初始化来实例化 这个对象。

package test;

public class Manager {

	public static void main(String args[]){
		Second s=new Second();
		s.getFirst();
	}
	/**
	 * 打印结果:

	 */
}
class First{
}
class Second{

	First f;

	Second(){
		System.out.println("Creating Second");
	}

	First lazy(){
		if(f==null){
			 System.out.println("Creating First");
			f=new First();
		}
		return f;
	}

	public First getFirst(){
		return lazy();
	}
}

练习2:(2)从Detergent中继承产生一个新的类。覆盖scrub()并添加一个名为sterilize()的新方法。

package test;

public class Manager {

	public static void main(String args[]){
		Sub s=new Sub();
		s.apply();s.dilute();s.foam();s.scrub();s.sterilize();
		new print(s);
	}

	/**
	 * 打印结果:
		Cleanser apply() dilute() foam() sub.scrub Detergent.scrub()sub.sterilize()
	 */
}
class print{
	print(Object obj){
		System.out.println(obj);
	}
}
class Cleanser{
	private String s="Cleanser";
	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;
	}
	public static void main(String[] args){
		Cleanser x=new Cleanser();
		x.dilute();x.apply();x.scrub();
		new print(x);
	}
}
class Detergent extends Cleanser{
	public void scrub(){
		append(" Detergent.scrub()");
	}
	public void foam(){
		append(" foam()");
	}

}
class Sub extends Detergent{
	public void scrub(){
		append(" sub.scrub");
		super.scrub();
	}
	public void sterilize(){
		append("sub.sterilize()");
	}
}
时间: 2024-12-25 01:07:17

Java编程思想第四版*第七章*个人练习的相关文章

『Java编程思想-第四版』第二章:一切都是对象

Java编程思想-第四版学习总结,此为第二章:一切都是对象. package com.w3cjava.second; @SuppressWarnings("all") public class Second { /** * Java编程思想(第四版) * 第2章 一切都是对象 * @param args */ public static void main(String[] args) { /** * 2.1 用引用操作对象 * 遥控器(引用)操作电视机(对象),改变音量,改变频道 *

java编程思想 第四版 第六章 个人练习

练习1:(1)在某个包中创建一个类,在这个类所处的包的外部创建该类的一个实例. import mil.oms.main.test.Test; public class MainTest { public static void main(String args[]){ Test test=new Test(); } /** 运行结果 Test()实例化-- */ } package mil.oms.main.test; public class Test{ public Test(){ Syst

java编程思想第四版第五章习题

创建一个类, 它包含一个未初始化的String引用.验证该引用被Java初始化成了null package net.mindview.initialization; public class Test1 { public String str; public static void main(String[] args) { Test1 t = new Test1(); System.out.println(t.str); } } 返回结果 null 创建一个类, 它包含一个在定义时就被初始化了

Java编程思想第四版 *第五章 个人练习

练习3:(1)创建一个带默认构造器(即无參构造器)的类.在构造器中打印一条消息.为这个类创建一个对象.P116 public class Test{ public Test(){ System.out.println("Hello Word"); } public static void main(String[] args) { new Test(); } /** * 执行结果 Hello Word */ } 练习4:(1)为前一个练习中的类加入一个重载构造器,令其接受一个字符參数.

java编程思想第四版第9章

练习3: public class MainTest { public static void main(String args[]){ Bcycle b=new Bcycle(); b.print(); } /** * 输出: * --Bcycle-------47 * ----print-----47 */ public static void p(String str){}; } abstract class Cycle{ public abstract void print(); } c

JAVA编程思想第四版第10章

练习1 /** * 第10章 * 练习1 * @author zhtt * */ public class Test { public static void main(String[] args) { Outer outer=new Outer(); Outer.Inner inner=outer.getInner(); System.out.println(inner); /** * 输出: * [email protected] */ } } class Outer{ class Inne

java编程思想第四版中net.mindview.util包下载,及源码简单导入使用

在java编程思想第四版中需要使用net.mindview.util包,大家可以直接到http://www.mindviewinc.com/TIJ4/CodeInstructions.html 去下载,并按照所在页面的操作进行操作.当然也可以直接我下载下面的链接,下载的直接是JAR包,可以直接导入并使用: net.mindview.util包:百度网盘:点击下载  密码: ggpi java编程思想第四版源码:百度网盘:点击下载  密码: ur3e 下面我简单的介绍一下源码在Eclipse中的导

Java编程思想第四版读书笔记——第十三章 字符串

Java编程思想第四版读书笔记--第十三章 字符串 字符串的操作是计算机程序设计中最常见的行为. 关键词: StringBuilder ,StringBuffer,toString(),format转换,正则表达式, 1.不可变String String对象时不可变的.每当把String对象作为方法的参数时,都会复制一份引用.(其实就是对函数中参数列表中参数的操作不会影响外面的原参数) 如下: import static net.mindview.util.Print.*; public cla

Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(二)之Introduction to Objects

The genesis of the computer revolution was a machine. The genesis of out programming languages thus tends to look like that machine. 计算机革命起源于机器,因此编程语言的产生也始于对机器的模仿 Computers are mind amplification tools and a different kind of expressive medium. 计算机是大