java完成投票法式設計。本站提示廣大學習愛好者:(java完成投票法式設計)文章只能為提供參考,不一定能成為您想要的結果。以下是java完成投票法式設計正文
本文以一個簡略的實例來講明C#戰略形式的完成辦法,分享給年夜家供年夜家參考。詳細完成辦法以下:
普通來講,當一個舉措有多種完成辦法,在現實應用時,須要依據分歧情形選擇某個辦法履行舉措,便可以斟酌應用戰略形式。
把舉措籠統成接口,好比把玩球籠統成接口。代碼以下:
public interface IBall
{
void Play();
}
有能夠是玩足球、籃球、排球等,把這些球類籠統成完成接口的類。分離以下:
public class Football : IBall
{
public void Play()
{
Console.WriteLine("我愛好足球");
}
}
public class Basketball : IBall
{
public void Play()
{
Console.WriteLine("我愛好籃球");
}
}
public class Volleyball : IBall
{
public void Play()
{
Console.WriteLine("我愛好排球");
}
}
還有一個類專門用來選擇哪一種球類,並履行接口辦法:
public class SportsMan
{
private IBall ball;
public void SetHobby(IBall myBall)
{
ball = myBall;
}
public void StartPlay()
{
ball.Play();
}
}
客戶端須要讓用戶作出選擇,依據分歧的選擇實例化詳細類:
class Program
{
static void Main(string[] args)
{
IBall ball = null;
SportsMan man = new SportsMan();
while (true)
{
Console.WriteLine("選擇你愛好的球類項目(1=足球, 2=籃球,3=排球)");
string input = Console.ReadLine();
switch (input)
{
case "1":
ball = new Football();
break;
case "2":
ball = new Basketball();
break;
case "3":
ball = new Volleyball();
break;
}
man.SetHobby(ball);
man.StartPlay();
}
}
}
法式運轉成果以下圖所示:
願望本文所述對年夜家的C#法式設計有所贊助。