• Java 类的继承


    一、基本知识

    1、在Java语言中,实现类的继承使用extends关键字

    格式如下:

    [public] class SubClass extends SuperClass{

      //类体的定义

    }

    2、被继承的类称为父类或超类或基类,而继承得到的类称为子类或派生类。

    3、子类继承父类的状态(属性)和行为(方法),同时也可以有自己的特征。

    二、关于继承的注意事项

    1、子类继承父类中非private的成员变量和成员方法,同时,注意构造方法不能被子类继承。

    2、定义类时若缺省extends关键字,则所定义的类为java.lang.Object类的直接子类。

      在Java语言中,一切类都是Object类的直接或间接子类。

    3、Java仅支持单重继承,即一个类至多只有一个直接父类。在Java中通过接口来实现多重继承。

    4、父类中定义的private成员变量和方法不能被子类继承,因此在子类中不能直接使用。我们可以在父类中定义公共的访问方法和修改方法,子类可以通过这些方法来实现访问和修改。

    三、举例说明

    Person类

    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);
        }
    }

    Employee类

    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);
        }
    
        
    }

    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));
    
        }
    }

    运行结果

  • 相关阅读:
    4、numpy——创建数组
    3、NumPy 数组属性
    2、NumPy 数据类型
    windos常见命令操作
    PHP操作MongoDB学习笔记
    MongoDB(八)Mongodb——GridFS存储
    MongoDB(七)MongoDb数据结构
    MongoDB(五)mongo语法和mysql语法对比学习
    MongoDB可视化工具RoboMongo----Windows安装 1
    MongoDB(四)mongodb设置用户访问权限
  • 原文地址:https://www.cnblogs.com/my-program-life/p/11037957.html
Copyright © 2020-2023  润新知