面向对象(抽象)(接口)

  抽象类

  在Java语言中使用abstract class来定义抽象类。

  例如:public abstract class A{

        ......

      }

  尽管类A是抽象类,但是它仍然可以有成员变量、成员方法和构造方法。

  1.抽象类的注意点:不能被实例化

          可以被继承

  2.声明抽象方法会要注意:如果一个类包含抽象方法,那么该类必须是抽象类

                任何子类必须重写父类的抽象方法,或者声明自身为抽象类   

               构造方法、类方法(用static修饰的方法)不能声明为抽象方法

 

 

  接口

  所谓的接口(interface),实际上就是常量和抽象方法组成的特殊的类

  一个类实现了某个接口时,并不能直接使用接口中的常量和方法来实现所需要的功能

 

  接口定义的语法格式如下:

    [访问控制修饰符] interface 接口名 [extends 接口列表]{

     常量

     抽象方法

}

  访问控制修饰符的要求与类的一致,只能使用public和default(在使用default时,访问控制修饰符可以不写)

         -------注意:在使用default时接口只能被同一个包的类使用,public可以被任意一个类使用

 

  接口:接口名同标识符

     接口页时可以继承的,其语法与类的继承是一样的

     与类继承的区别在于一个接口可以有多个父接口,这些父接口之间用逗号" , "隔开,形成父接口列表。

 

  接口的特性:接口不可以被实例化(new)

        实现类必须实现接口的所有方法

        实现类可以实现多个接口

        接口中的变量都是静态变量

  接口的优势:可以被多继承

        设计和实现完全分离

        更自然的使用多态

        更容易更换实现

        更容易搭建程序框架

        ......

posted @ 2019-03-28 18:26  小咕  阅读(365)  评论(0编辑  收藏  举报