零EVA

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

接口的初期理解:可以认为是一个特殊的抽象类

当抽象类中的方法都是抽象的,该类可以通过接口的方式来表示


calss用于定义类
interface用于定义接口

接口定义时的格式特点:

  1. 接口中的常见定义:常量,抽象方法
  2. 接口中的成员都有固定修饰符
    常量:public static final
    方法:public abstract

记住:接口中的成员都是public的

接口是不可以创建对象的,因为有抽象方法,需要被子类实现,子类对接口中的抽象方法全部覆盖后才能实例化
否则子类是一个抽象类

interface Inter
{
    public static final int NUM = 3;//public static final可以省略,效果一样
    public abstract void show();//abstract可以省略,效果一样
}

class Test implements Inter//用implements而不是extends
{
    public void show(){}
}

class InterfaceDemo
{
    public static void main(String[] args)
    {
        Test t = new Test();
        System.out.println(t.NUM);
        System.out.println(Inter.NUM);
        System.out.println(Test.NUM);
    }
}

接口是用来功能扩展的,由后期子类来实现
基本功能在类中,扩展功能在接口中

abstract class Student
{
    abstract void study();
    void sleep()
    {
        System.out.println("sleep");
    }
}
interface Somking
{
    public abstract void smoke();
}
class SmokeStudent extends Student implements Somking
{
    void study(){}
    public void smoke(){}//体系以外的功能扩展
}
class NoSmokeStudent extends Student
{
    void study(){}
}

 

posted on 2017-06-09 16:26  零EVA  阅读(141)  评论(0)    收藏  举报