В объектно-ориентированном программировании все должно быть объектом.Исходя из этого постула, возможно ли добавить методы и поля к литеральному объекту, такому как число, строка, логическое значение или символ?
Я заметил, что в C # мы можем использовать некоторые методыи поля класса "Integer" из математического выражения:
var a = (2 + 2).ToString();
Я полагаю, что это более синтаксический сахар для доступа к классу "Integer" и методу, фактически связанному с математическим выражением (и / илиего значение).
Но возможно ли в C # определить один из методов и полей только для литерального объекта?Например, эти примеры:
"Hello, world!".print();
var foo = 9.increment();
Это, вероятно, было бы бесполезно, но, поскольку язык является объектно-ориентированным, это должно быть осуществимо.Если это невозможно в C #, как мы можем сделать это с объектно-ориентированной парадигмой?