Unified Modeling Language — унифицированный язык моделирования
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Реализация виртуального метода может быть определена во время исполнения программы. Конкретную реализацию виртуального метода нужно определить в классе-наследнике, с помощью которого и будет проводиться создание объекта.
Неграмотное применение ООП может привести к значительному ухудшению характеристик разрабатываемой программы!
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
public int Health { // свойство
get { return health; }
set { if (value > 0) health = value;
else health = 0;
}
}
public void Passport() // метод
{ Console.WriteLine(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo );
}
public override string ToString(){
string buf = string.Format(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo);
return buf; }
string name; // поле
int health, ammo; // поле
}
Информатика. 2 семестр. Тема 22. ООП на C#
Информатика. 2 семестр. Тема 22. ООП на C#
Результат работы программы:
Monster Noname health = 100 ammo = 100
Monster Вася health = 100 ammo = 100
Monster Маша health = 200 ammo = 200
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
double a = 0.1;
double b = Math.Sin(a);
Console.WriteLine(a);
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
x.Sety(3.12);
double t = x.Gety();
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Аргументы передаются:
По значению
По адресу (ссылке)
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
параметр-значение
параметр-ссылка
выходной параметр
параметр-массив
Пример:
public int Calculate( int a, ref int b, out int c, params int[] d ) { …
Информатика. 2 семестр. Тема 16. ООП на C#
Результат работы программы:
до вызова 2 4
внутри метода 44 33
после вызова 2 33
Информатика. 2 семестр. Тема 16. ООП на C#
Результат работы программы:
внутри метода 44 33
после вызова 2 33
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Результат:
20
10
38
Недостаточно аргументов
Информатика. 2 семестр. Тема 16. ООП на C#
стек
n = 4 …
n = 3 …
n = 2 …
n = 1 …
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Метод Main:
Monster a = new…
Monster b = new…
a.Passport()
b.Passport()
Метод Passport:
Вывод полей
name
health
ammo
ДАННЫЕ (хип):
Объект a:
name
health
ammo
Объект b:
name
health
ammo
this=a
this=b
this.name
this.health this.ammo
КОД:
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
public int Health { // свойство
get { return health; }
set { if (value > 0) health = value;
else health = 0;
}
}
public void Passport() // метод
{ Console.WriteLine(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo );
}
public override string ToString(){
string buf = string.Format(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo);
return buf; }
string name;
int health, ammo;
}
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
В программе свойство выглядит как поле класса:
Button ok = new Button();
ok.Caption = "OK"; // вызывается метод установки свойства
string s = ok.Caption; // вызывается метод получения свойства
Информатика. 2 семестр. Тема 16. ООП на C#
public int Health { // свойство
get { return health; }
set { if (value > 0) health = value;
else health = 0;
}
}
public string Name { // свойство
get { return name; }
}
public void Passport() // метод
{ Console.WriteLine(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo );
}
public override string ToString(){
string buf = string.Format(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo);
return buf; }
string name;
int health, ammo;
}
Информатика. 2 семестр. Тема 16. ООП на C#
class Program
{ static void Main(string[] args)
{
Ball ball = new Ball(10, 6.2);
Console.WriteLine("Диаметр: " +
ball.Diameter +
" Масса: " + ball.Mass);
} } }
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
public int Health { // свойство
get { return health; }
set { if (value > 0) health = value;
else health = 0;
}
}
public void Passport() // метод
{ Console.WriteLine(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo );
}
public override string ToString(){
string buf = string.Format(
"Monster {0} \t health = {1} \
ammo = {2}", name, health, ammo);
return buf; }
string name;
int health, ammo;
}
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Информатика. 2 семестр. Тема 16. ООП на C#
Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть