JMeter性能测试基础实战视频教程
14750 人在学
C#是微软公司发布的一种面向对象的、运行于.NETFramework和.NETCore(完全开源,跨平台)之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
观察者模式有四个角色:抽象主题、具体主题、抽象观察者、具体观察者。
抽象主题:把所有观察者对象的引用保存到一个聚集里,每个主题都可以有任何数量的观察者。
具体主题:将有关状态存入具体观察者对象;在具体主题内部状态改变时,给所有登记过的观察者发出通知。
抽象观察者:为所有的具体观察者定义一个接口,在得到主题通知时更新自己。
具体观察者:实现抽象观察者角色所要求的更新接口,以便使本身的状态与主题状态协调。
namespaceDP_Observer
{
publicabstractclassObserver
{
publicabstractvoidUpdate();
}
publicabstractclassSubject
{
privateList<Observer>observers=newList<Observer>();
publicvoidAdd(Observerobserver)=>observers.Add(observer);
publicvoidRemove(Observerobserver)=>observers.Remove(observer);
publicvoidNotify()
{
foreach(varoinobservers)
o.Update();
}
}
publicclassConcreteSubject:Subject
{
publicstringState{get;set;}
}
publicclassConcreteObserver:Observer
{
privatestring_name;
privatestring_state;
privateConcreteSubjectsubject;
publicConcreteObserver(ConcreteSubjectsub,stringname)
{
subject=sub;
_name=name;
}
publicoverridevoidUpdate()
{
_state=subject.State;
}
}
}
客户端调用:
varsubject=newConcreteSubject();
subject.Add(newConcreteObserver(subject,"1"));
subject.Add(newConcreteObserver(subject,"2"));
subject.State="changed";
subject.Notify();
C#是微软公司研究员AndersHejlsberg的最新成果。C#看起来与java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETWindows网络框架的主角。