JAVA OOP 第四章 接口
来源:互联网 发布:js给集合添加元素 编辑:程序博客网 时间:2024/06/14 08:38
package cn.happy1.cn;public class Data implements IFly{@Overridepublic void code() {System.out.println("code");}}
package cn.happy1.cn;public interface IFly {public void code();}
package cn.happy1.cn;public interface IWiter {public void debug();}
package cn.happy1.cn;public class Some implements IFly,IWiter{@Overridepublic void debug() {System.out.println("我会俩个 debug");}@Overridepublic void code() {System.out.println("wo shu code");}}
package cn.happy1.cn;public class Test {public static void main(String[] args) {// TODO Auto-generated method stub IFly[] i=new IFly[2]; i[0]=new Some(); i[1]=new Data(); for(IFly item:i){ item.code(); }}}
=======================================================================================================================================================================
package cn.happy2.cn;public class Bird implements IFly{@Overridepublic void Fly() {}@Overridepublic void eat() {}}
package cn.happy2.cn;public interface IFly { void Fly(); void eat();}
package cn.happy2.cn;public class Main {public static void main(String[] args) {// TODO Auto-generated method stub}}
package cn.happy2.cn;public interface Utility {public void show();}
==============================================================================================================================================
package cn.happy3.cn;public abstract class Door {public abstract void open();public abstract void close();}
package cn.happy3.cn;public interface DoorBell {void takePictures();}
package cn.happy3.cn;public interface Lock {void lockup();void openLock();}
package cn.happy3.cn;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubTheftproofDoor t=new TheftproofDoor();t.close();t.lockup();t.takePictures();t.openLock();t.open();}}
package cn.happy3.cn;public class TheftproofDoor extends Door implements Lock,DoorBell{@Overridepublic void lockup() {// TODO Auto-generated method stubSystem.out.println("插进钥匙,向左旋转3圈,锁上了,拔出钥匙");}@Overridepublic void openLock() {// TODO Auto-generated method stubSystem.out.println("插进钥匙,向优旋转3圈,锁打开了,拔出钥匙");}@Overridepublic void open() {// TODO Auto-generated method stubSystem.out.println("用力推,门打开了");}@Overridepublic void close() {// TODO Auto-generated method stubSystem.out.println("使劲关,门关上了");}@Overridepublic void takePictures() {// TODO Auto-generated method stubSystem.out.println("铃。。。。。。咔嚓。。。照片已储存");}}
================================================================================================================================================
package cn.happy4.cn;public class AptitudeHandset extends Handset implements Internet,PlayWiring{public AptitudeHandset(String Brand,String type){super(Brand,type);}@Overridepublic void inter() {// TODO Auto-generated method stubSystem.out.println("你已经启动了上网功能");}@Overridepublic void Play(String incontent) {// TODO Auto-generated method stubSystem.out.println("音乐");}@Overridepublic void sendinfo() {// TODO Auto-generated method stubSystem.out.println("发短信");}@Overridepublic void call() {// TODO Auto-generated method stubSystem.out.println("打电话");}@Overridepublic void info() {// TODO Auto-generated method stubSystem.out.println("手机类型为"+getType()+"手机品牌为"+getBrand());}}
package cn.happy4.cn;public class ComminHandset extends Handset implements PlayWiring{public ComminHandset(String Brand,String type){super(Brand,type);}@Overridepublic void sendinfo() {// TODO Auto-generated method stubSystem.out.println("发短信");}@Overridepublic void call() {// TODO Auto-generated method stubSystem.out.println("打电话");}@Overridepublic void info() { System.out.println("手机类型为"+getType()+"手机品牌为"+getBrand());}@Overridepublic void Play(String incontent) {// TODO Auto-generated method stubSystem.out.println("正在播放音乐"+incontent);}}
package cn.happy4.cn;public abstract class Handset {private String type;//类型private String Brand;//品牌public Handset(){}public Handset(String type,String Brand){this.type=type;this.Brand=Brand;}public abstract void sendinfo(); public abstract void call();//打电话 public abstract void info();//描述手机public String getType() {return type;}public void setType(String type) {this.type = type;}public String getBrand() {return Brand;}public void setBrand(String brand) {Brand = brand;}}
package cn.happy4.cn;public interface Internet {public void inter();}
package cn.happy4.cn;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubHandset ha=new ComminHandset("G502c","索尼爱立信");ha.info();ha.call();System.out.println();AptitudeHandset hb=new AptitudeHandset("华为","dd");hb.info();hb.call();hb.inter();}}
package cn.happy4.cn;/** * 播放能力 * */public interface PlayWiring {void Play(String incontent);}
package cn.happy4.cn;public interface TheakPictures {public void Photos();}
========================================================================================================================================================================
package cn.happy5.cn;public class Computer {CPU cpu;EMS ems;HardDisk harddisk;public Computer(){} public void showinfo(){System.out.println("计算机的信息如下:"+ "CPU的品牌是:"+cpu.getCPUBrand()+",主频是:"+cpu.getFrequency()+" GHz "+ "硬盘容量是:"+harddisk.getCapacity()+"内存容量是:"+ems.getSize()+"G"); /* System.out.println("CPU的品牌是:"+cpu.getCPUBrand()+",主频是:"+cpu.getFrequency()+"GHZ");System.out.println("硬盘容量是:"+harddisk.getCapacity());System.out.println("内存容量是:"+ems.getSize()+"G");*/}public Computer(CPU cpu, EMS ems, HardDisk harddisk) {super();this.cpu = cpu;this.ems = ems;this.harddisk = harddisk;}public void getCapacity(HardDisk harddisk) {this.harddisk=harddisk;}public void getSize(EMS ems) {this.ems=ems;}public void getCPUBrand(CPU cpu) {this.cpu=cpu;}public void getFrequency(CPU cpu) {this.cpu=cpu;}}
package cn.happy5.cn;public interface CPU {//品牌String getCPUBrand();//主频Float getFrequency();}
package cn.happy5.cn;public class CS implements CPU,EMS,HardDisk{@Overridepublic int getCapacity() {// TODO Auto-generated method stubreturn 100;}@Overridepublic String getEMSType() {// TODO Auto-generated method stubreturn "haha";}@Overridepublic int getSize() {// TODO Auto-generated method stubreturn 1000;}@Overridepublic String getCPUBrand() {// TODO Auto-generated method stubreturn "Inter";}@Overridepublic Float getFrequency() {// TODO Auto-generated method stubreturn (float)3.8;}}
package cn.happy5.cn;public interface EMS {//内存类型String getEMSType();//内存容量int getSize();}
package cn.happy5.cn;public interface HardDisk {//获取硬盘容量大小int getCapacity();}
package cn.happy5.cn;public class Test {public static void main(String[] args) {System.out.println("计算机的信息如下:");CPU cpu=null;EMS ems=null;HardDisk harddisk=null; harddisk=new CS(); cpu=new CS(); ems=new CS();Computer computer=new Computer();computer.getCPUBrand(cpu);computer.getFrequency(cpu);computer.getSize(ems);computer.getCapacity(harddisk);computer.showinfo();}}
package cn.happy6.cn;public class A4Paper implements Paper {@Overridepublic String getSize() {// TODO Auto-generated method stubreturn "A4";}}
package cn.happy6.cn;public class B5Paper implements Paper{@Overridepublic String getSize() {// TODO Auto-generated method stubreturn "B5";}}
package cn.happy6.cn;public class ColorInkBox implements InkBox{@Overridepublic String getColor() {// TODO Auto-generated method stubreturn "彩色";}}
package cn.happy6.cn;public class GrayInkBox implements InkBox{@Overridepublic String getColor() {// TODO Auto-generated method stubreturn "黑白";}}
package cn.happy6.cn;public interface InkBox {public String getColor();}
package cn.happy6.cn;public interface Paper { public String getSize();}
package cn.happy6.cn;public class Printer {InkBox inkbox;Paper paper;public void print(){System.out.println("使用"+inkbox.getColor()+"墨盒在 "+paper.getSize()+"纸张上打印。");}public InkBox getInkbox() {return inkbox;}public Paper getPaper() {return paper;}public Printer() {super();// TODO Auto-generated constructor stub}public Printer(InkBox inkbox, Paper paper) {super();this.inkbox = inkbox;this.paper = paper;}public void setPaper(Paper paper) {this.paper = paper;}public void setInkBox(InkBox inkbox) {this.inkbox = inkbox;}}
package cn.happy6.cn;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubInkBox inkbox=null;Paper paper=null;Printer printer=new Printer();inkbox =new GrayInkBox();paper=new A4Paper();printer.setInkBox(inkbox);printer.setPaper(paper);printer.print();inkbox=new ColorInkBox();paper=new B5Paper();printer.setInkBox(inkbox);printer.setPaper(paper);printer.print();paper=new A4Paper();printer.setPaper(paper);printer.print();}}
========================================================================================================================================================
package cn.happy7.cn;public interface Animal {void shout();}
package cn.happy7.cn;public class Cat implements Animal{@Overridepublic void shout() {System.out.println("W W!");}}
package cn.happy7.cn;public class Dog implements Animal{public void shout(){System.out.println("W W!");}}
package cn.happy7.cn;public class Pig implements Animal{public void shout() {System.out.println("pig");}}
package cn.happy7.cn;public class Store {public static Animal get(String choice){if(choice.equalsIgnoreCase("dog")){return new Dog();}else if(choice.equalsIgnoreCase("pig")){return new Pig();}else{return new Cat();}}}
package cn.happy7.cn;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubAnimal al=Store.get("pig");al.shout();}}
=======================================================================================================================================================
package cn.happy8.cn;public class Dog extends Pet implements Eatable,FlyingDiscCatchable{public Dog() {super();// TODO Auto-generated constructor stub}@Overridepublic void catchingFlyDisc() {// TODO Auto-generated method stubsuper.love+=5;super.health-=10;System.out.println("狗狗"+super.name+"正在玩飞盘,与主人的亲密度:"+super.love+",健康值:"+super.health);}@Overridepublic void eat() {// TODO Auto-generated method stubsuper.health+=10;System.out.println("狗狗"+super.name+"正在吃饭,健康值:"+super.health);}public void print(){System.out.println("我的姓名为"+super.name+"与主人的亲密度:"+super.love+",健康值:"+super.health);}}
package cn.happy8.cn;public interface Eatable {//吃饭功能public abstract void eat();}
package cn.happy8.cn;public interface FlyingDiscCatchable {//接飞盘功能public abstract void catchingFlyDisc();}
package cn.happy8.cn;public class Penguin extends Pet implements Eatable,Swimmable{@Overridepublic void swim() {// TODO Auto-generated method stubsuper.love+=5;super.health-=10;System.out.println("企鹅"+super.name+"正在游泳,与主人的亲密度:"+super.love+",健康值:"+super.health);}@Overridepublic void eat() {// TODO Auto-generated method stubsuper.health+=10;System.out.println("企鹅"+super.name+"正在吃饭,健康值:"+super.health);}public void print(){System.out.println("我的姓名为"+super.name+"与主人的亲密度:"+super.love+",健康值:"+super.health);}public Penguin() {super();// TODO Auto-generated constructor stub}}
package cn.happy8.cn;public abstract class Pet {public String name;public int health;public int love;public abstract void print();}
package cn.happy8.cn;public interface Swimmable {//游泳功能public abstract void swim();}
package cn.happy8.cn;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubDog dog=new Dog();Penguin penguin=new Penguin();penguin.name="啦啦";penguin.print();dog.name="闹闹";dog.print();dog.catchingFlyDisc();dog.eat(); }}
========================================================================================================
0 1
- JAVA OOP 第四章 接口
- OOP/第四章 借口
- Java第四章接口
- [Effective Java]第四章 类和接口
- Java第四课:接口
- 《Java核心技术(卷一)》读书笔记——第四章:OOP
- java-OOP-抽象类和接口
- 第四章 接口
- 第四章 接口
- 第四章 接口
- JAVA 学习日记(3).OOP继承,java.util包,OOP接口实现多态,输入输出流,
- JAVA OOP 第二章继承
- JAVA OOP第三章 多态
- JAVA OOP第六章 异常
- java oop 第十章 IO
- Java oop 第十一章 CMS
- java oop 第十二章宠物商店
- Java本地接口(JNI)编程指南和规范(第四章)
- EventBus使用详解
- matlab kmeans 代码
- Node.js安装及环境配置之Windows篇
- .gitignore 的使用
- Hexo搭建github博客绑定顶级域名和www子域名
- JAVA OOP 第四章 接口
- Linux下安装mysql
- Linux c 贪吃蛇 无curses、多线程、信号的实现
- 阿里云 Ubuntu 14.04 安装mysql 5.6
- 算法提高 3-3求圆面积表面积体积
- SDN是什么?
- POJ
- Jmeter时间格式化
- 网站架构演变