UML第八集
2015-11-01 19:18
357 查看
本集主要是通过一个例子,说明在面向对象程序设计语言中,怎样定义一个类,怎样给一个类的代码进行实现,怎样编写继承,怎样表示多态,请屏住呼吸...下面开始喽...
用代码实现小提琴演奏
现在要求不仅要有小提琴,还要有小号和钢琴
现在要求不仅要知道乐器的价格还要知道乐器的品牌,这样一个一个的去定义会很费事,所以用到继承性
继承性,用接口实现
看这张图,人是一个类,老师和学生各是一个类,但有人也同时是老师和学生,TS就是多重继承,所以继承要用接口实现
定义包
用代码实现小提琴演奏
Class Violin { Private double price; Public Void play () {system.out.printIn(“Violin Plays”;) Public Void tune () {system.out.printIn(“Violin Plays”;) } Public class Test { Public static void main(int, string[]) { Violin s1 = New Violin(); S1.tune() S1.play(); } }
现在要求不仅要有小提琴,还要有小号和钢琴
Class Piano { Private double price; Public Void play() {system.out.printIn(“Piano Plays”;) Public Void tune () {system.out.printIn(“Piano Plays”;) } Class Trumpet { Private double price; Public Void play() {system.out.printIn(“Trumpet Plays”;) Public Void tune () {system.out.printIn(“Trumpet Plays”;) }
<p>Class Violin</p><p>{</p><p> Private double price;</p><p> PublicVoid play(){system.out.printIn(“Violin Plays”;)</p><p> PublicVoid tune () {system.out.printIn(“ViolinPlays”;)</p><p> </p><p>}</p><p> </p><p></p><p>Public class Test</p><p>{</p><p> Publicstatic void main(int, string[])</p><p> {</p><p> Violins1 = New Violin();</p><p> Piano s1 = New Piano ();</p><p> Trumpet s1 = New Trumpet ();</p><p> </p><p> S1.tune();</p><p> S2.tune();</p><p> S3.tune();</p><p> S1.play();</p><p> S2.play();</p><p> S3.play();</p><p> }</p><p>}</p>
现在要求不仅要知道乐器的价格还要知道乐器的品牌,这样一个一个的去定义会很费事,所以用到继承性
Abstract Class Instrument { Private double price; //价格 String brand; //重量 Public Void play(); Public Void tune (); 只给出接口 }
<p>Class Piano extends Instrument </p><p>{</p><p> PublicVoid play() {system.out.printIn(“Piano Plays”;)</p><p> PublicVoid tune () {system.out.printIn(“PianoPlays”;)</p><p>}</p>多态性,同一个命令,不同的对象有不同的反应
Public class Test { Public void play (Instrument x) { x.play } Public static void main(int, string[]) { Violin s1 = New Violin(); Piano s2 = New Piano (); Trumpet s3 = New Trumpet (); S1.tune(); S2.tune(); S3.tune(); S1.play(); S2.play(); S3.play(); } } Instrument ss1 =new Violin(); Instrument ss1 =new Piano(); Instrument ss1 =new Trumpet(); Test s = new Test(); While(!乐谱结束) { Instrument a= 读取下一个演奏对象 a.play(); }当发出play命令,小提琴发出小提琴声音,小号发出小号声音,这就是多态
继承性,用接口实现
Interface Ins { Private double price; //价格 String brand; //重量 Public Void play(); Public Void tune (); 只给出接口 } Class Violin implements ins { …… }
看这张图,人是一个类,老师和学生各是一个类,但有人也同时是老师和学生,TS就是多重继承,所以继承要用接口实现
定义包
Package com.postal.xian; Import java.awt.event.*; Class A { }
相关文章推荐
- UML图概况
- [BZOJ1878] [SDOI2009]HH的项链
- 嵌入式linux学习笔记(一)
- ios新手必看之手势
- 端口转发、重定向工具 rinetd
- UICollectionView
- 信息安全系统设计基础第七周期中总结
- 日本超人气洛比(Robi)声控机器人
- C练习小代码-20151012
- RANSAC笔记
- Set Up Apache2 With mod_fcgid And PHP5 On CentOS
- UML之对象图
- 浅识排序----桶排序
- Java四种读取和创建XML文档的例子教程
- hdu3646 Fate Stay Night(dp,读题障碍)
- centos安装时各个版本的含义
- 大数相加
- C++primer 17.4 随机数
- 第九周--项目三--稀疏矩阵的三元组表示的实现及应用(1)
- Java os.name