小白教程

 找回密码
 立即注册
小白教程 首页 系列教程 Java系列教程 查看内容

Java 继承

发布者: 小白教程



IS-A 关系

IS-A 就是说:一个对象是另一个对象的一个分类。

下面是使用关键字 extends 实现继承。

  1. public class Animal{
  2. }
  3. public class Mammal extends Animal{
  4. }
  5. public class Reptile extends Animal{
  6. }
  7. public class Dog extends Mammal{
  8. }

基于上面的例子,以下说法是正确的:

  • Animal 类是 Mammal 类的父类。
  • Animal 类是 Reptile 类的父类。
  • Mammal 类和 Reptile 类是 Animal 类的子类。
  • Dog 类既是 Mammal 类的子类又是 Animal 类的子类。

分析以上示例中的 IS-A 关系,如下:

  • Mammal IS-A Animal
  • Reptile IS-A Animal
  • Dog IS-A Mammal

因此 : Dog IS-A Animal

通过使用关键字 extends ,子类可以继承父类的除 private 属性外所有的属性。

我们通过使用 instanceof 操作符,能够确定 Mammal IS-A Animal

实例

  1. public class Dog extends Mammal{
  2. public static void main(String args[]){
  3. Animal a = new Animal();
  4. Mammal m = new Mammal();
  5. Dog d = new Dog();
  6. System.out.println(m instanceof Animal);
  7. System.out.println(d instanceof Mammal);
  8. System.out.println(d instanceof Animal);
  9. }
  10. }

以上实例编译运行结果如下:

  1. true
  2. true
  3. true

介绍完 extends 关键字之后,我们再来看下 implements 关键字是怎样使用来表示 IS-A 关系。

Implements 关键字在类继承接口的情况下使用, 这种情况不能使用关键字 extends 

实例

  1. public interface Animal {}
  2. public class Mammal implements Animal{
  3. }
  4. public class Dog extends Mammal{
  5. }


Archiver|手机版|小黑屋|小白教程 ( 粤ICP备20019910号 )

GMT+8, 2024-9-20 09:07 , Processed in 0.044096 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

返回顶部