• JAVA面向接口编程课堂练习(马戏团)


    在这里插入图片描述

    package com;
    
    public interface IAction {
        public void show();
        public void lan(); 
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    package com;
    
    public interface IAnimal  extends IAction{
    	   
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    package com;
    
    public abstract class Actor implements IAnimal{
        public String name;
    	@Override
    	public abstract void show() ;
    
    	@Override
    	public abstract void lan() ;
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    package com;
    
    public class Dog extends Actor{
     
    	public Dog() {
    		this.name="狗";
    	}
    	
    	@Override
    	public void show() {
    		// TODO Auto-generated method stub
    		System.out.println("狗狗开始表演,背上小背篓,站立行走");
    	}
    
    	@Override
    	public void lan() {
    		// TODO Auto-generated method stub
    		System.out.println("看图识数,汪汪汪");
    	}
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    package com;
    
    public class Monkey extends Actor {
    
    	public Monkey() {
    		this.name="猴子";
    	}
    	
    	
    	@Override
    	public void show() {
    		// TODO Auto-generated method stub
    		System.out.println("猴子开始表演,跳钢圈,走钢丝");
    	}
    
    	@Override
    	public void lan() {
    		// TODO Auto-generated method stub
    		System.out.println("拉着你的手,亲爱的你别走!");
    	}
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    package com;
    
    public class Circus {
       //定义马戏团
       private Actor act;
       
       public void enter(Actor act) {
    	   this.act=act;
    	   System.out.println(this.act.name+"进场啦");
       }
    	
       public void show() {	   
    	   this.act.show();	   
       }
       
       public void lan() {
    	   this.act.lan();	   
       }
       
    	
    	
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    package com;
    
    public class TestPlay {
    
    	public static void main(String[] args) {
    		Circus c=new Circus();   //马戏团创建		
    		Monkey mon=new Monkey();
    		Dog dog=new Dog();		
    		//		c.enter(mon);   //猴子进场		
    				c.show();
    		//		c.lan();			
    		c.enter(dog);   //狗进场
    		c.show();
    		c.lan();
    	}
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    狗进场啦
    狗狗开始表演,背上小背篓,站立行走
    看图识数,汪汪汪
    
    • 1
    • 2
    • 3
  • 相关阅读:
    C++异步变化:libunifex实现!
    使用JS脚本打开多个网页的方法
    线性代数(三) | 向量组的秩 线性相关无关 几何直观理解 题解应用
    详细讲解磁盘及文件系统管理(图例解析)
    14 STL-常用算法
    我的十年编程路 序
    一文了解Spring Boot启动类SpringApplication
    100天精通Python(基础篇)——第13天:对表达式进行格式化
    mysql数据库的授权访问
    2118. Build the Equation
  • 原文地址:https://blog.csdn.net/Climbman/article/details/138213823