Презентация «Общая система типов CTS»

Смотреть слайды в полном размере
Презентация «Общая система типов CTS»

Вы можете ознакомиться с презентацией онлайн, просмотреть текст и слайды к ней, а также, в случае, если она вам подходит - скачать файл для редактирования или печати. Документ содержит 23 слайда и доступен в формате ppt. Размер файла: 325.92 KB

Просмотреть и скачать

Pic.1
Общая система типов CTS KtЛекция №3
Общая система типов CTS KtЛекция №3
Pic.2
CTS (общая система типов) CTS (общая система типов) представляет собой формальную спецификацию, в ко
CTS (общая система типов) CTS (общая система типов) представляет собой формальную спецификацию, в которой описано то, как должны быть определены типы для того, чтобы они могли обслуживаться в …
Pic.3
Тип Объект Все объекты косвенно происходят от единого базового класса, определенного в составе CTS.
Тип Объект Все объекты косвенно происходят от единого базового класса, определенного в составе CTS. Этот базовый класс — System. Object.
Pic.4
Значимые и ссылочные типы Концепция создания языка, где любая сущность является объектом, не нова. Е
Значимые и ссылочные типы Концепция создания языка, где любая сущность является объектом, не нова. Если попытаться сложить два значения типа double, при этом реально выделять объекты в куче, то …
Pic.5
Значимые типы Для значимого типа используется прямая адресация, значение хранит собственно данные, и
Значимые типы Для значимого типа используется прямая адресация, значение хранит собственно данные, и память для них отводится, как правило, в стеке.
Pic.6
Ссылочные типы Для ссылочного типа значение задает ссылку на область памяти в "куче", где
Ссылочные типы Для ссылочного типа значение задает ссылку на область памяти в "куче", где расположен соответствующий объект.
Pic.7
Иерархия типов
Иерархия типов
Pic.8
Встроенные типы
Встроенные типы
Pic.9
Встроенные типы
Встроенные типы
Pic.10
Встроенные типы
Встроенные типы
Pic.11
Встроенные типы
Встроенные типы
Pic.12
Упаковка и распаковка Как же эти различные категории типов обеспечивают более эффективную работу сис
Упаковка и распаковка Как же эти различные категории типов обеспечивают более эффективную работу системы? Это делается с помощью упаковки (boxing). В простейшем случае при упаковке размерный тип …
Pic.13
Упаковка и распаковка Объект лишь тогда является объектом, когда это необходимо. int foo = 42; // Ра
Упаковка и распаковка Объект лишь тогда является объектом, когда это необходимо. int foo = 42; // Размерный тип. object bar = foo; // Переменная foo упакована в bar. А теперь выполним явное …
Pic.14
«Общая система типов CTS», слайд 14
Pic.15
«Общая система типов CTS», слайд 15
Pic.16
«Общая система типов CTS», слайд 16
Pic.17
«Общая система типов CTS», слайд 17
Pic.18
Приведение типов – это преобразование значения одного типа в значение другого типа. Приведение типов
Приведение типов – это преобразование значения одного типа в значение другого типа. Приведение типов – это преобразование значения одного типа в значение другого типа.
Pic.19
Выделяют приведения типов: Выделяют приведения типов: явные (англ. explicit); int num = 2147483647;
Выделяют приведения типов: Выделяют приведения типов: явные (англ. explicit); int num = 2147483647; long bigNum = num; неявные (англ. implicit). double x = 1234. 7; int a; a = (int)x; // a = 1234
Pic.20
class Employee { } class Employee { } class ContractEmployee : Employee { } class CastExamplel { pub
class Employee { } class Employee { } class ContractEmployee : Employee { } class CastExamplel { public static void Main () { Employee e = new ContractEmployee(); } } Этот код будет работать, …
Pic.21
А вот такой код недопустим, так как компилятор не предоставляет неявное нисходящее приведение (downc
А вот такой код недопустим, так как компилятор не предоставляет неявное нисходящее приведение (downcast). А вот такой код недопустим, так как компилятор не предоставляет неявное нисходящее приведение …
Pic.22
Вы не сможете выполнить нисходящее приведение объекта типа Employee к объекту типа ContractEmployee,
Вы не сможете выполнить нисходящее приведение объекта типа Employee к объекту типа ContractEmployee, поскольку нет гарантии, что этот объект поддерживает интерфейс, определенный классом …
Pic.23
А давайте обманем CTS путем явного приведения базового класса к производному: А давайте обманем CTS
А давайте обманем CTS путем явного приведения базового класса к производному: А давайте обманем CTS путем явного приведения базового класса к производному: … class CastExample4 { public static void …


Скачать презентацию

Если вам понравился сайт и размещенные на нем материалы, пожалуйста, не забывайте поделиться этой страничкой в социальных сетях и с друзьями! Спасибо!