- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一旦定义了所需的类,就创建了一种新的数据类型,使用类类型定义的变量叫对象。对象创建类的变量称为类的实例化。对象是类的一个实例。类的对象是在程序运行中创建生成的,其所占的空间在程序运行中动态分配。当一个类的对象完成了它的使命,为节省资源,Java的垃圾回收程序就会自动收回这个对象所占的空间,即类对象有自己的生命周期。 Java对象的生命周期大致包括三个阶段:对象的声明和创建,对象的使用,对象的清除。 如:Box box1; 定义的box1是一个对类型为类Box的对象的引用,box1不是对象本身,可理解为指针,可以指向类Box的某一个具体的对象(实例)。 1.创建对象 创建类的对象一般需要两步: 第一步,声明该类型的一个变量; 第二步,用new运算符为对象动态分配(即在运行时分配) 内存空间,并返回对它的一个引用,这个引用被存储在该变量中。 利用new创建类的对象的通用形式如下: 类对象名 = new 类名(); 例如,创建一个Box类的对象myBox可用以下语句 Box myBox; //声明一个对象 myBox = new Box();//创建一个对象 new运算符允许与类声明结合使用来创建一个类的对象,如上面两行语句可组合为: Box myBox = new myBox(); 定义好后,可以把myBox作为类Box的对象来使用,而实际上myBox仅是保存了实例对象的地址,利用它来间接的引用实例对象。 注:创建一个对象需要该类的构造方法和new关键字(缺一不可)。New主要作用是在创建对象时,开辟一块内存,而内存空间的大小由构造函数决定。 2.使用对象 创建了类的对象后,就可以对对象的各个成员进行访问,以进行各种处理。访问对象成员的通用形式为 类对象名 . 成员变量名 类对象名 . 成员方法名( ) // 括号不能省略 运算符“. ”称为成员运算符,在类对象名和成员变量名、成员方法之间起到连接的作用,以此指明是哪个对象的成员。 从上面的访问形式,可以看出,要使用对象变量首先要构造对象,获得类对象名,即类变量名。 【例】利用上例定义的Box类,计算长、宽、高分别为5、4、3的立方体体积。 public class BoxDemoOne{ public static void main(String args[]){ Box myBox = new Box(); double vol; myBox.length = 5; myBox.width = 4; myBox.height = 3; vol = myBox.length * myBox.width * myBox.height; System.out.println(立方体的体积是: + vol); } } 注意:要编译成功,必须将例5.1定义的Box类置于本程序中,以生成Box.class和BoxDemoOne.class两个字节码文件,程序运行结果如下: 长方体的体积是: 60.0 当程序需要更多的类对象时,可用new运算符多次创建该类的对象,然后按例5.3中的代码形式进行长方体体积的运算。这样一来,程序中对成员变量的访问赋值语句会很多,显得程序不够紧凑。更好的方法是在类定义中加入可对成员数据进行操作的成员方法(如例所定义的类Box),可使程序更加有效率。 例p90 3.清除对象 在java中,有自动内存管理系统的垃圾收集器,会定时或在内存不足时,自动回收垃圾对象所占的内存。程序员使用new关键字来为对象分为配空间释放对象时,只需要将对象所有引用赋值null。 其语法格式如下所示: objPerson=null; 当使用不同的构造方法或参数数据创建对象时,就会产生大量的、不同的对象。但这些对象有一个特点,就是都是来源于同一个类。这些对象之间,可以进行相应的引用。 例:class Obj{ double d; public Obj(double dd) { d=dd;} public void getD() {System.out.println(d);} public static void main(String args[]){ Obj Obj1=new Obj(2.34); Obj Obj2=new Obj(3.34); Obj1.getD(); Obj2.getD(); Obj1=Obj2; //对象引用 Obj1.getD(); } 练习:定义C
您可能关注的文档
最近下载
- 《包装工程》投稿写作模板 模板使用说明: 1. 请将稿件直接 ....doc
- 百胜包装品工厂质量体系审核纲要及评估细则 V2012.pdf VIP
- 个人信用报告征信详细版纸质版2024年2月最新版带水印可编辑-实线.pdf
- 第三十届WMO省测特训营6年级第二讲——寻找透明的积木.docx VIP
- 第三十届WMO省测特训营6年级第二讲——课后练习题含答案.docx VIP
- 第三十届WMO省测特训营6年级第一讲——课后练习题含答案.pdf VIP
- PBL病例—休克【24页】(最新文档).pptx VIP
- 故事——小羊过桥.ppt
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf
- 食品用包材供应商现场审核方案(检查表).xls VIP
文档评论(0)