zoukankan      html  css  js  c++  java
  • JAVA面对对象(五)——接口

    接口由全局常量和公共的抽象方法组成,接口的定义格式:

    1 interface 接口名称{
    2     全局常量;
    3     抽象方法;
    4 }

    接口中的抽象方法必须定义为public访问权限,在接口中如果不写也默认是public访问权限



    接口的定义:

    1 interface A{
    2     public static final String AUTHOR = "张宇";  //定义全局常量
    3     public abstract void print();               //定义抽象方法
    4     public abstract String getInfo();            //定义抽象方法
    5 }

    但是在接口的定义中已经声明了接口是由全局常量和抽象方法组成的,所以可以简化为以下格式:

    1 interface A{
    2     String AUTHOR = "张宇";  //等价于:public static final String AUTHOR = "张宇";
    3     void print();      //等价于:public abstract void print();
    4     String getInfo();    //等价于:public abstract String getInfo();
    5 }

    与抽象类一样,接口若要使用也必须通过子类,子类通过implement关键字实现接口:

    1 class 子类 implement 接口A,接口B,...{
    2 }

    实现接口:

     1 interface A {
     2     public String AUTHOR = "张宇";  
     3     public void print();      
     4     public String getInfo();    
     5 }
     6 interface B {
     7     public void say();
     8 }
     9 class X implements A,B{   //子类同时实现两个接口
    10     @Override
    11     public void say() {        //覆写接口B中的抽象方法
    12         System.out.println("Hello World");
    13     }
    14     @Override
    15     public void print() {        //覆写接口A中的抽象方法
    16         System.out.println("姓名:"+AUTHOR);
    17     }
    18     @Override
    19     public String getInfo() {        //覆写接口A中的抽象方法
    20         return "Hello";
    21     }    
    22 }
    23 public class Demo {
    24     public static void main(String[] args) {
    25         X x = new X();
    26         x.say();      //调用被覆写过的方法
    27         x.print();
    28     }
    29 }


    除此之外,接口也可以继承,且多继承

    1 interface 子接口 extends 父接口A,父接口B,...{
    2 }

    如果一个子类又要继承抽象类又要继承接口,可用以下格式:

    1 class 子类 extends 抽象类 implement 接口A,接口B,...{
    2 }



  • 相关阅读:
    CTE SQL Server 转
    论坛搜索网站技术概述 供参考
    SQL 存储过程 数据分页源代码
    sql server中使用convert来取得datetime数据类型样式(全)
    SQL Server 2008系统信息查询常用命令 查看表大小、记录数等
    用正则表达式匹配HTML\XML等文件中的标签
    使用.Net访问Office编程接口
    不显示某字段有重复的记录 SQL语句
    操作XMLC#(转)
    关于CASE中使用聚合函数时的一点经验
  • 原文地址:https://www.cnblogs.com/AloneZ/p/java6.html
Copyright © 2011-2022 走看看