接口4
2016-05-24 14:40
204 查看
public interface CanSwim { void Swim(); }
public interface CanFly { void Fly(); }
public class Hero extends ActionCharacter implements CanSwim, CanFly { String name; Hero(String name) { this.name = name; } @Override public void Fly() { System.out.println(this.name + "会飞。"); } @Override public void Swim() { System.out.println(this.name + "会游泳。"); } }
public class Adventure { public static void main(String[] args) { Hero hb = new Hero("张三"); hb.Swim(); hb.fight(""); hb.Fly(); CanFly cf = new Hero("李四"); cf = hb; cf.Fly(); CanSwim cs = new Hero("王五"); cs = hb; cs.Swim(); ActionCharacter ac = new Hero("马六"); ac = hb; ac.speak("大家跟我一起战斗!"); ac.fight("发射!"); } }
结果:
相关文章推荐
- 6、Jenkins利用Role-based Authorization Strategy插件管理项目权限
- Django认证系统
- 【leetcode】131. Palindrome Partitioning
- log4j每天产生一个日志文件
- Node.JS模拟新浪登录
- MVC -- 后台RedirectToAction传递实体类与字符串
- discuz安装配置
- VC CFont 用法
- aidl.exe'' finished with non-zero exit value 1问题解决
- 山石网科-Hillstone-双ISP接入流量故障排错终结篇
- 2016年过半~
- iOS学习之——UIView的setNeedsDisplay和setNeedsLayout方法
- swift基础笔记3-枚举
- easyui页面一打开的时候出现短暂混乱的问题,解决办法
- 网页大小自适应方案
- 好的安全工具就该藏着?
- 关于全屏模式adjustResize不起作用解决办法(特别是有虚拟键盘的)
- VS2013+ffmpeg开发环境搭建
- span div等的自动换行
- mysql备份总结