- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java面向对象技术-5
主要内容 用面向对象语言例如Java所编的程序就一定是面向对象程序吗? 概念与特点 访问控制 体现封装,则需要掌握访问控制符public、 protected、 private、 “默认”的用法。 消息 能否发送消息取决于 继承 通过extends关键字实现; 子类可以从父类继承所有非private的属性和方法作为自己的成员; Object类是所有类的共同祖先,即使定义类时没有写extents Object。 在Object当中定义了许多方法,这些方法都可以被所有子类所继承。 多态的定义 多态的概念:多态是指一个程序中同名的不同方法共存的情况 Java中提供两种多态的机制:重载(overloading)与覆盖(overriding) 类Parent中有两个getScore方法,它们的参数有所不同 class Parent{ public int getScore(){ return 3; } public int getScore(int i){ return i; } } 覆盖 子类对父类的同名方法(方法名称相同,参数相同,返回 类型相同)重新进行定义,即在子类中定义与父类中已定 义的相同名而内容不同的方法。 覆盖例1 class Parent { public int getScore() { return 3; } public String getCountryName() { return “China”; } } 覆盖——注意 子类的访问修饰符权限应等于或大于父类 static方法不能覆盖非静态方法,也不能被非static方法覆盖,但是static方法可以覆盖static方法 方法前有final修饰符,此方法不能在子类方法中进行覆盖 在JDK中,很多父类的方法被子类重新覆盖,赋予了不同的含义,如Object类中的boolean equals(Object obj)方法 抽象类中如果存在抽象方法,则具体子类必须对抽象方法进行覆盖 覆盖例2 class Super { public Integer getLenght() { return new Integer(4); } } public class Sub extends Super { public Long GetLenght() { return new Long(5); } public static void main(String[] args) { Super sooper = new Super(); Sub sub = new Sub(); System.out.println( sooper.getLenght().toString() + , + sub.getLenght().toString() ); } } * 第五章 面向对象(中) 面向对象的特征 封装 继承 类的多态 面向对象的特征 封 装 class FighterPlane { private String name; private int missileNum; public void setName(String _name) { if(_name != null){ name = _name.trim(); } } public void setNum(int _missileNum) { if(_missileNum 0 ){ missileNum = _missileNum; } } public void fire(){ if (missileNum0){ System.out.println(“now fire a missile!”); } else {System.out.println(“No missile left!”);} } }// end class 对象 在java中这些修饰符可以修饰的地方有3种: 修饰类 修饰类的属性成员(域) 修饰类的成员方法 D D private B B 缺省 B B或(B+C) protected B A public 缺省 public 类前修饰符 类属性成员方法 权限依次增大 A:所有类 B:包中的类 D: 本类 C:所有子类 E:包中子类 访问权限首先看类前的修饰符,当类的修饰符为public时, 则类可以被所有的类所访问(可以im
原创力文档


文档评论(0)