Обобщения по Шилдту закрытый / открытый тип

Рейтинг: 2Ответов: 2Опубликовано: 05.11.2014

Господа, учу обобщения по Шилдту и наткнулся на такую вот цитату:

C# чаще определяются такие понятия, как открытый и закрытый типы. Открытым типом считается такой параметр типа или любой обобщенный тип, для которого аргумент типа является параметром типа или же включает его в себя. А любой тип, не относящийся к открытому, считается закрытым. Сконструированным типом считается такой обобщенный тип, для которого предоставлены все аргументы типов. Если все эти аргументы относятся к закрытым типам, то такой тип считается закрыто сконструированным. А если один или несколько аргументов типа относятся к открытым типам, то такой тип считается открыто сконструированным.

Если честно, то не понял ни слова из этой фразы. Понял лишь, что сконструированный тип - это тип, которому выписали аргументы. А вот что такое открытый и закрытый тип - вообще не въехал. Если не трудно, объясните, пожалуйста, на пальцах, что это значит (открыты/закрытый тип). Буду дико благодарен.

Ответы

▲ 1Принят

Как я понял, этот текст имеет в виду отличие generic-типа, в котором есть конкретные типы-аргументы, и типа, в котором их нет (List<int> против List<T> для generic-параметра T).

И кстати: не советую учить по Шилдту. Он был не очень хорошим автором, и вряд ли стал лучше.

▲ 3

эта ваша книга случайно не гуглопереводчиком переведена? Давно не встречал такого косноязычия. Если у вас книга переведена автоматически, то найдите нормальный перевод. Если же перлы типа "C# чаще определяются такие понятия" - дело рук человека-переводчика, то такому толмачу надо забить гвоздь в голову. Я не первый год работаю с шарпом, но в этом заклинании честно говоря тоже мало что понял