面向对象继承中的案例.docx

上传人:b****6 文档编号:3239942 上传时间:2022-11-20 格式:DOCX 页数:7 大小:14.57KB
下载 相关 举报
面向对象继承中的案例.docx_第1页
第1页 / 共7页
面向对象继承中的案例.docx_第2页
第2页 / 共7页
面向对象继承中的案例.docx_第3页
第3页 / 共7页
面向对象继承中的案例.docx_第4页
第4页 / 共7页
面向对象继承中的案例.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

面向对象继承中的案例.docx

《面向对象继承中的案例.docx》由会员分享,可在线阅读,更多相关《面向对象继承中的案例.docx(7页珍藏版)》请在冰豆网上搜索。

面向对象继承中的案例.docx

面向对象继承中的案例

面向对象-继承中的案例

==================案例一===================================

classPerson{

privateStringname;

privateintage;

publicPerson(){}

publicPerson(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicintgetAge(){

returnage;

}

publicvoidsetAge(intage){

this.age=age;

}

}

classStudentextendsPerson{

}

classTest{

publicstaticvoidmain(String[]args){

Students=newStudent();

s.setName("zx");

s.setAge(18);

System.out.println(s.getName()+"==="+s.getAge());

}

}

注意:

此处调用的是默认的构造参数

========================案例二=============================

classPerson{

privateStringname;

privateintage;

publicPerson(){}

publicPerson(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicintgetAge(){

returnage;

}

publicvoidsetAge(intage){

this.age=age;

}

}

classStudentextendsPerson{

}

classTest{

publicstaticvoidmain(String[]args){

Students=newStudent("zx",18);

System.out.println(s.getName()+"==="+s.getAge());

}

}

结果:

符号:

构造函数Student(java.lang.String,int)

位置:

类Student

Students=newStudent("zx",18);

注意:

要想使用带参构造,要在子类中添加带参数的构造方法!

==============================案例三===========================

classPerson{

privateStringname;

privateintage;

publicPerson(){}

publicPerson(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicintgetAge(){

returnage;

}

publicvoidsetAge(intage){

this.age=age;

}

}

classStudentextendsPerson{

publicStudent(){}

publicStudent(Stringname,intage){

this.name=name;

this.age=age;

}

}

classTest{

publicstaticvoidmain(String[]args){

Students=newStudent("zx",18);

System.out.println(s.getName()+"==="+s.getAge());

}

}

结果:

Test.java:

26:

name可以在Person中访问private

this.name=name;

^

Test.java:

27:

age可以在Person中访问private

this.age=age;

^

注意:

这样写是不对的,父类中的变量是私有的没有访问权限!

============================案例四===========================

classPerson{

privateStringname;

privateintage;

publicPerson(){}

publicPerson(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicintgetAge(){

returnage;

}

publicvoidsetAge(intage){

this.age=age;

}

}

classStudentextendsPerson{

publicStudent(){}

publicStudent(Stringname,intage){

}

}

classTest{

publicstaticvoidmain(String[]args){

Students=newStudent("zx",18);

System.out.println(s.getName()+"==="+s.getAge());

}

}

结果:

null===0

注意:

带参数的构造方法,方法体不写也是有问题的

===============================正确案例=======================

//在有参构造方法里,调用父类的有参构造方法!

classPerson{

privateStringname;

privateintage;

publicPerson(){}

publicPerson(Stringname,intage){

this.name=name;

this.age=age;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicintgetAge(){

returnage;

}

publicvoidsetAge(intage){

this.age=age;

}

}

classStudentextendsPerson{

publicStudent(){}

publicStudent(Stringname,intage){

super(name,age);

}

}

classTest{

publicstaticvoidmain(String[]args){

Students=newStudent("zx",18);

System.out.println(s.getName()+"==="+s.getAge());

}

}

结果:

zx===18

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

当前位置:首页 > 小学教育 > 语文

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

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