• 继承、继承中的重写


    [修饰符] class 子类名 extends 父类名 {

    类体

    }

    例1:

    public class Bird{//父类
        String color="white";
        String skin="羽毛";
    }
    public class Pigeon extends Bird{//子类
        public static void main(String[] args) {
            Pigeon pigeon=new Pigeon();//建立类的对象
            System.out.println(pigeon.color);//输出对象属性color
        }
    }

    例2

         

    import java.util.Date;
    
    public class Employee {
    private String name;//定义成员变量
    private double salary;
    private Date birthday;
    public String getName() {//获取成员变量
        return name;
    }
    public void setName(String name) {//设置成员变量
        this.name=name;
    }
    public double getSalary() {
        return salary;
    }
    public void setSalary(double salary){
        this.salary=salary;
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday=birthday;
    }
    }
    public class Manager extends Employee {//继承,简化代码
    private double bonus;//定义变量,奖金
    public double getBonus() {//获取成员变量
        return bonus;
    }
    public void setBonus(double bonus) {//设置成员变量
        this.bonus=bonus;
    }
    }
    import java.util.Date;
    public class Test {
    public static void main(String[] args) {
        Employee e=new Employee();//创建Employee对象,并赋值
        e.setName("Java");//赋值成员变量
        e.setSalary(2000);
        e.setBirthday(new Date());
        Manager m=new Manager();//创建Manager对象,并赋值
        m.setName("阿伟");//调用父类方法
        m.setSalary(5000);
        m.setBirthday(new Date());
        m.setBonus(2000);
        //输出经理和员工属性值
        System.out.println("员工的姓名、工资、生日:"+"
    "+e.getName()+"
    "+e.getSalary()+"
    "+e.getBirthday());
        System.out.println("经理的姓名、工资、生日:"+"
    "+m.getName()+"
    "+m.getSalary()+"
    "+m.getBirthday());
        System.out.println("经理的奖金:"+m.getBonus());
    }
    }

    继承中的重写

    子类中的方法名与父类中的相同时,不继承父类方法,执行子类方法。重写也称为覆盖。

    例:父类Animal,子类Cat、Dog、Sheep,执行文件Zoo

    Dog类和Cat类都重写了父类的方法cry( ),执行子类方法。但Sheep类没有重写父类方法,所以执行父类方法。

          

    public class Animal {
    public void cry() {
        System.out.println("动物的叫声");
    }
    }
    
    public class Dog  extends Animal{
    public void cry() {
        System.out.println("狗的叫声“汪汪……”");
    }
    }
    
    public class Cat extends Animal{
        public void cry() {
            System.out.println("猫的叫声“喵喵……”");
        }
    }
    
    public class Sheep  extends Animal{
    }
    
    public class Zoo {
        public static void main(String[] args) {
            Dog dog=new Dog();//建立对象
            Cat cat=new Cat();//建立对象
            Sheep sheep=new Sheep();//建立对象
            dog.cry();
            cat.cry();
            sheep.cry();
        }
    }
  • 相关阅读:
    我的学习记录-JAVA SE 03
    我的学习记录-JAVA SE 02
    我的学习记录-JAVA SE 01
    我的mysql的学习记录
    Hibernate4学习一
    java3
    java5
    java基础4
    java2
    java
  • 原文地址:https://www.cnblogs.com/xixixing/p/8274954.html
Copyright © 2020-2023  润新知