第4章 案例2.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 案例2

案例1: /*数据成员的继承 子类可以继承父类的所有非私有的数据成员。 */ class A1 { int x=25; private int z; //不能被子类继承的私有数据成员z } class C6_1 extends A1 //a1是C5_6的父类,C5_6是a1的子类 { public static void main(String[ ] argS) { C5_6 p=new C5_6( ); System.out.println(p.x=+p.x); //输出继承来的数据成员的值 //System.out.println(p.z=+p.z); 错,不能继承private修饰的z } } //运行结果:p.x=25 案例2: //数据成员的隐藏 class A1 { int x=8; } //父类中定义了数据成员x class C6_2 extends A1 { int x=24; //子类中也定义了数据成员x public static void main(String[ ] argS) { int s1,s2; A1 p=new A1( ); //创建父类的对象p C5_7 p1=new C5_7( ); //创建子类的对象p1 s1=p.x; s2=p1.x; //子类对象引用自己的数据成员,把父类数据成员“隐藏”起来 System.out.println(s1=+s1); System.out.println(s2=+s2); } } //运行结果:s1=8 s2=24 案例3: //成员方法的继承.子类可以继承父类的非私有成员方法。 class A1 { int x=0,y=1; void Myp( ) { System.out.println(x=+x+ y=+y); } private void Printme( ) { System.out.println(x=+x+ y=+y); } } public class C6_3 extends A1 { public static void main(String arg[ ]) { int z=3; C5_8 p1=new C5_8( ); p1.Myp( ); // p1.Printme( ); 错,不能继承父类的private方法 } } //运行结果:x=0 y=1 案例4: //成员方法的覆盖 class A1 { int x=10; int y=31; public void printMe( ) { System.out.println(x=+x+ y=+y);} } public class C6_4 extends A1 { int z=35; public void printMe( ) //子类中定义了与父类同名的成员方法,实现覆盖 { System.out.println( z=+z); } public static void main(String arg[ ]) { A1 p2=new A1( ); //创建父类对象p2 C5_9 p1=new C5_9( ); //创建子类对象p1 p1.printMe( ); //子类对象引用子类方法,覆盖了父类的同名方法 p2.printMe( ); //父类对象引用父类方法 } } //运行结果是:z=35 x=10 y=31 案例5: //构造方法的继承 class Addclass { public int x=0,y=0,z=0; Addclass(int x) //父类可重载的构造方法1 { this.x=x; } Addclass(int x,int y) //父类可重载的构造方法2 { this.x=x; this.y=y; } Addclass(int x,int y,int z) //父类可重载的构造方法3 { this.x=x; this.y=y; this.z=z; } public int add( ) { return x+y+z;} } public class C6_5 extends Addclass { int a=0,b=0,c=0; C5_15(int x) //子类可重载的构造方法1 { super(x); a=x+7; } C5_15(int x,int y) //子类可重载的构造方法2 { super(x,y); a=x+5; b=y+5; } C5_15(int x,int y,int z) //子类可重载的构造方法3 { super(x,y,z); a=x+4; b=y+4; c=z+4; } public int add( ) { System.out.println(super: x+y+z=+super.add( ));

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档