类变量与类方法

类变量与类方法

ID:21891749

大小:88.00 KB

页数:12页

时间:2018-10-20

类变量与类方法_第1页
类变量与类方法_第2页
类变量与类方法_第3页
类变量与类方法_第4页
类变量与类方法_第5页
资源描述:

《类变量与类方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本章导读1.类变量与类方法2.方法的返回值3.公有成员与私有成员第6章类变量与类方法1.类变量与类方法(1)实例变量与实例方法Circlec1=newCircle(1.0);Circlec2=newCircle(2.0);对象c1,c2,它们有保存自己成员变量的地方,不与其他对象共享,如图:1.类变量与类方法由上图可知,所创建的对象c1与c2均保存有自己的值,如果改变了c1某个变量的值,c2的数据成员并不受影响,因为这些变量各自独立,存于不同的内存之中。具有这种特性的变量,就称之为“实例变量”。C

2、ircle类里的show()方法必须通过对象来调用,c1.show();也就是说,必须先创建对象,再利用对象来调用它,具有此特性的方法,称之为“实例方法”。实例变量与实例方法使用前都必须先创建对象。1.类变量与类方法(2)类变量实例变量是属于个别对象所有,彼此之间不能共享,java还提供了另一种变量--类变量,它可以由所有的对象来共享,也就是说,每一个对象的类变量均相同,更改了某个对象的类变量,其他对象的类变量也随之更改。如果要把变量声明为类变量,必须在变量之前加上static关键字。如:stati

3、cdoublepi=3.141.类变量与类方法如果每一个对象都保存自己的pi值,只会浪费内存,因此,可以让所有Circle类的对象共享这个变量。把pi声明成static之后,变量与内存之间的关系如图:类变量也可直接通过类名来调用,如:Circle.pi;。使用“类变量”可以节省内存空间,尤其是大量创建对象的时候。1.类变量与类方法(3)类方法把一个方法声明为类方法是在方法前加上static关键字,如:staticvoidmessage(){}类方法在使用时,可直接用类来调用,如:Circle.mes

4、sage();类方法也可通过对象来调用,如:c1.message();main()方法是Test类的一个方法,main()方法前也加上了static关键字,Java虚拟机在执行main()方法时不必创建对象,所以该方法必须是static的;java程序是从main()方法开始运行,调用main()方法的是Test类,而并非由Test所创建的对象。1.类变量与类方法(3)类方法类方法与特定的对象没有关系,在没有对象产生的情况下,类方法依然可以被调用。类方法的使用限制类方法无法对实例变量和实例方法进行访

5、问类方法内部不能使用this关键字。2.方法的返回值可以传递参数到方法中,也可以让方法返回特定的值到调用端程序,这个返回来的值称为“返回值”,返回值可以是数值、字符串、或者是一个对象。java允许在程序中传递多个参数到方法中,但方法的返回值却只能有一个。(1)没有返回值的方法有些方法不必传递任何数据到调用端程序,因此没有返回值,如Circle类中的show()方法。若方法本身没有返回值,则必须在方法定义的前面加上关键字void。2.方法的返回值(2)有返回值的方法在Circle类中加入doubleg

6、etR()用来返回对象的半径,通过returnr语句即可返回对象的半径。此外,由于r的数据类型为double,因此getR()所返回的数据类型也要是double,在定义getR()方法时,在前面要加上double关键字。doublegetR(){returnr;}3.公有成员与私有成员从类外部访问成员变量时,如果没有一个机制来限制访问的方式,则很可能导致安全上的漏洞。为了防止这种情况发生,java提供了私有成员。(1)创建私有成员如果在成员变量的声明前加上private,则无法从类Circle以外的

7、地方赋值或读取该成员,因此可以达到数据保护的目的。3.公有成员与私有成员(2)创建公有成员既然类外部无法直接访问类内部的私有成员,那么java就必须提供另外的途径,使得私有成员可以通过这个途径供外界访问。解决此问题的办法就是创建公有成员方法,在类中通过公有成员方法来对私有成员做处理。(3)数据的封装在面向对象程序设计里,所谓封装,就像上述例子一样,把成员变量和成员方法依功能划分为“私有成员”与“公有成员”,并且包装在一个类中来保护私有成员,使得它不会直接受到外界的访问。3.公有成员与私有成员(4)省

8、略public与private如果类的成员前省略public与private标识符,则表示这个成员只能在同一个package里被访问。可以暂且把package想象成一个群组,每个类都会有它所归属的群组;没有写上public和private,在该成员只能在同一个群组里被访问。

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

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

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