简介
上二篇主要讲了面向对象理论中抽象类的具体应用。但是举的例子很简单。所以这一篇想模拟一个实际的项目来具体说明一下抽象类的具体应用。采用的语言是Java必定会这种语言的童鞋很多。
项目需求:
模拟开发一个播放视频的万能播放器的功能。可以播放AVI、MPEG、RMVB 对这三种格式的视频播放。
例如:001.avi 自动选择播放AVI格式的功能 001.mpeg 自动选择播放MPEG格式的功能 001.rmvb 自动选择播放RMVB格式的功能
其它格式,提示用户。此文件格式不能进行播放。具体播放功能可以不用实现。可以用信息来代替。
需求分析:
通过上面的内容我们知道面向对象的主体是播放器(面向对象开发主要就是在需求中找到相应的对象)方法体是播放视频功能,实现的功能是(播放xxxxxx格式视频)具体功能不用实现。只是模拟一下播放的过程。
通过上面分析 抽象类 :播放器 抽象方法 :播放功能
子类 Avi、Mpeg、RMVB
思路清晰了,下面开始编写代码。
下面是代码实现,已经测试过:
定义抽象类PlayerHelper:
1 packagecom.PlayerHelper;2
3 public abstract classPlayerHelper {4 public String FileName = "";5
6 publicPlayerHelper(String FileName) {7 this.FileName =FileName;8 }9
10 public abstract void Play() throwsException;11 }
题外话:
这样写异常还有一个