CHJava面向对象程序的设计.pptVIP

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CHJava面向对象程序的设计

第3章 Java的面向对象程序设计;3.1 面向对象程序的概念;3.2 类(class);1. 类声明 (Class Declaration);2. 类体(Class Body);class 梯形 { float 上底, 下底, 高, laderArea; // 变量定义部分 float 计算面积() { // 方法定义 laderArea = (上底 + 下底) * 高 / 2.0f; return laderArea; } void 修改高(float h) { // 方法定义 高 = h; } } ;3. 成员变量和局部变量 (Member Variables Local Variables);class 三角形 { float sideA, sideB, sideC, lengthSum; void setSide(float sideA, float sideB, float sideC) { this.sideA = sideA; this.sideB = sideB; this.sideC = sideC; } } 其中,this.sideA、this.sideB、this.sideC 就分别表示成员变量 sideA、sideB、 sideC ;4. 方法(Method );5. 方法的参数(Arguments );6. 方法重载(Overload);class Area { float getArea(float r) { return 3.14f * r * r; } double getArea(float x, int y) { return x * y; } float getArea(int x, float y) { return x * y; } double getArea(float x, float y, float z) { return (x * x + y * y + z * z) * 2.0; } };7. 构造方法(Constructor);构造方法(Constructor);8. 类方法和实例方法;3.3 对象 ;1. 创建对象; 下面举例说明对象的内存模型 class XiyoujiRenwu { float height, weight; String head, ear, hand, foot, mouth; void speak(String s) { System.out.println(s); } } class Test { public static void main(String args[]) { XiyoujiRenwu zhubajie; // 声明对象 zhubajie = new XiyoujiRenwu(); // 为对象分配内存, // 使用new 运 算 符和默认的构造方法 } }; 3. 声明对象时的内存模型 ; 4. 对象分配内存后的内存模型 ;5. 使用对象 ;6. 对象的引用和实体;7. 参数传值;8. 基本数据类型参数的传值; 9. 引用类型参数的传值;3.5 null 关键字;3.6 static 关键字;1. 实例变量和类变量的区别;2. 实例方法和类方法的区别;3.7 this 关键字;3.8 包(Package);1. 包语句 ;2. import 语句 ;3. 将自定义的类打成jar包 ;3. 访问权限;4. 私有变量和私有方法;5. 公有变量和公有方法;6. 友好变量和友好方法;7. 受保护的成员变量和方法;8. public类和友好类;3.9 类的继承;1. 子类;2. 子类的继承性;3. 子类和父类在同一包中的继承性 ;4. 子类和父类不在同一包中的继承性 ;5. 成员变量的隐藏和方法的重写;6. final关键字;7. 对象的上转型对象;上转对象不能操作子类新增的成员变量(失掉了这部分属性);不能使用子类新增的方法(失掉了一些功能)。 上转型对象可以操作子类继承或隐藏成员变量,也可以使用子类继承的或重写的方法。 上转型对象操作子类继承或重写的方法时,就是通知对应的子类对象去调用这些方法。因此,如果子类重写了父类的某个方法后,对象的上转型对象调用这个方法时,一定是调用了这个重写的方法。 可以将对象的上转型对象再强制转换到一个子类对象,这时,该子类对象又具备了子类所有属性和功能。 例3.19;3.11 多态性;1. abstract 类和abstract方法;2. abstract类的特点 ;对于abstract类,我们不能使用new运算符创建该类的对象,需产生其子类,由子类创建对象;如果

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档