Maison >Java >javaDidacticiel >Comment hériter d'une classe en Java

Comment hériter d'une classe en Java

(*-*)浩
(*-*)浩original
2019-12-04 10:06:097611parcourir

Comment hériter d'une classe en Java

Dans le langage Java, l'héritage des classes d'implémentation utilise le mot-clé extends

Le format est le suivant : Apprentissage recommandé : cours java)

[public] class SubClass extends SuperClass{
  //类体的定义
}

2. La classe héritée est appelée classe parent ou super classe ou classe de base, et la classe héritée est appelée sous-classe ou classe dérivée.

3. Les sous-classes héritent du statut (propriétés) et des comportements (méthodes) de la classe parent, et peuvent également avoir leurs propres caractéristiques.

2. Notes sur l'héritage

1. Les sous-classes héritent des variables membres non privées et des méthodes membres de la classe parent. ne peut pas être sous-classé hériter.

2. Si le mot-clé extends est omis par défaut lors de la définition d'une classe, la classe définie sera une sous-classe directe de la classe java.lang.Object.

Dans le langage Java, toutes les classes sont des sous-classes directes ou indirectes de la classe Object.

3. Java ne prend en charge que l'héritage unique, c'est-à-dire qu'une classe a au plus une classe parent directe. L'héritage multiple est implémenté via des interfaces en Java.

4. Les variables et méthodes membres privées définies dans la classe parent ne peuvent pas être héritées par la sous-classe, elles ne peuvent donc pas être utilisées directement dans la sous-classe. Nous pouvons définir des méthodes d'accès public et des méthodes de modification dans la classe parent, et les sous-classes peuvent y accéder et les modifier via ces méthodes.

3. Exemples

Classe de personne

package com.baidu.czy;

public class Person {
    //属性
    private String name;
    private int age;
    //方法

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public Person() {
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
    public void sayHello(){
        System.out.println("My name is " + name);
    }
}

Classe d'employé

package com.baidu.czy;

public class Employee extends Person {
    //属性
    private double salary;
    private String name;
    //方法
    public Employee(){

    }

    public Employee(String name, int age,double salary) {
        //调用父类的构造方法
        super(name, age);
        this.salary = salary;
    }
    public double computeSalary(int hours,double rate){
        double salary = hours * rate;
        return this.salary + salary;
    }
    @Override
    public void sayHello(){
        //调用父类中被覆盖的方法
        super.sayHello();
        System.out.println("Hello,I am " + getName());
        System.out.println("I am " + getAge());
        System.out.println("My salary is " + salary);
    }

    
}

Classe EmployeeTest

package com.baidu.czy.test;

import com.baidu.czy.Employee;

public class EmployeeTest {
    public static void main(String[] args) {
        Employee emp = new Employee("刘明",30,5000);
        System.out.println("姓名= " + emp.getName());
        System.out.println("年龄= " + emp.getAge());
        //调用从父类继承的方法
        emp.sayHello();
        //调用子类中定义的方法
        System.out.println(emp.computeSalary(10,50.0));

    }
}

Résultat en cours

Comment hériter dune classe en Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn