`
sls0919
  • 浏览: 123372 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java学习--继承

    博客分类:
  • java
阅读更多

继承使用 extends 关键字

先看实例:

public class Demo {
    public static void main(String[] args) {
        Teacher t = new Teacher();
        t.name = "小布";
        t.age = 70;
        t.school = "清华大学";
        t.subject = "Java";
        t.seniority = 12;
        t.say();
        t.lecturing();
    }
}

class People{
    String name;
    int age;
    int height;
   
    void say(){
        System.out.println("我的名字是 " + name + ",年龄是 " + age + ",身高是 " + height);
    }
}

class Teacher extends People{
    String school;  // 所在学校
    String subject;  // 学科
    int seniority;  // 教龄
   
    // 覆盖 People 类中的 say() 方法
    void say(){
        System.out.println("我叫" + name + ",在" + school + "教" + subject + ",有" + seniority + "年教龄");
    }
   
    void lecturing(){
        System.out.println("我已经" + age + "岁了,依然站在讲台上讲课");
    }
}

 对程序的说明:

name 和 age 变量虽然没有在 Teacher 中定义,但是已在 People 中定义,可以直接拿来用。

Teacher 是 People 的子类,People 是Teacher 类的父类。

子类可以覆盖父类的方法。

子类可以继承父类除private以为的所有的成员。

构造方法不能被继承。

 

继承是在维护和可靠性方面的一个伟大进步。如果在 People 类中进行修改,那么 Teacher 类就会自动修改,而不需要程序员做任何工作,除了对它进行编译。

 

注:Java 允许一个类仅能继承一个其它类,即一个类只能有一个父类,这个限制被称做单继承性。后面将会学到接口(interface)的概念,接口允许多继承。

在类继承中,子类可以修改从父类继承来的方法,也就是说子类能创建一个与父类方法有不同功能的方法,但具有相同的名称、返回值类型、参数列表。

 

 

继承中又有方法的覆盖和重载,覆盖即为同名同参数同返回类型;重载即为同名,不同参数,相同或不同返回类型

 

本文示例参考自:http://www.weixueyuan.net

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics