A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 实践出真知 中级黑马   /  2015-1-28 22:21  /  1399 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
猫狗案例,加入跳高的额外功能
       
        分析:从具体到抽象
                猫:
                        姓名,年龄
                        吃饭,睡觉
                狗:
                        姓名,年龄
                        吃饭,睡觉
                       
                由于有共性功能,所以,我们抽取出一个父类:
                动物:
                        姓名,年龄
                        吃饭();
                        睡觉(){}
                       
                猫:继承自动物
                狗:继承自动物
               
                跳高的额外功能是一个新的扩展功能,所以我们要定义一个接口
                接口:
                        跳高
                       
                部分猫:实现跳高
                部分狗:实现跳高
        实现;
                从抽象到具体
               
        使用:
                使用具体类
                */
        //定义一个接口
interface Jumping
{
        public abstract void jump();
}
abstract class Animals
{
        //名字
        private String name;
        //年龄
        private int age;
        //无参和有参构造函数
        public Animals(){}
        public Animals(String name,int age)
        {
                this.name=name;
                this.age=age;
        }
        public void setAge(int age)
        {
                this.age=age;
        }
        public int getAge()
        {
                return age;
        }
        public void setName(String name)
        {
                this.name=name;
        }
        public String getName()
        {
                return name;
        }
        public abstract void eat();
        public void sleep()
        {
                System.out.println("jjjjj");
        }
}

class Dog extends Animals
{
        public Dog(){}
        public Dog(String name,int age)
        {
                super(name,age);
        }
        public void eat()
        {
                System.out.println("狗吃肉");
        }
}
class Cat extends Animals
{
        public Cat(){}
        public Cat(String name,int age)
        {
                super(name,age);
        }
        public void eat()
        {
                System.out.println("猫吃鱼");
        }
}
class CatI extends Cat implements Jumping
{
        public CatI(){}
        public CatI(String name,int age)
        {
                super(name,age);
        }
        public  void jump()
        {
                System.out.println("ooooo");
        }
}
class DogI extends Dog implements Jumping
{
        public DogI(){}
        public DogI(String name,int age)
        {
                super(name,age);
        }
        public  void jump()
        {
                System.out.println("hhhhh");
        }
}
class TestInterface
{
        public static void main(String []args)
        {
                DogI d=new DogI("加菲猫",9);
                System.out.println(d.getName()+"======"+d.getAge());
                d.eat();
                d.sleep();

        }
}

1 个回复

倒序浏览
都是看视频的人
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马