类的封装继承和多态课件.ppt

类的封装继承和多态课件.ppt

ID:57027976

大小:1018.50 KB

页数:29页

时间:2020-07-26

类的封装继承和多态课件.ppt_第1页
类的封装继承和多态课件.ppt_第2页
类的封装继承和多态课件.ppt_第3页
类的封装继承和多态课件.ppt_第4页
类的封装继承和多态课件.ppt_第5页
资源描述:

《类的封装继承和多态课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第07章类的封装、多态和继承17.1类的封装所谓封装,指类的设计者只是为使用者提供类对象可以访问的部分(包含类的成员变量和方法),而对于类中其他成员变量和方法隐藏起来,用户不能访问。具体指以下3方面:(1)设置成员变量和方法的访问权限;(2)提供一个统一供其他类引用的方法;(3)其他对象不能直接修改本对象所拥有的属性和方法。27.1.1对象的可见性和作用域对于类中的成员变量,在创建对象时,自动在内存区域为其分配一块空间作为对象的属性出现。同样,类的方法中也有变量,这些变量的有效范围只是在方法体内,如果出了方法

2、体,那么这些变量就不起作用。如果成员变量v和方法中的变量v同名,则方法中的变量v只在该方法中起作用。37.1.1对象的可见性和作用域classVOMethod1{intz=0;publicvoidf1(){intz=12;System.out.println("f1()方法中z的值为:"+z);}publicvoidshow(){System.out.println("show()方法中的z的值为:"+z);}}47.1.1对象的可见性和作用域classVOMethod2{publicstaticvoidma

3、in(String[]args){intz=20;VOMethod1vom=newVOMethod1();vom.f1();vom.show();}}输出结果:f1()方法中z的值为:12Show()方法中的z的值为:057.1.2public、privatepublic类(公共类)中的成员变量或方法可以供其他类进行访问。一个程序文件中只能定义一个public类。如果不想让其他类进行访问,可以设置private访问权限。67.1.2public、private例程序文件PublicClass.java中代码:

4、publicclassPublicClass{Stringname;Stringaddress;publicdoublescore;publicvoiddisplay(){System.out.println("name:"+name);System.out.println("Address:"+address);System.out.println("score:"+score);}}77.1.2public、privateclassPCTest{publicstaticvoidmain(String[]a

5、rgs){PublicClassmyInfo=newPublicClass();myInfo.name="张三";myInfo.address="西湖路99号";myInfo.score=95.5;myInfo.display();}}87.1.4protected使用protected定义的成员变量或方法,类本身、子类或包中的方法可以访问它们,而其他类没有访问权限。97.1.4protected程序文件Max.java代码:packageMM;//将该类放入包MM中classMax{privateintx,

6、y;protectedintplay(ints,intt){intm;x=s;y=t;m=(x>y)?x/y:y/x;returnm;}}107.1.4protected程序文件GetNum.java代码:packageMM;//若不将该类放入MM包中,则会编译出错classGetNum{publicstaticvoidmain(String[]args){intresult;Maxss=newMax();result=ss.play(5,45);//引用protected方法System.out.print

7、ln("result="+result);}}117.1.4friendlyfriendly是默认的访问权限,friendly修饰的成员变量或方法对于包内的所有类而言是可以访问的,但对于包外的类,则不能对它们进行访问。127.2多态机制多态的特点是:采用同名方式,根据调用方法时传送的参数的多少及传送参数类型的不同,调用不同的方法,从而达到采用同样的方法获得不同的行为特性的目的。137.2.1方法的重载方法重载,指在类中创建了多个方法,它们具有相同的方法名,但有不同的参数、不同的返回类型或不同的方法体。举例:建

8、一个类,通过调用该类的方法,可以求圆的面积,也可以求长方形的面积。147.2.1方法的重载publicclassMianJi{publicintmianJi(intx,inty){returnx*y;}publicdoublemianJi(intx){return3.14159*x*x;}//转下页……}157.2.1方法的重载publicclassMianJi{//……接上publicstatic

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。