- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章对象与类
通过添加访问器和修改器修改Rectangle类 class Rectangle { private int a,b; public int getArea(){ return a*b; } public int setAB(int a,int b){ if(a=0||b=0) System.out.println(“Erro input!”); this.a=a; this.b=b; } } 3.13参数传递 Java的参数传递都是值传递 Java参数传递分为基本类型参数传递与对象类型(即引用类型)参数传递。 基本类型参数值传递意味着当将一个实参值传递给一个方法时,如果方法修改了该参数,改变的是形参,而原始的实参的值保持不变。 引用类型变量传递将一个参数传递给一个方法后,方法接收的是一个引用变量的值,这个值某个对象的内存地址值。引用变量的参数传递仍然是值传递。 程序3.10 TestPass.java class Student { int age; String name; public Student(int a,String n ) { age=a; name=n; } } public class TestPass { public static void changeAge(int fromAge, int toAge ){ fromAge=toAge; System.out.println(After invoke method changeAge fromAge is:+toAge); } public static void changeObjAge(Student st, int toAge ){ st.age=toAge; } public static void main(String[] args) { Student st1=new Student(19,Jacky); changeAge(st1.age,20); System.out.println(After invoke method changeAge student age is: +st1.age); changeObjAge(st1,20); System.out.println(After invoke method changeObjAge student age is: +st1.age); } } changeObjAge方法通过接受引用变量参数改变了对象的成员值,如果你从此就认为传递了引用变量参数就可以改变对象就大错特错了。以修改后的程序3.10 TestPass1.java为例 方法调用完毕st完成使命从内存中释放,而原来的st1仍然指向“Jacky”,“Julie”没有引用变量再引用它成为垃圾,等待垃圾回收器清除。整个过程“Jacky”没有发生改变。 由此可知,Java的参数传递都是值传递,只要理解了这一点并掌握了内存的变化过程,这样的错误很容易避免。 4.8 总结 面向对象设计是一种更接近人类自然思维的程序设计方法,最重要的就是通过类的定义与使用,类的封装等特性提高程序的复用性。 类是封装了相同属性与行为的一类对象的模版,对象就是类的实例,使用new关键字加构造方法的方式创建对象,然后通过引用变量名加点(.)运算符来访问对象成员。 实例成员变量是属于类的一个对象实例的变量,要使用它必须通过创建类的对象实例然后用引用变量访问它。 类属成员变量和方法,即静态成员,用static关键字声明,静态变量和静态方法不依赖于具体实例,可以通过类名直接访问。 修饰符指定类、方法和数据的访问方式。public表示任何用户都具有访问权限。Private表示方法和数据成员只能在类内部访问。 方法的所有参数传递都是值传递。对于基本类型的参数传递实际值,对于引用类型的参数传递对象的引用。 具体隐藏实现是通过设定修改器与访问器方法把类中的数据封装起来,通过这些方法访问类的数据提高了安全性。 This是指向类的当前实例的引用,关键字this也能在构造方法中使用,this()调用同一个类的另一个构造方法。 创建的对象存储在对内存中,这是一种灵活的存储机制,你不必自己定义对象的生命周期,在合适的时候垃圾回收器会对垃圾对象进行清理以释放内存空间。 从类的角度思考程序设计,举例说明 * 第三章 对象与类 3.1 类与对象
您可能关注的文档
- 第七章楼梯构造.ppt
- 第七章梁弯曲时的位移.ppt
- 第七章概述.ppt
- 第七章民事权利客体的种类.ppt
- 第七章氧化还原反应.PPT
- 第七章欧拉方程.ppt
- 第七章流动资金贷款与项目贷款.ppt
- 第七章沟通.ppt
- 第七章法国的新闻传播事业.ppt
- 第七章消费者权益保护法.ppt
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
最近下载
- 小学语文关联词造句.doc
- 《840呼吸机基本模式及参数调节》.pptx VIP
- 地铁车站施工组织设计.pdf VIP
- IB经济学 知识点总结手册 IB Economics in a Nutshell (Exam Study Guide).pdf VIP
- 2023年糖尿病肾脏疾病临床诊疗中国指南.docx
- 城市轨道用槽型钢轨闪光焊接质量检验标准.pdf
- 六年级上册英语教案-Unit4 January is the first monthLesson 19-20|人教(精通).docx
- 机电一体化专业大学生职业生涯规划ppt.pptx
- (人教2024版)英语七年级上册 Unit 2单元知识总结(新教材).docx
- 西门子840D840DE编程说明书.doc
文档评论(0)