java接口

1.
public interface TestIn {     //接口
    int ID=1;//public static final int ID=1;
    void test();//public abstract void test();
}
2.
public interface TestIn1 {
    void test1();
}
3.
public interface TestIn2 extends TestIn1 {//接口可以继承接口
}
4.
//子类继承父类只能继承一个
// 但是子类可以实现多个接口,多个接口用“逗号”分隔
public class TestInImpl implements TestIn,TestIn1 {
    @Override
    public void test(){ 
    }
    @Override
    public void test1() {
    }
}
5.
public abstract class TestInImpl1 implements TestIn {//如果类没有实现接口的所有方法,那么这个类就要定义为抽象类
}

6.
//若一个类既继承父类又实现接口那么先继承再实现
public class TestInImpl2 extends TestInImpl implements TestIn,TestIn1,TestIn2 {
    
}

例子
在这里插入图片描述

public abstract class Person {
    int age;
    String name;
    int sex;
    public abstract void showInfo();
}
public interface Cooking {
    void fry();
}
public interface Sing {
    void singing();
}

public class SCTeacher extends Person implements Cooking,Sing {
    String course;

    public void setInfo(){
        super.age=14;
        super.name="布洛尼亚";
        super.sex=0;
        this.course="如何黑掉系统";
    }
    public void showInfo() {
        System.out.println("会唱歌的厨子老师信息是");
        System.out.println(super.sex);
        System.out.println(super.age);
        System.out.println(super.name);
        System.out.println(this.course);
    }
    public void fry() {
        System.out.println(super.name+"想喝希尔的甜菜汤");
    }
    public void singing() {
        System.out.println(super.name+"你也想听布洛尼亚唱的爱河吗");
    }

    public static void main(String[] args) {
        SCTeacher sct=new SCTeacher();
        sct.setInfo();
        sct.showInfo();
        sct.fry();
        sct.singing();
    }

}
运行结果:



会唱歌的厨子老师信息是
0
14
布洛尼亚
如何黑掉系统
布洛尼亚想喝希尔的甜菜汤
布洛尼亚你也想听布洛尼亚唱的爱河吗

Process finished with exit code 0
接口的其他问题

public static void main(String[] args) {
        Cooking c=new SCTeacher();//可以用接口来接收
        c.fry();//但是只能访问当前接口自己的方法
    
    }

总结:抽象类是对一类具体事务的高度抽象其中既有属性又有方法;
接口是对方法的抽象,也就是对于一系列动作的抽象。
当需要对一类事物抽象的时候应该使用抽象类,好形成一个父类;
当需要对一系列动作抽象,就使用接口,需要使用这些动作的类去实现相应的接口即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值