- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序设计 * 7.7 类和对象应用 Java语言的类和对象的定义和使用过程中还有其它需要注意的问题,如类中各种变量的作用域、关键字this的使用、对象数组和对象作为方法的参数等。 Java程序设计 * 7.7.1 变量的作用域 一个类中的变量主要有类的数据域和局部变量两种形式。其中局部变量的使用在方法一章有过介绍。本节将在类的范围内讨论所有变量的作用域。 局部变量是指在类的方法中定义的变量,不能使用访问修饰符限制作用域,其作用域为定义变量的语句开始到该语句所属的语句块的右大括号。 Java程序设计 * 7.7.1 变量的作用域 类的数据域在类内部的作用域与访问修饰符无关,无论在类的任何位置定义数据域,其作用域均为整个类范围,见图(a)。一个特殊情况是某数据域的初始化时使用了另一个数据域,此时被使用的数据域必须定义在前面,如图 (b)所示。 Java程序设计 * 7.7.1 变量的作用域 Java语言允许类方法中的局部变量与类的数据域同名。这种情况下,在定义局部变量的方法内部,局部变量将屏蔽数据域,即局部变量有效。参见如下程序代码: public class Sample { private String name = 张三; //数据域 public void printName() { String name = 李四; //局部变量,屏蔽了数据域name System.out.println(name= + name); //输出局部变量的值 } } 对于上述类执行如下语句后,输出结果是局部变量的值“李四”。 Java程序设计 * 7.7.2 关键字this 类的实例方法中有时会需要引用该类的当前对象,从而访问当前对象数据域或调用当前对象的实例方法。Java语言使用关键字this表示对类的当前对象的引用。类的实例方法中可以用如下方式对当前对象的数据域或方法进行引用: this.数据域 //引用当前对象的数据域 this.实例方法(参数) //引用当前对象的实例方法 关键字this另外一种用途,是在类的一个构造方法中直接调用另外一个构造方法。这种调用不创建对象,只是将程序流程由当前构造方法转到被调用的构造方法执行,返回后继续执行当前构造方法的剩下的语句。其使用形式如下: this(参数); Java程序设计 * 7.7.3 对象作为方法的参数与返回值 对象作为Java程序的基本要素,也被频繁地用作方法的参数和返回值。前面已经学习了基本数据类型和数组变量作为参数和返回值的情况,只要把握好Java语言的参数传递是“单向值传递”,关于对象在方法调用之间的传递就很容易理解了。 与数组变量作为参数和返回值相同,对象引用变量作为参数和返回值时,在方法之间传递的是对象的地址。进行参数传递时,调用方法的实参引用变量与被调用方法的形参引用变量引用的是同一个对象。 Java程序设计 * 7.7.3 对象作为方法的参数与返回值 例7-6:编写一个TestRectangle4类,其中定义两个静态方法:createRectangle方法作用是产生一个随机大小的矩形对象;displayRectangle方法的输出一个矩形对象,使用形参获得矩形对象。 Java程序设计 * 7.7.4 对象数组 程序中有时会需要存储和使用一个类的很多对象,这时应该使用对象数组。对象数组是指数组元素为对象引用变量的数组。定义数组变量及创建数组的形式如下: 类名[] 数组变量 = new 类名[数组大小]; 例如要定义并创建一个可以存放10个Rectangle4对象的数组使用以下语句: Rectangle4[] rectArray = new Rectangle4[10]; 如果要将数组的每个元素都引用一个矩形对象,可以使用如下的循环语句实现: for(int i = 0; i rectArray.length; i++){ rectArray[i] = new Rectangle4(); } Java程序设计 * 7.8 实例分析:二维坐标系的圆 例7-8:编写程序,用户输入二维坐标系的两个圆的圆心坐标和半径后,程序能够判断这两个圆是否是相交圆。 课后工作 复习本章内容 …… Java程序设计 * Java程序设计 第7章 对象和类 Java程序设计 * 学习目标 本章介绍Java面向对象程序设计的基本知识:定义类、创建对象及使用对象解决实际问题 Java程序设计 * 7.1 对象和类的概念 面向对象程序设计的核心是使用对
您可能关注的文档
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第5讲微生物与发酵工程含生物固氮.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第1讲植物的激素调节.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第2讲动物生命活动的调节.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第3讲人体的稳态与免态.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第1讲生物的生殖和发育.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第2讲遗传的物质基础.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第3讲遗传的基因规律、伴性遗传及人类遗传病与优生.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第4讲细胞质遗传、基因结构与基因工程.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第5讲生物的变异与进化.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题6实验、实习与研究性课题.ppt
- 2018年普通高等学校招生全国统一模拟考试理综-化学试题扫描版含答案.doc
- Unit6SunshineforallStudyskills课件-牛津译林版八年级英语下册.pptx
- Unit3After-schoolactivitiesLesson2Avisittoafarm课件冀教版(2024)英语七年级下册.pptx
- 第13课《最后一次讲演》课件-统编版语文八年级下册.pptx
- Unit2BesportybehealthyReading课件-牛津译林版(2020)高中英语.pptx
- Unit2Differentfamilies第三课时(课件)-人教PEP版(2024)英语三年级上册.pptx
- 服务业的区位选择教学课件-湘教版高中地理必修二.pptx
- 城镇化进程及其影响课件高中地理湘教版(2019).pptx
- 国家海洋权益与海洋发展战略课件高一地理中图版必修2.pptx
- 工程变更管理细则.doc
最近下载
- 3.2.2酚( 说课课件)- 高中化学人教版(2019)选择性必修3.pptx VIP
- 《新中式风格在室内设计中的应用》开题报告文献综述(含提纲).doc VIP
- 标准图集-10J301-地下建筑防水构造.pdf VIP
- 3A标准卫生级管件.pdf
- 2024年北京市中考化学真题卷(含答案与解析).pdf VIP
- 读书分享小学生读书会《灰尘的旅行》儿童读书分享ppt课件(优质ppt).pptx
- 模块六多媒体素材加工课件-中考信息技术一轮复习.pptx
- 物质的特性教学课件.ppt VIP
- 英国A-level物理简明教材100 英国A-Leve课本-Edexcel AS Physics in 100 Pages.pdf VIP
- 高中政治核心素养发展视角下的思辨性教学策略研究教学研究课题报告.docx
文档评论(0)