0基础学java_面向对象之继承

继承

继承的格式:

Java中使用extends关键字完成类的继承关系,

Class 父类{}

Class 子类extends继承父类{}

子类继承父类,并扩展其功能。可以把父类中的内容拿过来在子类中使用,如果子类中有一些重复的方法,就不用重复定义了。Extends关键字称为扩展,子类有时也叫派生类。

举例:学生类继承person类

 1 package com.xiaotaotao.code;
 2 class Person{
 3     private String name;
 4     private  int age;
 5     public void setName(String name){
 6         this.name = name;
 7     }
 8     public void setAge(int age){
 9         this.age = age;
10     }
11     public String getName(){
12         return name;
13     }
14     public int getAge(){
15         return age;
16     }
17 }
18 class Student extends Person{
19 }
20 public class ExtendsDemo01 {
21     public static void main(String args[]){
22         Student s = new Student();
23         s.setName("张三");
24         s.setAge(25);
25         System.out.println("姓名 :" + s.getName() + " , 年龄 : " + s.getAge());
26     }
27 }

举例:子类继承父类,并且在子类中新增方法

package com.xiaotaotao.code;

class Person{

    private String name;

    private  int age;

    public void setName(String name){

        this.name = name;

    }

    public void setAge(int age){

        this.age = age;

    }

    public String getName(){

        return name;

    }

    public int getAge(){

        return age;

    }

}

class Student extends Person{

    private String school;

    public void setSchool(String school) {

        this.school = school;

    }

    public String getSchool(){

        return school;

    }

}

public class ExtendsDemo01 {

    public static void main(String args[]){

        Student s = new Student();

        s.setName("张三");

        s.setAge(25);

        s.setSchool("复旦大学");

        System.out.println("姓名 :" + s.getName() + " , 年龄 : " + s.getAge() + " , 学校 :" + s.getSchool());

    }

}

继承的限制

在java中只能使用单继承,不能使用多重继承,但是可以多层继承。即一个子类只能继承一个父类,一个子类只能有一个父类,一个父类还可以有一个父类。

0基础学java_面向对象之继承

 如果子类将父类方法覆写,调用的时候肯定是调用被覆写的方法。此时如果调用父类方法,通过super关键字,super关键字访问父类方法,super.方法()。

this和super关键字的区别?

0基础学java_面向对象之继承