Your SlideShare is downloading. ×
0
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Интерфейсы
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Интерфейсы

291

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
291
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. Интерфейсы<br />КиньзибаевРашид<br />
  2. Интерфейсы<br />просто именованный набор абстрактных членов<br />
  3. Интерфейсы<br />interface имя{ <br /> возвращаемый тип имя_метода1 (список_параметров) ; <br /> возвращаемый тип имя_метода2(список_параметров) ; <br /> // ... <br /> возвращаемый тип имя_методаN(список_параметров) ; <br />} <br />
  4. Интерфейсы<br />Реализация:<br />classимя_класса : имя_интерфейса { <br />II тело класса <br />} <br />
  5. Интерфейсы<br />Интерфейсные ссылки:<br />interface INumber<br /> {<br /> void SetStart(int x);<br />intGetNext();<br /> void ResetNumber();<br /> }<br /> class First : INumber<br /> {<br />int start;<br />intval;<br /> public First()<br /> {<br /> start = 0;<br />val = 0;<br /> }<br /> public void SetStart(int x)<br /> {<br /> start=x;<br />val=x;<br /> }<br /> public intGetNext()<br /> {<br />val++;<br /> return val;<br /> }<br /> public void ResetNumber()<br /> {<br />val = 0;<br /> }<br /> }<br /> class Second : INumber<br /> {<br />int start;<br />intval;<br /> public Second()<br /> {<br /> start = 0;<br />val = 0;<br /> }<br /> public void SetStart(int x)<br /> {<br /> start = x;<br />val = x;<br /> }<br /> public intGetNext()<br /> {<br />val += 2;<br /> return val;<br /> }<br /> public void ResetNumber()<br /> {<br />val = 0;<br /> }<br /> }<br /> class Program<br /> {<br /> static void Main(string[] args)<br /> {<br /> First first = new First();<br /> Second second = new Second();<br />INumber number;<br /> for (int i = 0; i < 5; i++)<br /> {<br /> number = first;<br />Console.WriteLine("First "+number.GetNext());<br /> number = second;<br />Console.WriteLine("Second "+number.GetNext());<br /> }<br />Console.ReadLine();<br /> }<br /> }<br />…<br />classимя_класса : имя_интерфейса { <br />II тело класса <br />} <br />…<br />Имя_интерфейса идентификатор;<br />…<br />
  6. Интерфейсы<br />Интерфейсные свойства: <br /> interface User<br /> {<br /> string Login { get; set; }<br /> string Password { get; set; }<br /> }<br /> class mySiteUser:User<br /> {<br /> string login;<br /> string password;<br /> public mySiteUser(string s,stringss)<br /> {<br /> login = s;<br /> password = ss;<br /> }<br /> public string Login<br /> {<br /> get<br /> {<br /> return login;<br /> }<br /> set<br /> {<br /> if (value.Length > 3) login = value; else Console.WriteLine("Invalid string");<br /> }<br /> }<br /> public string Password<br /> {<br /> get<br /> {<br /> return password;<br /> }<br /> set<br /> {<br /> if (value.Length > 5) password = value; else Console.WriteLine("Invalid string");<br /> }<br /> }<br /> }<br /> class facebookUser:User<br /> {<br /> string login;<br /> string password;<br /> public facebookUser(string s,stringss)<br /> {<br /> login = s;<br /> password = ss;<br /> }<br /> public string Login<br /> {<br /> get<br /> {<br /> return login;<br /> }<br /> set<br /> {<br /> if (value.Length > 5) login = value; else Console.WriteLine("Invalid string");<br /> }<br /> }<br /> public string Password<br /> {<br /> get<br /> {<br /> return password;<br /> }<br /> set<br /> {<br /> if (value.Length > 7) password = value; else Console.WriteLine("Invalid string");<br /> }<br /> }<br /> }<br /> class Program<br /> {<br /> static void Main(string[] args)<br /> {<br />mySiteUser my = new mySiteUser("dragonzzz","hahaha");<br />Console.WriteLine(my.Login+" "+my.Password);<br />my.Login = "asd";<br />Console.WriteLine(my.Login + " " + my.Password);<br />my.Login = "dragonzzzzzzzzzzzzzzzzzzz";<br />Console.WriteLine(my.Login + " " + my.Password);<br />Console.WriteLine();<br />facebookUser his = new facebookUser("markus","zuckerberg");<br />Console.WriteLine(his.Login + " " + his.Password);<br />his.Password = "zucker";<br />Console.WriteLine(his.Login + " " + his.Password);<br />his.Password = "markuzzzz";<br />Console.WriteLine(his.Login + " " + his.Password);<br />Console.ReadLine();<br /> }<br /> }<br />тип имя{ <br />get; <br />set; <br />} <br />
  7. Интерфейсы<br />Интерфейсные индексаторы <br />// Интерфейсный индексатор <br />тип_элементаthis[intиндекс]{ <br />get; <br />set; <br />} <br />
  8. Интерфейсы<br />Наследование интерфейсов <br />!!!Для реализации интерфейса-наследника необходимо релизовать все его интерфейсы-предки<br /> interface A<br /> {<br /> void Meth1();<br /> }<br /> interface B : A<br /> {<br /> void Meth2();<br /> }<br /> interface C : B<br /> {<br /> void Meth3();<br /> }<br /> class MyClass : C<br /> {<br /> public void Meth1()<br /> {<br />Console.WriteLine("Meth1");<br /> }<br /> public void Meth2()<br /> {<br />Console.WriteLine("Meth2");<br /> }<br /> public void Meth3()<br /> {<br />Console.WriteLine("Meth3");<br /> }<br /> }<br /> class Program<br /> {<br /> static void Main(string[] args)<br /> {<br />MyClass my = new MyClass();<br /> my.Meth1();<br /> my.Meth2();<br /> my.Meth3();<br />Console.ReadLine();<br /> }<br /> }<br />
  9. Интерфейсы<br />Сокрытие имен при наследовании<br />class MyClass : IMylF { <br />intIMylF.MyMeth(int x) { <br />return x / 3; <br />} <br />} <br />
  10. Интерфейсы<br />Обобщенные интерфейсы:<br />publicinterfaceISeries<T> { <br />T GetNext();<br />voidReset(); <br />voidSetStart (T v); <br />} <br />
  11. Интерфейсы<br />Спасибо за внимание!<br />

×