面向对象第5章

编码创建一个打印机类Printer,定义抽象方法print();创建两个子类,即针式打印机类DotMatrixPrinter和喷墨打印机类,并在各自类中重写方法print(),编写测试类实现两个打印机打印。在添加一个激光打印机子类LaserPrinter,重写方法print(),修改测试类实现该打印机打印。
package com.bdqn.printer;

public abstract class Printer {
	public abstract void print();
}
package com.bdqn.printer;

public class DotMatrixPrinter extends Printer{

	@Override
	public void print() {
		// TODO Auto-generated method stub
		System.out.println("针式打印机");
	}
		
}
package com.bdqn.printer;

public class InkpetPeinter extends Printer{

	@Override
	public void print() {
		// TODO Auto-generated method stub
		System.out.println("喷墨打印机");
	}
		
}
package com.bdqn.printer;

public class LaserPrinter extends Printer{

	@Override
	public void print() {
		// TODO Auto-generated method stub
		System.out.println("激光打印机");
	}

}
package com.bdqn.printer;

public class Test {
	public static void main(String[] args) {
		
	
		Printer dd = new DotMatrixPrinter();
		dd.print();
		Printer in = new InkpetPeinter();
		in.print();
		Printer la = new LaserPrinter();
		la.print();
	}	
}

请使用多条实现以下需求;牛犇又两个很要好的朋友,一个是来自中国的王小强,喜欢出四川菜,练来集权;一个是美国的约翰,喜欢吃披萨,打橄榄球。每当朋友来拜访时牛犇时,牛犇都会按个人的喜好招待他们。

package com.bdqn.niu;

public abstract class NiuBan {
		String name;
		String cai;
		public String getCai() {
			return cai;
		}
		public void setCai(String cai) {
			this.cai = cai;
		}
		String hobby;
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public String getHobby() {
			return hobby;
		}
		public void setHobby(String hobby) {
			this.hobby = hobby;
		}
		public abstract void print();
}
package com.bdqn.niu;

public class China extends NiuBan{

	@Override
	public void print() {
		// TODO Auto-generated method stub
		System.out.println("一个来自中国"+this.getName()+",喜欢吃"+this.getCai()+",喜欢打"+this.getHobby());
	}

}
package com.bdqn.niu;

public class USA extends NiuBan{

	@Override
	public void print() {
		// TODO Auto-generated method stub
		System.out.println("一个来自美国"+this.getName()+",喜欢吃"+this.getCai()+",喜欢打"+this.getHobby());
	}

}
package com.bdqn.niu;

import java.util.Scanner;

public class Test {
		public static void main(String[] args) {
			NiuBan nn = new China();
			nn.cai="四川菜";
			nn.hobby="练太极拳";
			nn.name="王小强";
			NiuBan bb = new USA();
			bb.cai="披萨";
			bb.hobby="打橄榄球";
			bb.name="约翰";
			Scanner input = new Scanner(System.in);
			System.out.println("请问是哪国朋友来拜访(1.中国人2.美国人)");
			String name = input.next();
			if(name=="中国人") {
				nn.print();
			}else{
				bb.print();
			}
		}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值