黑马程序员之接口
接口就是一种规则,是对行为的抽象。


例题:

代码实现:
父类Animal:
package Demon01;
public abstract class Animal {//抽象方法所在的类必须是抽象类
private String name;
private int age;
public Animal(){
}
public Animal(String name,int age){
this.name=name;
this.age=age;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age=age;
}
public abstract void eat();//没有方法体的方法是抽象方法
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000");
接口Swim:
package Demon01;
public interface Swim {
public abstract void swim();//游泳的接口
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000");
子类Rabbit:
package Demon01;
public class Rabbit extends Animal{
public Rabbit(){
}
public Rabbit(String name,int age){
super(name,age);
}
@Override
public void eat() {//点击红色波浪线,alt加回车点击第一个—重写
System.out.println("兔子在吃胡萝卜");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000");
子类Frog:
package Demon01;
public class Frog extends Animal implements Swim{
public Frog() {//alt加insert键,选择constructor,然后全选,把构造方法搞出来。
}
public Frog(String name, int age) {
super(name, age);
}
@Override
public void eat() {
System.out.println("青蛙在吃虫子");
}
@Override
public void swim() {
System.out.println("青蛙在蛙泳");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000");
子类Dog:
package Demon01;
public class Dog extends Animal implements Swim {
public Dog(){
}
public Dog(String name ,int age){
super(name,age);
}
@Override
public void eat() {
System.out.println("狗在吃骨头");
}
@Override
public void swim() {
System.out.println("狗在狗刨游泳");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000");
实现类Test:
package Demon01;
public class Test {
public static void main(String[] args) {
//创建一个青蛙的对象
Frog f=new Frog("小青",1);
System.out.println(f.getName()+","+f.getAge());
f.eat();
f.swim();
Rabbit r=new Rabbit("小白",2);
System.out.println(r.getName()+","+r.getAge());
r.eat();
}
}
运行结果:
小青,1
青蛙在吃虫子
青蛙在蛙泳
小白,2
兔子在吃胡萝卜

浙公网安备 33010602011771号