Java-面向对象(高级篇)--继承的基本概念
来源:互联网 发布:服装淘宝店从哪里进货 编辑:程序博客网 时间:2024/05/21 21:42
继承的基本概念
现在假设一个Person类,其中包括name和age两个属性,而另外一个Student类,需要包含name和age、school属性。代码如下:
【Person类】
class Person{ private String name; private int age; public String getName(){ return name; } public void setNmae(String name){ this.name=name; } public int getAge(){ return age; } public void setAge(int age){ this.age=age; }}
【Student类】
class Student{ private String name; private int age; private String school; public String getName(){ return name; } public void setName(String name){ this.name=name; } public int getAge(){ return age; } public void setAge(int age){ this.age=age; } public void setSchool(String school){ this.age=age; } public String getSchool(){ return school; }}
从上面的代码可以发现Person类中已经有了name和age两个属性及对应的setter和getter方法,而且Person和Student也属于有关系的类。因为一个学生肯定是一个人。所以现在希望可以不用在Student类中再重新声明这两个属性及对应的setter和getter方法,这时就溢出了继承的概念。
在Java中要实现继承类,可以直接使用以下语句来表示:
【类的继承格式】
*class 父类{} //定义父类
class 子类 exteds 父类{} //使用extends关键字实现继承*
下面来进行继承的操作:
class Person{ private String name; private int age; public String getName(){ return name; } public void setName(String name){ this.name=name; } public int getAge(){ return age; } public void setAge(int age){ this.age=age; }}class Student extends Person{ private String school; public void setSchool(String school){ this.school=school; } public String getSchool(){ return school; }}public class ExtDemo2{ public static void main(String args[]){ Student stu=new Student(); stu.setName("张三"); stu.setAge(19); stu.setSchool("ZZU"); System.out.println("姓名:"+stu.getName()+",年龄:"+stu.getAge()+",学校:"+stu.getSchool()); }}
运行结果为:
从运行结果可以发现,在Student类中并没有定义name和age的相关方法属性,但是通过继承的功能把父类的操作拿到了子类中使用,而且在子类中我们又增加了school属性及其相关的属性和方法。从而扩充了Person类。
需要注意的是,Java中只允许多层继承,不允许多重继承。即Java中只能单继承,即一个子类只能继承一个父类。但是允许进行多层继承,即一个子类可以有一个父类,一个父类还可以有另一个父类。
在使用继承时应注意的是:子类是不能直接访问父类中的私有成员变量的,子类可以调用父类中的非私有方法,但是不能直接调用父类中的私有成员。,但是可以通过setter和getter方法调用,进行访问。
- Java-面向对象(高级篇)--继承的基本概念
- 继承的基本概念(Java面向对象高级篇)
- Java-面向对象(高级篇)--抽象类的基本概念
- Java-面向对象(高级篇)--接口的基本概念
- Java-面向对象(高级篇)--继承的进一步研究
- Java面向对象高级--抽象类的基本概念------abstract
- Java面向对象高级--接口的基本概念--------interface、implements
- Java面向对象高级--抽象类的基本概念------abstract
- Java面向对象的基本概念(对象、封装、继承、多态、抽象、接口、泛型)
- Java面向对象高级--继承的基本实现--extends
- Java面向对象高级--继承的进一步研究
- Java基础第四篇 面向对象的基本概念(中)
- java面向对象的基本概念
- Java-面向对象(高级篇)--对象的多态性
- Java面向对象总结(高级篇)
- Java的Inheritance继承-笔记(面向对象2-继承)
- 面向对象(高级)——接口的基本概念
- 面向对象(高级)——接口的基本概念
- 实现安卓一段时间不操作执行某段代码类似于屏保
- 自增类型ID支持
- java数据类型方面
- 开放世界游戏中的大地图背后有哪些实现技术
- 设计模式之原型模式-对象的克隆
- Java-面向对象(高级篇)--继承的基本概念
- 玩转 Ubuntu
- Linux CPU实时监控mpstat命令详解
- 第四周项目四 猴子选大王
- 集合元素的删除方法
- 走遍美国 —— 风物篇(二)
- ARX实现ZOOM功能
- Android提交library到Jcenter
- 怎样通过jq获取元素的真实的高度(包含小数点)