1 / 71
文档名称:

第4章 高级类特性1.ppt

格式:ppt   大小:1,912KB   页数:71页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第4章 高级类特性1.ppt

上传人:977562398 2022/7/3 文件大小:1.87 MB

下载得到文件列表

第4章 高级类特性1.ppt

相关文档

文档介绍

文档介绍:第4章_高级类特性1
第一页,共71页。
JavaSE知识图解
JAVA发展历程
JAVA环境搭建
基础程序设计
数承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”。
关于继承的规则:
子类不能直接访问父类中私有的(private)的成员变量和方法。
第十一页,共71页。
单继承举例
Person
+name : String
+age : int
+birthDate : Date
+getInfo() : String
Student
+school : String
Soldier
Officer
Graduate
+major : String
+register() : void
superclass
subclass
subsubclass
第十二页,共71页。
类的继承 (6)
Java只支持单继承,不允许多重继承
一个子类只能有一个父类
一个父类可以派生出多个子类
class SubDemo extends Demo{ } //ok
class SubDemo extends Demo1,Demo2...//error
多重继承
多层继承
第十三页,共71页。
练****1
1.(1)定义一个ManKind类,包括
成员变量int sex和int salary;
方法void manOrWorman():根据sex的值显示“man”(sex==1)或者“women”(sex==0);
方法void employeed():根据salary的值显示“no job”(salary==0)或者“ job”(salary!=0)。
(2)定义类Kids继承ManKind,并包括
成员变量int yearsOld;
方法printAge()打印yearsOld的值。
(3)在Kids类的main方法中实例化Kids的对象someKid,用该对象访问其父类的成员变量及方法。
第十四页,共71页。
练****1
,它继承自Person类
Person
#name: String
#sex:char
#age:int
+Person(name:String sex:char age:int)
+toString():String
Student
number:long
int:math
int:english
int:computer
+Student(n:String s:char a:int k:long m:int e:int c:int)
+aver():double
+max():int
+min():int
+toString():String
第十五页,共71页。
练****1
。在TestCylinder类中创建Cylinder类的对象,设置圆柱的底面半径和高,并输出圆柱的体积。
Circle (圆)
-radius :double
Circle(): 构造方法,将radius属性初始化为1
+setRadius(double radius) : void
+getRadius(): double
+findArea():double 计算圆的面积
Cylinder (圆柱)
-length:double
Cylinder(): 构造方法,将length属性初始化为1
+setLength(double length):void
+getLength():double
+findVolume() :double 计算圆柱体积
第十六页,共71页。
方法的重写(override)
定义:在子类中可以根据需要对从父类中继承来的方法进行改造,也称方法的重置、覆盖,。在程序执行时,子类的方法将覆盖(重写)父类的方法。
要求:
重写方法必须和被重写方法具有相同的方法名称、参数列表和返回值类型。
重写方法不能使用比被重写方法更严格的访问权限。
重写和被重写的方法须同时为static的,或同时为非static的
子类方法抛出的异常不能大于父类被重写方法的异常
第十七页,共71页。
重写方法举例(1)
public class Person {
public String name;
public int age;
public String getInfo() {
return "