手记

自己上手练习接口的使用

People.java

package com.yjp;

public abstract class People { 
    public abstract void people();//人类
}

Man.java

package com.yjp;

/**
 * @author Administrator
 *
 */
public class Man extends People implements  IEat {

    /* (非 Javadoc)
     * @see com.yjp.People#people()
     */
    public void people() {
        // TODO 自动生成的方法存根
        System.out.println("man");

    }
    public void eat(){
        System.out.println("man具有吃的能力");
    }

}

Woman.java

package com.yjp;

public class Woman extends People implements IEat{

    @Override
    public void people() {
        // TODO 自动生成的方法存根
        System.out.println("woman");

    }

    @Override
    public void eat() {
        // TODO 自动生成的方法存根
        System.out.println("woman具有吃的能力");

    }

}

Main.java

package com.yjp;

public class Main {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        People people = new Man();
        people.people();
        IEat eat1 = new Man();
        eat1.eat();

        People people2 = new Woman();
        people2.people();
        IEat eat2 = new Woman();
        eat2.eat();

        IEat eat3 = new Dog();
        eat3.eat();

        //使用匿名内部类的方式实现接口,例:
        new IEat(){

            @Override
            public void eat() {
                // TODO 自动生成的方法存根
                System.out.println("使用匿名内部类的方式实现接口");
            }   
        }.eat();

    }

}

IEat.java

package com.yjp;

public interface IEat {
    public void eat();
}

Dog.java

package com.yjp;

public class Dog implements  IEat {

    @Override
    public void eat() {
        // TODO 自动生成的方法存根
        System.out.println("Dog具有吃的能力");

    }

}

看视频后感觉自己已经会了,上手自己练习一下才发现有很多问题,比如:
让一个子类继承一个抽象类,明明已经在子类里实现了抽象类的方法,可是还是报错,看了一遍又一遍的代码还是没发现有错的代码;原来是抽象类没保存。。。
这里就说一个例子了,实际我在练习的时候还有很多其他的小问题,你(这里的你其实是在说我自己,嘿嘿)自己不上手练习还真以为自己已经什么都会了。

1人推荐
随时随地看视频
慕课网APP