前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java的继承

java的继承

原创
作者头像
堕落飞鸟
发布2023-04-02 10:12:25
4780
发布2023-04-02 10:12:25
举报
文章被收录于专栏:飞鸟的专栏

java 是一门面向对象编程语言,其中两个重要的概念就是继承和封装。继承是指子类可以继承父类的属性和方法,而封装是指隐藏类的实现细节,只公开对外部有用的方法和属性。下面是关于 Java 继承和封装的详细文档。

继承

继承是一种类与类之间的关系,可以让子类从父类继承属性和方法,避免重复编写代码,提高代码复用性和可维护性。

定义父类和子类

在 Java 中,使用关键字 extends 来实现继承。下面是定义一个父类和一个子类的示例代码:

代码语言:javascript
复制
// 父类
public class Animal {
    public void eat() {
        System.out.println("动物在吃东西");
    }
}

// 子类
public class Dog extends Animal {
    public void bark() {
        System.out.println("狗在汪汪叫");
    }
}

在上面的代码中,Dog 类继承了 Animal 类。可以看到,Dog 类中没有定义 eat() 方法,但是可以调用 Animal 类中的 eat() 方法。

方法重写

子类可以重写(覆盖)父类的方法。例如,在上面的代码中,Dog 类可以重写 eat() 方法:

代码语言:javascript
复制
public class Dog extends Animal {
    public void bark() {
        System.out.println("狗在汪汪叫");
    }

    @Override
    public void eat() {
        System.out.println("狗在吃骨头");
    }
}

注意,重写方法时,方法名、参数列表和返回值类型都必须与父类中的方法相同,可以使用 @Override 注解来标注这是一个重写方法。

super 关键字

子类可以使用 super 关键字来调用父类中的方法或构造函数。例如,在上面的代码中,Dog 类可以在 eat() 方法中调用父类的 eat() 方法:

代码语言:javascript
复制
public class Dog extends Animal {
    public void bark() {
        System.out.println("狗在汪汪叫");
    }

    @Override
    public void eat() {
        super.eat(); // 调用父类中的 eat() 方法
        System.out.println("狗在吃骨头");
    }
}

在上面的代码中,super.eat() 表示调用父类中的 eat() 方法。

多重继承

Java 不支持多重继承,即一个子类只能有一个直接的父类。但是,Java 支持接口,一个类可以实现多个接口。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 继承
    • 定义父类和子类
      • 方法重写
        • super 关键字
          • 多重继承
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档