[理学]第4章 Java-T3_2011-9-21.ppt

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

第一次课 类和对象 创建、回收对象 如何定义类(域变量、构造方法、方法) 对象的生命周期 new创建 Ball ball=new Ball(); 使用 ball.getName() 废弃与垃圾回收 ball=null; //取消指向对象,对象成垃圾,系统适时地回收,回收时执行类的finalize()方法. 垃圾收集(Garbage Collection) 垃圾自动回收的时机:在内存资源不足或在程序执行空闲的时候,JAVA执行环境会自动检查对象,看是否有未被引用的对象,如果有,则自动回收内存; System.gc(); 建议程序进行垃圾收集,如果建议被采纳,对象资源被回收; 回收前执行finalize()方法; JAVA的finalize()方法——在对象被回收时执行,对象资源被回收的时间不确定,因此finalize()方法被执行的时间不确定。 垃圾收集使用举例 public class GcTest { private String name; public GcTest(String name) { this.name=name; System.out.println(name+建立); } protected void finalize() { System.out.println(name+被回收); } } public class UseGc { public static void main(String[] args) { GcTest gc1=new GcTest(Object1); GcTest gc2=new GcTest(Object2); GcTest gc3=new GcTest(Object3); gc1=null; gc2=null; gc3=null; System.gc();//建议回收对象 } } 作 业 1、定义矩形类,定义求周长和面积的方法。 2、定义圆类,定义求周长和面积的方法。 3、定义长方体类,定义求底面积、体积的方法。 4、定义球类,定义求体积的方法。 5、定义一个计算器类,包括加、减、乘、除运算。 方法定义 方法定义的格式: [存取权限修饰词] 返回类型 方法名(参数列表) { 方法体 } 返回类型: 返回数据的数据类型 除构造方法,返回类型为: void、基本数据类型或引用数据类型 最多只能返回一个值 方法名: 合法标识符 参数列表: 用逗号(,)分隔开 传入的参数是基本数据类型,为值传递(举例见下页); 传入参数是一个对象,为地址传递。 如果有值返回: return 表达式; // 退出该方法,返回该表达式的值 返回值是计算结果或其他想要的数值、对象; 返回值类型必须与声明的类型一致 值传递举例 public class J_Primitive { public static void mb_method( int a ) { System.out.println(方法内参数值为:a= + a); a++; System.out.println(方法内参数值变化之后为:a= + a); } public static void main(String args[ ]) { int i=0; System.out.println(在方法调用之前变量i= + i); mb_method(i); System.out.println(在方法调用之后变量i= + i); } } 地址传递举例 class TestPara { int k; } public class PassAddress { public static void mb_method(TestPara obj) { System.out.println( 方法内参数值为:k= + obj.k); obj.k++; System.out.println( 方法内参数值变化之后为:k= + obj.k); } public static void main(String[] args) { TestPara obj = new TestPara(); obj.k = 10; System.out.println(在方法调用之前变量obj.k

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档