Что сильно типизируется в .NET framework?
Сегодня утром проходила книга, в которой я нашел абзац, как указано ниже:
Каждое поле данных в таблице является строго типизированным элементом данных, полностью совместимым с .NET Common Type System.
Имеются ли указанные выше строки: "объекты, написанные на разных языках, могут взаимодействовать друг с другом, как"
И если это означает, что приведенные выше строки означают, что именно указанная выше строка означает, что разные языки могут взаимодействовать друг с другом, например
Я пытаюсь работать с примером, но пока не добился успеха.
Или это то, что мне не хватает и нужно знать. Пожалуйста, помогите мне понять.
Заранее спасибо
Ответы
Ответ 1
Например, вы не можете Умножить или Разделить два разных типа i.e String vs Integer
var answer = 1 * "1"; // you cannot do this
Вы должны выполнить это упражнение, это известно как строго типизированный
как будто вы видите в php
$x = "3" * 1; // is correct in php
Итак, здесь вам не нужно явно бросать его.
Ответ 2
Когда мы говорим что-то строго типизированное, мы подразумеваем, что тип объекта известен и доступен.
Скажем, у меня есть функция, например, следующая
public int Add(int a, int b){
return a+b;
}
Мы можем вызвать эту функцию, например,
int result = Add(5,4);
Но мы не можем делать, как после
int result = Add(5.2,4.5); // We will get here compilation error.
С# (и С++ и многие другие языки) строго типизирован, потому что компилятор будет обнаруживать и помечать эти ошибки во время компиляции.
Смотрите здесь
Ответ 3
Нет. Это означает, что 1
и "1"
(или любое другое число и строка, если на то пошло) являются разными значениями, которые не могут быть случайно заменены в выражениях.
Ответ 4
"полностью совместим с .NET Common Type System" означает, что типы данных могут использоваться на любом языке .NET. Поэтому, если вы создали класс, который предоставляет свойство в С#, совместимом с CTS, этот класс можно использовать из VB.net.
"Каждое поле данных в таблице является строго типизированным элементом данных" означает, что вы можете полагаться на тип значения в таблице, и вам нужно было бы перевести его на другой тип, если это было необходимо. Вы не можете выполнять неявное кастинг.
Ответ 5
Это означает, что если есть две переменные разных типов, вы должны их использовать, чтобы выполнить исполняемый файл.
Иначе это вызовет исключение.