网站大量收购独家精品文档,联系QQ:2885784924

CH_4_Java面向对象的程序设计4.pptx

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CH_4_Java面向对象的程序设计4

public class 第0x04讲 java面向对象的程序设计 extends Java 语言与网络编程{ } 4.9 Java变量及其传递 4.10 内部类 2017-6-9 中国矿业大学计算机科学与技术学院 2 4.9 Java变量及其传递 4.9.1 基本数据变量与引用型变量 4.9.2 成员变量与局部变量 4.9.3 变量的传递 4.9.4 引用型变量的比较 2017-6-9 中国矿业大学计算机科学与技术学院 3 4.9.1 基本数据变量与引用型变量 2017-6-9 中国矿业大学计算机科学与技术学院 4 基本类型变量存储示意图 引用型变量存储示意图 public class MyDate { private int day = 12; private int month = 6; private int year = 2015; public MyDate(int year, int month, int day) { this.year = year; this.month = month; this.day = day; } void addYear() { year++; } public void display() { System.out.println(year + - + month + - + day); } public static void main(String[] args) { MyDate m, n; m = new MyDate(2003, 9, 22); n = m; n.addYear(); m.display(); n.display(); System.out.println(m.toString()); System.out.println(n.toString()); } } 2017-6-9 中国矿业大学计算机科学与技术学院 5 m n 7ea06d25 22 9 2003 day month year 堆 MyDate m, n; m = new MyDate(2003, 9, 22); n = m; n.addYear(); m.display(); n.display(); System.out.println(m.toString()); System.out.println(n.toString()); 2017-6-9 中国矿业大学计算机科学与技术学院 6 7ea06d25 4.9.2 成员变量与局部变量 成员变量与局部变量的区别? 语法上,成员变量属于类或接口,局部变量是方法中定义的变量或方法的参变量;成员变量可以被public,private,static等修饰,局部变量则不能;成员变量及局部变量都可以被final修饰 存储方式看,成员变量是对象的一部分,存在堆中;局部变量存在栈中 在内存中的存在时间看,成员变量随着对象的创建而存在,局部变量随着方法的调用而产生,随着方法调用结束而自动消失 2017-6-9 中国矿业大学计算机科学与技术学院 7 4.9.2 成员变量与局部变量 成员变量与局部变量的区别? 成员变量会自动以该类型的默认值(0, false, null等)赋值;局部变量必须显式地赋值后才能使用 2017-6-9 中国矿业大学计算机科学与技术学院 8 class A { int a; void m() { int b; System.out.println(a); //合法的,a的值为0 System.out.println(b); //不合法,编译不通过 } } 4.9.3 变量的传递 按值传递: 当将一个参数传递给一个函数时,函数接收的是原始值的一个副本。因此,如果函数修改了该参数,仅改变副本,而原始值保持不变 按引用传递: 当将一个参数传递给一个函数时,函数接收的原始值的内存地址,而不是值的副本,因此,如果修改了该参数,调用代码中的原始值也随之改变 2017-6-9 中国矿业大学计算机科学与技术学院 9 Java中按值传递所有参数, 制作所有参数的副本, 而不管它们的类型 2017-6-9 中国矿业大学计算机科学与技术学院 10 public class TestTransOfValue { public static void main(String args[]) { int val=10; StringBuffer sb1, sb2; sb1 = new StringBuffer(apples); sb2 = new StringBuffer(pears); System.out.println(val is + val); System.out.println(sb1 is + sb

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档