25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

552 Въведение в програмирането със C#<br />

дума this, но използвана в друга синтактична конструкция при<br />

декларацията на конструкторите:<br />

[] ([])<br />

: this([])<br />

Към познатата ни форма за деклариране на конструктор (първия ред от<br />

декларацията показана по-горе), можем да добавим двоеточие, следвано<br />

от ключовата дума this, следвана от скоби. Ако конструкторът, който<br />

искаме да извикаме е с параметри, в скобите трябва да добавим списък от<br />

параметри parameters_list_2, които да му подадем.<br />

Ето как би изглеждал кодът от предходната секция, в който вместо да<br />

повтаряме инициализацията на всяко едно от полетата, извикваме<br />

конструктори, декларирани в същия клас:<br />

// Nо parameters<br />

public Dog()<br />

: this("Sharo") // Constructor call<br />

{<br />

// More code could be added here<br />

}<br />

// One parameter<br />

public Dog(string name)<br />

: this(name, 1) // Constructor call<br />

{<br />

}<br />

// Two parameters<br />

public Dog(string name, int age)<br />

: this(name, age, 0.3) // Constructor call<br />

{<br />

}<br />

// Three parameters<br />

public Dog(string name, int age, double length)<br />

: this(name, age, length, new Collar()) // Constructor call<br />

{<br />

}<br />

// Four parameters<br />

public Dog(string name, int age, double length, Collar collar)<br />

{<br />

this.name = name;<br />

this.age = age;<br />

this.length = length;<br />

this.collar = collar;<br />

}

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!