欢迎来到天天文库
浏览记录
ID:55377771
大小:339.50 KB
页数:38页
时间:2020-05-15
《Java-第06章-继承和多态8.30.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章继承和多态6.1何谓继承6.2继承语法细节6.1何谓继承什么时候用继承:多个类间出现重复的代码时,就把相同的代码提升为父类。如何在代码中体现继承:extends关键字publicclassSwordMan{privateStringname;//角色名称privateintlevel;//角色等级privateintblood;//角色血量publicvoidfight(){System.out.println("挥剑攻击");}publicintgetBlood(){returnblood;}publicvoidsetBlood(i
2、ntblood){this.blood=blood;}publicintgetLevel(){returnlevel;}publicvoidsetLevel(intlevel){this.level=level;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}}publicclassMagnician{privateStringname;//角色名称privateintlevel;//角色等级privateintblood;//
3、角色血量publicvoidfight(){System.out.println("魔法攻击");}publicintgetBlood(){returnblood;}publicvoidsetBlood(intblood){this.blood=blood;}publicintgetLevel(){returnlevel;}publicvoidsetLevel(intlevel){this.level=level;}publicStringgetName(){returnname;}publicvoidsetName(Stringname)
4、{this.name=name;}}publicclassRole{privateStringname;//角色名称privateintlevel;//角色等级privateintblood;//角色血量publicintgetBlood(){returnblood;}publicvoidsetBlood(intblood){this.blood=blood;}publicintgetLevel(){returnlevel;}publicvoidsetLevel(intlevel){this.level=level;}publicStrin
5、ggetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}}Pullup扩充(extends)父类(继承)Java使用“extends”作为继承的关键词publicclassSwordManextendsRole{publicvoidfight(){System.out.println("挥剑攻击");}}编写主类,验证上述类之间的继承。publicclassRPG{publicstaticvoidmain(String[]args){SwordMansword
6、Man=newSwordMan();swordMan.setName("justin");swordMan.setLevel(1);swordMan.setBlood(200);System.out.printf("剑士:(%s,%d,%d)%n",swordMan.getName(),swordMan.getLevel(),swordMan.getBlood());Magicianmagician=newMagician();magician.setName("Monica");magician.setLevel(1);magician.
7、setBlood(100);System.out.printf("魔法师:(%s,%d,%d)%n",magician.getName(),magician.getLevel(),magician.getBlood());}}剑士:(justin,1,200)魔法师:(Monica,1,100)注意:父类的private成员会被继承,只是子类无法直接存取,必须通过父类提供的方法来存取。6.1.2多态与is-aJava继承的特点:子类只能继承一个父类。子类和父类是is-a关系。SwordmanisaRole,MagicialisaRole。这
8、是理解多态的基础SwordManswordMan=newSwordMan();Magicianmagician=newMagician();Rolerole1=newSwordM
此文档下载收益归作者所有