完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx

上传人:b****0 文档编号:13644136 上传时间:2022-10-12 格式:DOCX 页数:11 大小:326.39KB
下载 相关 举报
完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx_第1页
第1页 / 共11页
完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx_第2页
第2页 / 共11页
完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx_第3页
第3页 / 共11页
完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx_第4页
第4页 / 共11页
完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx

《完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。

完整word版零基础学JAVAJavaSE面向对象部分14面向对象高级02Word文档下载推荐.docx

属性覆写(较少使用)

我们来简单验证下哈

classA 

 

Stringname="

redking"

;

};

classBextendsA 

//子类定义了一个和父类中相同的name属性 

Michael"

publicvoidprint() 

//与System.out.println(this.name);

效果相同 

System.out.println(name);

publicclassDemo01 

publicstaticvoidmain(Stringargs[]) 

Bb=newB();

b.print();

程序打印了在子类中定义的name属性:

Michael

如果要打印父类中的name属性,我们可以修改成super.name

//如果要打印父类中的name属性,我们可以修改成super.name 

System.out.println(super.name);

父类中的name属性输出了哈~这就叫属性的复写

属性一般情况下都要求被封装的,被封装之后肯定子类是无法看见父类中的内容,所以根本就无法覆写。

super与this调用构造方法能同时写在一个构造方法之中吗?

答案是不行哈~

Super调用构造方法时,一定要放在构造方法的首行,this调用构造方法时也必须放在首行,如果两个都放在首行,则肯定冲突。

有人认为可以不调用super方法哈,我们看下面的Demo02

publicA(){} 

//里面有三个构造方法 

publicB() 

this("

abc"

888);

publicB(Stringname) 

this();

publicB(Stringname,intage) 

this(name);

这样就产生了一个问题,我们在讲this关键字时也是提到过的哈~

在使用this()调用构造方法的时候肯定要留下一个出口。

否则编译通不过哈~

//最好把this("

修改成super()作为出口哈~ 

super();

现在编译就通过了哈~

本季主要知识点:

1、继承的类图表示

2、继承的题目

现在我们来看个Demo03:

这个滴继承关系我们来用类图表示

知道了上面的内容,我们来看下练习题:

classPerson 

privateStringname;

privateStringaddr;

privatecharsex;

privateintage;

//一般参数少的构造方法写在上面哈~~ 

publicPerson(){} 

publicPerson(Stringname,Stringaddr) 

this.setName(name);

this.setAddr(addr);

this.setSex('

男'

);

this.setAge(27);

publicPerson(Stringname,Stringaddr,charsex,intage) 

this.setSex(sex);

this.setAge(age);

publicvoidsetName(Stringname) 

this.name=name;

publicvoidsetAddr(Stringaddr) 

this.addr=addr;

//M:

表示男;

F:

表示女 

publicvoidsetSex(charsex) 

this.sex=sex;

publicvoidsetAge(intage) 

this.age=age;

publicStringgetName() 

returnthis.name;

publicStringgetAddr() 

returnthis.addr;

publicchargetSex() 

returnthis.sex;

publicintgetAge() 

returnthis.age;

//所有的内容应该交给外部输出 

publicStringgetInfo() 

return"

姓名:

"

+this.name 

+"

,地址:

+this.addr 

,性别:

+(this.sex=='

M'

?

男"

:

女"

) 

,年龄:

+this.age;

classStudentextendsPerson 

privatefloatmath;

privatefloatenglish;

publicStudent() 

//默认隐含了super();

pu

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1