下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

JAVA程序员0基础培训(8)认识接口

作者:课课家教育     来源: http://www.kokojia.com点击数:1060发布时间: 2016-01-21 14:24:33

标签: java课程标准java入门教材java敏捷开发

大神带你学编程,欢迎选课

  这讲我们来重点熟悉接口的使用,包括接口的声明,继承,属性的定义以及类的实现 等。

JAVA程序员0基础培训(8)认识接口_java课程标准_java入门教材_课课家

  最终的目录结构

  先看相关的代码

  lession8/Lession8.java

  package lession8;

  import lession8.otherpackage.InterfaceOtherPackagePublic;

  /**

  * 老紫竹java基础培训(8),认识接口。

  *

  *

  * @author 老紫竹 JAVA世纪网(java2000.NET)

  *

  */

  public class Lession8 {

  public static void main(String[] args) {

  // 可以直接使用接口的属性

  System.out.println(Test1.Number1);

  // final类型是不能修改的

  // Test1.Number2 ++;

  }

  }

  /**

  * 实现本package的接口

  *

  * @author 老紫竹 JAVA世纪网(java2000.net)

  *

  */

  class Test1 implements InterfaceSamePackage {

  // 接口的方法必须是public的

  // 虽然那面没写,但也是,这是规定

  // 实现的方法也必须是public的

  // 不写或者protected或者private都是错误的

  @Override

  public void testA() {

  }

  @Override

  public void testB() {

  }

  }

  /**

  * 实现其它package的接口。

  * 对接口里面的方法实现同样必须是public的。

  *

  * @author 老紫竹 JAVA世纪网(java2000.net)

  *

  */

  class Test2 implements InterfaceOtherPackagePublic {

  }

  class Test3 implements InterfaceSamePackageAbstract {

  @Override

  public void testA() {

  }

  }

  /**

  * 类可以实现多个接口.

  * 即使那些接口之间已经存在继承关系也没问题。

  *

  * @author 老紫竹 JAVA世纪网(java2000.net)

  *

  */

  class Test4 implements InterfaceOtherPackagePublic,

  InterfaceSamePackageAbstract, InterfaceSamePackageExtends {

  // 你要实现的方法是这些接口要求实现的总和

  // 也就是每个接口里的方法你都必须实现

  // #######################

  // #### 注意,############

  // #######################

  // InterfaceSamePackage 和 InterfaceSamePackageAbstract

  // 我们有2个接口定义了各自的方法,但名字和参数(类型和顺序)完全相同

  // 我们的实现只需要有一个就行了

  // 如果2个接口要实现的功能不一样,强烈建议不要用相同的名字和参数

  // 这属于设计问题,很严重的设计问题。

  @Override

  public void testA() {

  }

  @Override

  public void testB() {

  }

  }

  /**

  * 如果你这个类只能实现所有接口的部分功能,可以用abstract类。

  *

  * @author 老紫竹 JAVA世纪网(java2000.net)

  *

  */

  abstract class Test5 implements InterfaceOtherPackagePublic,

  InterfaceSamePackageAbstract, InterfaceSamePackageExtends {

  @Override

  public void testB() {

  }

  }

赞(0)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程