您的位置:首页 > 其它

UML第八集

2015-11-01 19:18 357 查看
本集主要是通过一个例子,说明在面向对象程序设计语言中,怎样定义一个类,怎样给一个类的代码进行实现,怎样编写继承,怎样表示多态,请屏住呼吸...下面开始喽...



用代码实现小提琴演奏

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
{
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: