Анатомия класса. Схожесть с др. языками

Содержание

Слайд 2

Определение простейшего класса в С#

using System:
class HelloClass
{
public static int Main(string[] args)
{
Console.WriteLine ("Hello,

Определение простейшего класса в С# using System: class HelloClass { public static
World");
return 0;
}
}

Слайд 3

Определение простейшего класса в С#

ключевое слово publiс в определении метода означает,

Определение простейшего класса в С# ключевое слово publiс в определении метода означает,
что этот метод будет доступен извне, а ключевое слово statiс говорит о том, что этот метод выступает как класс, а не как отдельный объект и будет доступен ,когда еще не создано ни одного экземпляра объекта данного класса.

Слайд 4

Объявление Main()

public static void Main (string[] args);
public static void Maln()

Объявление Main() public static void Main (string[] args); public static void Maln()
{
public static int Maln()
}

Слайд 5

Обработка параметров строки

using System;
class HelloClass
{
public static int Main (string[] args)
{

Обработка параметров строки using System; class HelloClass { public static int Main
for(int x=0; x < args. Length; x++)
{

Слайд 6

Обработка параметров строки

Console. WnteLine(“'Arg: {0}", args[x]):
}
Console. WriteLine("Hello. World!");
return 0;
}
}

Обработка параметров строки Console. WnteLine(“'Arg: {0}", args[x]): } Console. WriteLine("Hello. World!"); return 0; } }

Слайд 7

Создание объектов: конструкторы

«Класс» и «объект» - два разных понятия.
В отличие от

Создание объектов: конструкторы «Класс» и «объект» - два разных понятия. В отличие
класса объектом называется конкретный экземпляр определенного класса, с помощью которого обычно и производятся определенные действия.
Для создания объекта используется слово «new»

Слайд 8

Создание объектов: конструкторы

Using System;
class HelloClass
{
public static int Main(string[] args)
{
HelloClass cl

Создание объектов: конструкторы Using System; class HelloClass { public static int Main(string[]
= new HelloClassO;
HelloClass c2;
с2 = new HelloClassO;
return 0;
}
}

Слайд 9

конструкторы
using System;
class HelloClass
{
public HelloClass()
{
Console.WriteLine(“Default ctor called!")
}
public HelloClass(int x, int

конструкторы using System; class HelloClass { public HelloClass() { Console.WriteLine(“Default ctor called!")
у)
{

Слайд 10

конструкторы

Console.WriteLine("Custom ctor called!");
intX = x;
intY = y;
}
public int intX, intY;
public static int

конструкторы Console.WriteLine("Custom ctor called!"); intX = x; intY = y; } public
Main(string[] args)

Слайд 11

конструкторы

{
HelloClass c1 = new HelloClass();
Console.WriteLine("c1.intX = {0)\nc1.intY = {1}\n", c1.lntX, c1.intY);
HelloClass с2

конструкторы { HelloClass c1 = new HelloClass(); Console.WriteLine("c1.intX = {0)\nc1.intY = {1}\n",
= new HelloClass(100, 200);
Console.WnteLine("c2.intX = {0}\nc2.intY = {l}\n", c2.intX. c2.intY);
return 0;

Слайд 12

Инициализация членов

можно инициализировать переменные пря-
мо в момент их объявления:
class Text
{
private int Mylnt

Инициализация членов можно инициализировать переменные пря- мо в момент их объявления: class
= 90;
private string MyString = "My initial value";
private HotRod viper = new HotRod {200, "Chucky“, Color.Red);
}

Слайд 13

Ввод и вывод

В большинстве созданных нами приложений использовался класс System. Console —
один

Ввод и вывод В большинстве созданных нами приложений использовался класс System. Console
из многих классов, определенных внутри пространства имен System.
Главные методы класса Consolе — это методы ReadLine() и WriteLlne() (оба этих метода определены как статические).

Слайд 14

Средства форматирования строк в С#

using System;
class BasicIO()
{
public static void Main(string[] args)
{
int thelnt

Средства форматирования строк в С# using System; class BasicIO() { public static
= 90:

Слайд 15

Средства форматирования строк в С#

float theFloat = 9.99;
BasicIO my10 - new BasicIO();
Console.WnteLine(
“Int

Средства форматирования строк в С# float theFloat = 9.99; BasicIO my10 -
is: {0}\nFloat is: {1}\nYou are: {2}”,
thelnt, theFloat, mylO.ToStringO):
}

Слайд 16

Средства форматирования строк в С#

В каждом подстановочном выражении при желании можно использовать

Средства форматирования строк в С# В каждом подстановочном выражении при желании можно
параметры форматирования, представленные в табл.

Слайд 17

Средства форматирования строк в С#

С или с
D или d
Е или е

Используется для

Средства форматирования строк в С# С или с D или d Е
вывода значений в денежном (currency) формате. По умолчанию перед выводимым значением подставляется символ доллара ($), хотя можно отменить подстановку этого символа при помощи объекта NumberFormatlnfo
Используется для вывода десятичных значений. После этого символа можно указать количество выводимых символов после запятой
Для вывода значений в экспоненциальном формате

Слайд 18

Средства форматирования строк в С#

F или f
G или g
N или п
X или

Средства форматирования строк в С# F или f G или g N
х

Вывод значений с фиксированной точностью
Общий (general) формат. Применяется для вывода значений с фиксированной точностью или в экспоненциальном формате
N или n Стандартное числовое форматирование с использованием разделителей (запятых) между разрядами
Вывод значений в шесгнадцатеричном формате. Если вы использовали прописную X, то буквенные символы в шестнадцатеричных символах также будут прописными

Слайд 19

Структурные типы.

Разрядность всех встроенных типов фиксирована и постоянна.
К структурными типам относятся все

Структурные типы. Разрядность всех встроенных типов фиксирована и постоянна. К структурными типам
числовые типы данных (int, float и пр.), а также перечисления и структуры. Память для структурных типов выделяется из стека. При присвоении одного структурного типа другому присваивается его побитовая копия.

Слайд 20

Ссылочные типы

Ссылочные типы (классы и интерфейсы) ведут себя совершенно по-другому.
Память для них

Ссылочные типы Ссылочные типы (классы и интерфейсы) ведут себя совершенно по-другому. Память
выделяется не в стеке, а в области управляемой кучи. При копировании ссылочного типа создается еще одна ссылка, которая указывает на ту же область оперативной памяти.

Слайд 21

Сравнение типов

Сравнение типов

Слайд 22

Сравнение типов

Сравнение типов

Слайд 23

System Object

Все типы данных от него.
Главные методы объекта System.Object:
EqualsQ
для сравнения объектов

System Object Все типы данных от него. Главные методы объекта System.Object: EqualsQ
ссылочных типов, но не структурных.
2. GetHashCode{)
Возвращает целочисленное значение, идентифицирующее конкретный экземпляр объекта данного типа
3. GetTypeC)
Метод возвращает объект Туре(), полностью описывающий тот объект, из которого метод был вызван.

Слайд 24

4.ToStringQ
Возвращает символьное представление объекта в формате
<имя_пространства_имен>.<имя_класса>
5. Finalize()
Освободить все ресурсы, занятые объектом данного

4.ToStringQ Возвращает символьное представление объекта в формате . 5. Finalize() Освободить все
класса, перед удалением этого объекта.
6. MemberwiseCloneQ
создания еще одной ссылки на область, занимаемую объектом данного типа в оперативной памяти. Этот метод не может быть замещен.

Слайд 25

Упаковка и распаковка

Предположим, что у нас есть переменная простого структурного типа данных

Упаковка и распаковка Предположим, что у нас есть переменная простого структурного типа
— short:
// Создаем переменную типа short и присваиваем ей значение
short s = 25;
Процесс упаковки:
// Упаковываем переменно s:
object objShort = s:
Упаковка — это процесс явного преобразования структурного типа в ссылочный.
Имя файла: Анатомия-класса.-Схожесть-с-др.-языками.pptx
Количество просмотров: 228
Количество скачиваний: 0