59 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Inheritance
 | ||
| localeTitle: наследование
 | ||
| ---
 | ||
| # наследование
 | ||
| 
 | ||
| Наследование позволяет создать класс, который расширяет или изменяет существующий класс. Это можно использовать для создания классов, которые выводятся из других классов.
 | ||
| 
 | ||
| # Базовый класс и класс Derived
 | ||
| 
 | ||
| Это термины, используемые для классов при обращении к наследованию. Производный класс наследует базовый класс вместе с любыми переменными, функциями или процессами, которые использует базовый класс. Затем производный класс может иметь свои собственные переменные и функции наряду с теми, которые он наследует от базового класса.
 | ||
| 
 | ||
| Например, базовый класс «Животное» может иметь производный класс «Собака». Класс Animal будет содержать функции, относящиеся к животным в целом, а класс Dog содержит уникальные для собак особенности. Когда класс Dog наследует класс Animal, он сможет ссылаться на обе функции, относящиеся к животным и особенностям, уникальным для собак.
 | ||
| 
 | ||
| # Правила наследования
 | ||
| 
 | ||
| Наследование - это один из способов. Базовый класс не наследует функции производного класса.
 | ||
| 
 | ||
| Наследование транзитивно. Базовый класс «Животное» может иметь производный класс «Собака», и он может иметь производный класс «Терьер». Класс Terrier наследует как свойства класса Dog, так и класс Animal.
 | ||
| 
 | ||
| # Символ `:`
 | ||
| 
 | ||
| В C # Если `:` символ используется для обозначения наследования. Это вызывается при создании производного класса.
 | ||
| 
 | ||
| ## пример
 | ||
| 
 | ||
| # Базовый класс
 | ||
| ```
 | ||
| public class Animal 
 | ||
|  { 
 | ||
|     public int ID; 
 | ||
|     public string title; 
 | ||
|     public enum phylum; 
 | ||
|     public enum dietType; 
 | ||
|  
 | ||
|         public DefineAnimal(int id, string name, enum phy, enum diet) 
 | ||
|     { 
 | ||
|         this.ID = id; 
 | ||
|         this.title = name; 
 | ||
|         this.phylum = phy; 
 | ||
|         this.dietType = diet; 
 | ||
|     } 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| # Производный класс
 | ||
| ```
 | ||
| public class Dog : Animal 
 | ||
|  { 
 | ||
|     public enum breed; 
 | ||
|     public int levelOfTraining; 
 | ||
|  
 | ||
|     public void SayWoof() 
 | ||
|     { 
 | ||
|         Console.WriteLine("Woof"); 
 | ||
|     } 
 | ||
|  } 
 | ||
| 
 | ||
| ``` |