{
void Respo " /> 1000视频在线播放,久久视频这里只精品99re8久,SAO货腿张开JI巴CAO死我

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

C#經典機試題(貓叫)

  貓大叫一聲,所有的老鼠都開始逃跑,主人被驚醒。(C#語言)

  1.要有聯動性,老鼠和主人的行為是被動的。

  2.考慮可擴展性,貓的叫聲可能引起其他聯動效應。

 

public interface Observer
{
void Response(); //觀察者的響應,如是老鼠見到貓的反映
}
public interface Subject
{
void AimAt(Observer obs); //針對哪些觀察者,這里指貓的要撲捉的對象---老鼠
}
public class Mouse : Observer
{
private string name;
public Mouse(string name, Subject subj)
{
this.name = name;
subj.AimAt(
this);
}

public void Response()
{
Console.WriteLine(name
+ " attempt to escape!");
}
}
public class Master : Observer
{
public Master(Subject subj)
{
subj.AimAt(
this);
}

public void Response()
{
Console.WriteLine(
"Host waken!");
}
}

public class Cat : Subject
{
private ArrayList observers;
public Cat()
{
this.observers = new ArrayList();
}
public void AimAt(Observer obs)
{
this.observers.Add(obs);
}
public void Cry()
{
Console.WriteLine(
"Cat cryed!");
foreach (Observer obs in this.observers)
{
obs.Response();
}
}
}
class MainClass
{
static void Main(string[] args)
{
Cat cat
= new Cat();
Mouse mouse1
= new Mouse("mouse1", cat);
Mouse mouse2
= new Mouse("mouse2", cat);
Master master
= new Master(cat);
cat.Cry();
}
}

//------------------------------------------------------------
設計方法二: 使用event -- delegate設計..
public delegate void SubEventHandler();
public abstract class Subject
{
public event SubEventHandler SubEvent;
protected void FireAway()
{
if (this.SubEvent != null)
this.SubEvent();
}
}
public class Cat : Subject
{
public void Cry()
{
Console.WriteLine(
"cat cryed.");
this.FireAway();
}
}
public abstract class Observer
{
public Observer(Subject sub)
{
sub.SubEvent
+= new SubEventHandler(Response);
}
public abstract void Response();
}
public class Mouse : Observer
{
private string name;
public Mouse(string name, Subject sub) : base(sub)
{
this.name = name;
}
public override void Response()
{
Console.WriteLine(name
+ " attempt to escape!");
}
}
public class Master : Observer
{
public Master(Subject sub) : base(sub){}
public override void Response()
{
Console.WriteLine(
"host waken");
}
}
class Class1
{
static void Main(string[] args)
{
Cat cat
= new Cat();
Mouse mouse1
= new Mouse("mouse1", cat);
Mouse mouse2
= new Mouse("mouse2", cat);
Master master
= new Master(cat);
cat.Cry();
}
}

it知識庫C#經典機試題(貓叫),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 男女交性视频无遮挡全过程 | 国产在线视频在线观看 | 免费A级毛片无码无遮挡内射 | 日本68xxxxxxxxx老师 | 欧美日韩第一区 | 欧美精品久久久久性色AV苍井 | 亚洲日韩KKK444KKK聚色 | 日本日本熟妇中文在线视频 | 儿媳妇完整版视频播放免费观看 | 国产人妻系列无码专区97SS | 伊人久久亚洲精品一区 | 狠狠插影院 | 成人在线视频免费看 | 青青青久草| 亚洲精品国产拍在线观看 | 国产精品点击进入在线影院高清 | 亚洲另类欧美综合在线 | 女朋友的妈妈在线观看 | 在线国内自拍精品视频 | 性女传奇快播 | 亚洲影院在线播放 | 我的漂亮朋友在线观看全集免费 | 中文字幕亚洲综合小综合在线 | 麻豆乱码一卡二卡三卡视频 | 污文乖不疼的 | 国产成人cao在线 | 碰超成人在线公开免费视频 | 一个人免费完整观看日本 | 久久精品热只有精品 | 欧美亚洲国内日韩自拍视频 | 成年私人影院网站在线看 | 日本高清在线一区二区三区 | 高清不卡伦理电影在线观看 | 亚洲国产在线综合018 | 疯狂做受XXXX高潮欧美日本 | 影音先锋影院中文无码 | 国产一卡 二卡三卡四卡无卡乱码视频 | 国产偷国产偷亚州清高 | 伊人天天躁夜夜躁狠狠 | 国产久久精品热99看 | 国产XXXXXX农村野外 |