JAVA类定义,成员类,抽象类及接口类

发表于:2010-1-29 10:04

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

  然后就是抽象类的定义:

  Java代码

  package classdeinfe;
  public abstract AbstractClass
  {
  public abstract void abstractMethod();
  public void entityMethod()
  {
  ....
  }
  }

  和一般的类不一样,abstract类里面可以定义抽象方法。抽象方法不需要实现,这点和一会介绍的接口类似。

  但是和接口不一样的地方,就是抽象类里面也可以定义具体的方法体。抽象类的一般用法就是定义一类类的普遍行为,然后预言其中实现各部相同但是却共有的方法,例如:

  Java代码

  package classdeinfe;
  public abstract Vehicle
  {
  public abstract float speed();
  public void run()
  {
  ....
  }
  public void stop()
  {
  ....
  }
  public boolean isMoving()
  {
  ....
  }
  }

  上例列出了一个交通工具抽象类,各类都会有run,stop,isMoving和speed方法。而且stop,run和isMoving方法行为默认都是一样的,而speed则留待子类去实现。当我们每个子类都预期会实现父类某个特定方法的时候,建议把这个父类方法定义为一个抽象方法。这样可以强迫子类针对该方法去定义各自的行为。

  假如我们在类定义的时候,使用了final关键字,则该类不允许再被继承:

  Java代码

  package classdefine;
  public final class FinalClass
  {
  }

  最后我们说一下接口。接口的定义和类类似:

  Java代码

  package classdeinfe;
  public interface MyInterface
  {
  public static final String CONSTANT_DEMO = "test";
  public void publicMethod();
  void defaultMethod() throws Exception;
  }

  接口类专门用于定义一系列的方法,及相应的一些配套常量。现在我们就多了一种指针——接口指针。首先看看以下例子:

32/3<123>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号