🗊Презентация Наследование. Простой класс

Нажмите для полного просмотра!
Наследование. Простой класс, слайд №1Наследование. Простой класс, слайд №2Наследование. Простой класс, слайд №3Наследование. Простой класс, слайд №4Наследование. Простой класс, слайд №5Наследование. Простой класс, слайд №6Наследование. Простой класс, слайд №7Наследование. Простой класс, слайд №8Наследование. Простой класс, слайд №9Наследование. Простой класс, слайд №10Наследование. Простой класс, слайд №11Наследование. Простой класс, слайд №12Наследование. Простой класс, слайд №13Наследование. Простой класс, слайд №14

Вы можете ознакомиться и скачать презентацию на тему Наследование. Простой класс. Доклад-сообщение содержит 14 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Пятое занятие
Описание слайда:
Пятое занятие

Слайд 2





наследование
Наследование (inheritance) является одним из ключевых моментов ООП. Его смысл состоит в том, что мы можем расширить функциональность уже существующих классов за счет добавления нового функционала или изменения старого.
Описание слайда:
наследование Наследование (inheritance) является одним из ключевых моментов ООП. Его смысл состоит в том, что мы можем расширить функциональность уже существующих классов за счет добавления нового функционала или изменения старого.

Слайд 3





Простой класс
class Person
{
	private string _name;
	public string Name
	{
		get { return _name; }
	}
}
Описание слайда:
Простой класс class Person { private string _name; public string Name { get { return _name; } } }

Слайд 4





Класс работник
class Employee : Person
{
}
Описание слайда:
Класс работник class Employee : Person { }

Слайд 5





Пример
static void Main(string[] args)
{
      Person p = new Person { FirstName = "Bill", LastName = "Gates" };
      p.Display();
      p = new Employee { FirstName = "Denis",   LastName = "Ritchi" };
      p.Display();
      Console.Read();
}
Описание слайда:
Пример static void Main(string[] args) {      Person p = new Person { FirstName = "Bill", LastName = "Gates" };   p.Display();      p = new Employee { FirstName = "Denis", LastName = "Ritchi" };      p.Display();      Console.Read(); }

Слайд 6





Ограничения наследования
Не поддерживается множественное наследование, класс может наследоваться только от одного класса. Хотя проблема множественного наследования реализуется с помощью концепции интерфейсов, о которых мы поговорим позже.
При создании производного класса надо учитывать тип доступа к базовому классу - тип доступа к производному классу должен быть таким же, как и у базового класса, или более строгим. То есть, если базовый класс у нас имеет тип доступа internal, то производный класс может иметь тип доступа internal или private, но не public.
Если класс объявлен с модификатором sealed, то от этого класса нельзя наследовать и создавать производные классы. Например, следующий класс не допускает создание наследников
Описание слайда:
Ограничения наследования Не поддерживается множественное наследование, класс может наследоваться только от одного класса. Хотя проблема множественного наследования реализуется с помощью концепции интерфейсов, о которых мы поговорим позже. При создании производного класса надо учитывать тип доступа к базовому классу - тип доступа к производному классу должен быть таким же, как и у базового класса, или более строгим. То есть, если базовый класс у нас имеет тип доступа internal, то производный класс может иметь тип доступа internal или private, но не public. Если класс объявлен с модификатором sealed, то от этого класса нельзя наследовать и создавать производные классы. Например, следующий класс не допускает создание наследников

Слайд 7





Обращение к полям родителя
Мы не можем обратиться к приватным полям родителя, можем обращаться только к public, protected, internal, protected internal
Описание слайда:
Обращение к полям родителя Мы не можем обратиться к приватным полям родителя, можем обращаться только к public, protected, internal, protected internal

Слайд 8





Ключевое слово base
Слово base используется для доступа к полям и методам класса – родителя.
К его конструкторам, поведению.
Описание слайда:
Ключевое слово base Слово base используется для доступа к полям и методам класса – родителя. К его конструкторам, поведению.

Слайд 9





Добавим конструктор в Person
public Person(string name)
	{
		_name = name;
	}
Описание слайда:
Добавим конструктор в Person public Person(string name) { _name = name; }

Слайд 10





Вызов базового конструктора
class Employee : Person
{
    public string Company {get; set;}
    public Employee(string name, string company) : 							base(name)
    {
	Company = company;
     }
}
Описание слайда:
Вызов базового конструктора class Employee : Person { public string Company {get; set;} public Employee(string name, string company) : base(name) { Company = company; } }

Слайд 11






Соответственно, если мы в базовом классе создали конструктор с параметрами, мы в производных конструкторах всегда должны его вызывать. 
Конструктор без параметров, если он есть, выполнится сам, без нашего вмешательства
Описание слайда:
Соответственно, если мы в базовом классе создали конструктор с параметрами, мы в производных конструкторах всегда должны его вызывать. Конструктор без параметров, если он есть, выполнится сам, без нашего вмешательства

Слайд 12





полиморфизм
Полиморфизм является третьим ключевым аспектом объектно-ориентированного программирования и предполагает способность к изменению функционала, унаследованного от базового класса. Полиморфизм предполагает определение полиморфного интерфейса в базовом классе - набор членов класса, которые могут быть переопределены в классе-наследнике. Методы, которые мы хотим сделать доступными для переопределения, в базовом классе помечается модификатором virtual. Такие методы называют виртуальными. Они и представляют полиморфный интерфейс.
Описание слайда:
полиморфизм Полиморфизм является третьим ключевым аспектом объектно-ориентированного программирования и предполагает способность к изменению функционала, унаследованного от базового класса. Полиморфизм предполагает определение полиморфного интерфейса в базовом классе - набор членов класса, которые могут быть переопределены в классе-наследнике. Методы, которые мы хотим сделать доступными для переопределения, в базовом классе помечается модификатором virtual. Такие методы называют виртуальными. Они и представляют полиморфный интерфейс.

Слайд 13





Допустим в базовом классе есть метод
виртуальный
class A
{
	public virtual void Smth(int arg)
	{
		Console.WriteLine(“Base: ” + arg);
	}
}
Описание слайда:
Допустим в базовом классе есть метод виртуальный class A { public virtual void Smth(int arg) { Console.WriteLine(“Base: ” + arg); } }

Слайд 14





Теперь мы можем изменить поведение данного метода в производных
class B : A
 {
	public override void Smth(int arg)
	{
		Console.WriteLine(“Child: ” + arg);
	}	
}
Описание слайда:
Теперь мы можем изменить поведение данного метода в производных class B : A { public override void Smth(int arg) { Console.WriteLine(“Child: ” + arg); } }



Похожие презентации
Mypresentation.ru
Загрузить презентацию