当前位置:首页 > Java

java派生类如何定义

2026-03-19 03:50:49Java

定义Java派生类的方法

在Java中,派生类(子类)通过继承基类(父类)来定义,使用extends关键字实现继承关系。

public class ParentClass {
    // 父类成员和方法
}

public class ChildClass extends ParentClass {
    // 子类新增的成员和方法
}

继承的基本规则

派生类会继承父类的非私有成员(属性和方法)。父类的private成员无法被子类直接访问,但可以通过父类提供的公共方法间接访问。

public class Animal {
    private String name;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

public class Dog extends Animal {
    public void bark() {
        System.out.println(getName() + " is barking");
    }
}

方法重写

派生类可以重写父类的方法,使用@Override注解标识,这有助于提高代码可读性。

public class Animal {
    public void makeSound() {
        System.out.println("Animal makes a sound");
    }
}

public class Cat extends Animal {
    @Override
    public void makeSound() {
        System.out.println("Cat meows");
    }
}

调用父类构造方法

派生类构造方法中可以使用super()调用父类构造方法,必须放在构造方法的第一行。

public class Vehicle {
    private int wheels;

    public Vehicle(int wheels) {
        this.wheels = wheels;
    }
}

public class Car extends Vehicle {
    private String model;

    public Car(int wheels, String model) {
        super(wheels);
        this.model = model;
    }
}

访问修饰符的影响

派生类中访问父类成员受访问修饰符限制:

  • public:任何地方可访问
  • protected:同包或子类可访问
  • 默认(无修饰符):仅同包可访问
  • private:仅本类可访问

多重继承的替代方案

Java不支持多继承,但可以通过接口实现类似功能。一个类可以实现多个接口。

java派生类如何定义

interface Swimmer {
    void swim();
}

interface Flyer {
    void fly();
}

public class Duck implements Swimmer, Flyer {
    @Override
    public void swim() {
        System.out.println("Duck swimming");
    }

    @Override
    public void fly() {
        System.out.println("Duck flying");
    }
}

标签: 定义派生类
分享给朋友:

相关文章

react如何定义一哥数组

react如何定义一哥数组

定义数组的方法 在React中,可以通过多种方式定义和使用数组。以下是常见的几种方法: 使用useState钩子定义状态数组 import { useState } from 'react';…

react如何定义一个map

react如何定义一个map

在 React 中定义和使用 Map React 中可以通过多种方式定义和使用 Map 对象,以下是常见的实现方法: 初始化 Map 对象 在组件中直接使用 JavaScript 的 Map 构造函…

jquery定义函数

jquery定义函数

jQuery 定义函数的方法 在 jQuery 中定义函数通常有两种主要方式:一种是直接在 jQuery 插件中扩展方法,另一种是定义普通的 JavaScript 函数并在 jQuery 中使用。以下…

java如何定义数组

java如何定义数组

定义数组的基本语法 在Java中,数组是一种固定长度的数据结构,用于存储相同类型的多个元素。定义数组的语法分为声明和初始化两部分。 声明数组的语法: 数据类型[] 数组名; // 推荐写法 或…

java中如何定义数组

java中如何定义数组

定义数组的基本语法 在Java中,数组可以通过以下两种方式定义: 静态初始化:直接指定数组元素 动态初始化:指定数组长度,后续赋值 静态初始化示例: int[] arr1 = {1, 2, 3};…

java如何定义一个数组

java如何定义一个数组

定义数组的基本语法 在Java中,数组是固定大小的同类型元素集合。定义数组需要指定元素类型和数组名称,可以通过以下两种方式声明: // 方式一:先声明后初始化 数据类型[] 数组名; 数组名 = n…