java学习--继承 博客分类: java java
程序员文章站
2024-03-24 10:12:34
...
继承使用 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
上一篇: 成为Java程序员Day9:异常处理
下一篇: flex的pureMVC+Fabrication的使用例子--HelloWorld 博客分类: Flex FlexFlashGoogle框架Web
推荐阅读
-
java学习--继承 博客分类: java java
-
python项目java重构各种问题 博客分类: javapython
-
JAVA中的指针,引用及对象的clone 博客分类: Java Java编程EXTJDK数据结构
-
获得执行jar的运行路径 博客分类: Java java
-
java学习--继承 博客分类: java java
-
win10安装java开发环境 博客分类: java系统
-
JAVA方法可变参数 博客分类: JAVA java
-
java 求最大公约数和最小公倍数 博客分类: JAVA java最大公约数最小公倍数
-
java编译和类加载详述 博客分类: JAVA java
-
JAVA方法可变参数 博客分类: JAVA java