第3章封装与类资料.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
方法重载(method overloading) 方法重载是指多个方法享有相同的名字,但是这些方法的参数必须不同,或者是参数的个数不同,或者是参数类型不同(对应位置)。 方法的返回类型可以不相同 方法的修饰符可以不相同 返回类型和参数的名字不能用来区分重载的方法。 Area类中getArea方法是一个重载方法。 可变参数 一个方法接受的参数个数不固定,JDK1.5的新特性 sum(16,24,3); sum(33,2,9,12); 可变参数的特点: 只能出现在参数列表的最后 在变量类型和变量名之间加“…”表示多个不确定个数的变量,可以有空格 调用可变参数时,编译器为该可变参数隐含创建一个数组,以数组形式访问可变参数 VarifiedParams.java VariableParamTest.java ? Page * 静态和非静态初始化块 在类的范围中直接声明一个代码块(大括号括起的一些语句),不属于任何方法 这些代码块可以为类或一个对象实例完成额外的准备工作,称为初始化块 ( initializer block) 非静态初始化块会在构造对象时执行一次,静态初始化块(标为static块),会在类加载时执行一次 例子:ColorWheel.java ? Page * 如果 r1=null; 不再引用任何实体。 空对象:没有实体的对象。空对象不能使用,即不能让一个空对象去调用方法产生行为。 假如程序中使用了空对象,程序在运行时会出现异常:NullPointerException。因此,在编写程序时要避免使用空对象。 ? Page * 方法的调用 格式:objectReference.methodName([params]); 例如: p.move(30,20); new Point( ).move(30,20); ? Page * 3.3.3 对象的清除 Book b = new Book(); Book c = new Book(); ? Page * 3.3.3 对象的清除 对象1被抛弃并可作为垃圾收集的对象 b = c; ? Page * 3.3.3 对象的清除 c = null; 将null赋值给c,它代表它不再引用任何对象。 ? Page * 3.3.3 对象的清除 Java使用称为“垃圾回收”(Garbage Collection)的技术删除不再需要的对象 System.gc( )- 强制启动垃圾回收器   当系统内存用尽或调用System.gc( )要求垃圾回收时,垃圾回收线程与系统同步运行。 对于调试有用,例如:在完成一些活动之前希望保证Java已经做了清除工作 变量 根据变量定义的位置分为: 成员变量 声明在类内而不是方法内 如果不初始化,则为该类型的默认值 生命周期与对象的生命周期相同 局部变量 声明在方法内的 在使用前必须初始化,因为它的值不可预见 生命周期(作用域)局限于所在方法的 方法的参数基本上与局部变量相同 4.成员变量 声明方式: [public | protected | private ] [static] [final] [transient] [volatile] type variableName; static: 静态变量(类变量);相对于实例变量 final : 常量 transient: 暂时性变量,用于对象存档 成员变量在整个类内都有效,与它在类体中的先后位置无关。 例:“机动车”的类;也可以写成: 成员变量 vs. 局部变量(方法) 4.成员变量 变量命名: 变量名首字母应该小写,中间单词首字母大写,集合或数组名用复数,图形控件变量结尾加相应的名称,例如: int width, height; List students; JPanel tablePanel; 4.成员变量 成员变量根据所加修饰符的不同可以分为: final 变量 常量 static 实例变量(instance variable) 静态变量(类变量,static variable) final final 可以修饰类、类的成员变量、成员方法和局部变量,但final 的作用不同。 1) final修饰类,则类不能被继承(不能有子类)   final class finalClassName{   …   } 如 String类,出于安全性考虑。 final 2) final 修饰成员变量,则成为常量: 例如:final int MAX=100; 常量名字习惯用大写字母; 初始化有三种情况,例子 声明同时初始化 在每一个构造函数中初始化 初始化块 无论是局部还是成员常量,只要是常量只能

文档评论(0)

基本资料 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档