zoukankan      html  css  js  c++  java
  • Java接口

    接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。




    抽象类

    在讲接口前,我们先来了解一下抽象类

    什么是抽象类

    抽象类也是一个类,只是在定义时要用关键字abstract修饰。

    什么时候用抽象类

    • 有的时候,父类只知道其子类包含哪些方法,但并不知道这些方法具体是怎么实现的。

    • 从多个具有相同特征的类中抽象出一个抽象类,作为子类的模板,限制子类的格式,避免子类设计的随意性。也就是说,抽象类限制了子类必须具有某些方法,但是并不限制这些方法要怎么实现,子类可以根据需要具体实现,也必须要实现这些方法。

    使用规则

    • 抽象类用abstract关键字修饰,格式为public abstract class className{...}

    • 抽象类不能被实例化,只有抽象类的非抽象子类可以创建对象,因此,抽象类必须被继承。

    • 抽象类中不一定有抽象方法,也可以包含普通方法。

    • 有抽象方法的类必定是抽象类。

    • 抽象类中的抽象方法只要声明,不需要给出方法的具体实现。

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

    • 抽象类的子类必须给出抽象类中的抽象方法的具体实现,除非该子类也是抽象类。


    接口

    1. 接口并不是类,编写接口的方式和类很相似,只不过是用关键字interface替换class,但是它们属于不同的概念。类描述对象的属性和方法。接口只规定子类必须包含某些方法,但不需要实现这些方法。除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。

    2. 接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。

    3. 在 Java 中,接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。

    定义接口

    public interface 接口名 [extends 父接口1,父接口2,……]{
       零到多个常量的定义;
       零到多个抽象方法的定义;
    }
    
    /******************************************************
    说明:
    1. 实际上在在interface前面还有一个关键字abstract,即使不写,系统也会自动加上,所以一般不写。
    
    2. 接口里面的的属性是常量,即使不声明为常量,系统也会加上public static final的修饰符,使之为常量,一般不自己加。
    
    3. 接口里的方法必须是抽象方法,即使没有用abstract修饰,系统也会自动加上,一般不自己加。
    
    ********************************************************/
    

    使用接口

    接口需要通过类来实现,用关键字implements。我们都知道,Java中的类是单继承的,一个子类只能继承一个父类。而一个类可以实现多个接口,从而对继承进行补充,使继承更加灵活。具体定义格式如下:

    public class 类名 [extends 父类] implements 接口1,接口2,…… {
    
       //如果继承了一个抽象类,则必须实现抽象类中的所有抽象方法;
       //要实现所有接口中的所有方法;
       //如果有继承父类,则必须写在接口前面
    }
    
    
    <br/>
    
    ***
    ***
    
    至此,Java面向对象的内容就告一段落了,接下来就是尝试用Java写一写具体的项目。
    
    <br/>
  • 相关阅读:
    IOS断点下载
    IOS中手机、pad的坐标系
    修改UINavigationController返回按钮的标题及如何隐藏导航栏
    备份数据脚本
    判断apache是否启动的脚本
    MySQL utf8mb4 字符集:支持 emoji 表情符号
    opacity兼容写法
    返回顶部(解决IE6固定定位)
    CSS3字体图标
    css3旋转小三角
  • 原文地址:https://www.cnblogs.com/jiuweilinghu/p/7372689.html
Copyright © 2011-2022 走看看