|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Есть два класса Код: c# 1. 2.
И есть такой класс Код: c# 1.
Как понимать эти два места? 1. что значит where T: class? 2. И как класс объявляется исходя из себя же? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2016, 17:34 |
|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Ролг ХупинЕсть два класса Код: c# 1. 2.
И есть такой класс Код: c# 1.
Как понимать эти два места? 1. что значит where T: class? 2. И как класс объявляется исходя из себя же? 1. Where T : class - значит для для типа T удовлетворяют условию только классы, но не структуры. То есть качестве параметра типа для Generic класс можно будет указать только тип класса 2. Объявляется класс Settings<T>, а наследуется класс Settings, это 2 разных класса. 1 класс Generic, 2 класс обычный или абстрактный, не знаю ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2016, 17:42 |
|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Roman MejtesРолг ХупинЕсть два класса Код: c# 1. 2.
И есть такой класс Код: c# 1.
Как понимать эти два места? 1. что значит where T: class? 2. И как класс объявляется исходя из себя же? 1. Where T : class - значит для для типа T удовлетворяют условию только классы, но не структуры. То есть качестве параметра типа для Generic класс можно будет указать только тип класса 2. Объявляется класс Settings<T>, а наследуется класс Settings, это 2 разных класса. 1 класс Generic, 2 класс обычный или абстрактный, не знаю по 1 ясно, а в случае 2 класс объявляется зависимым от себя же фактически? public class SQLSettings : Settings<SQLSettings> ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2016, 18:11 |
|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Ролг Хупин, вы путаете мягкое с теплым это не одно и то же, абстрактный и интерфейс равнозначные в понятиях приведу пример на интерфейсе Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2016, 19:12 |
|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Где-то в степи, а зачем пример на яве? тут вроде раздел про несколько более другие ЯП. Ролг Хупин, выше уже сказали, что просто класс, и генерик-класс с тем же именем - это два разных типа. Даже если нет наследования, вполне можно написать вот такое: Код: c# 1. 2. 3. 4. 5.
и это вполне скомпилируется, т.к. Foo и Foo<T> - разные типы. Они могут существовать параллельно, один может наследоваться от другого - всему этому ничего не мешает, т.к. типы разные. В общем, читать Троэлсена или (лучше) Рихтера про генерики. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2016, 06:32 |
|
Как понимать такое объявление классов?
|
|||
---|---|---|---|
#18+
Ролг Хупин а в случае 2 класс объявляется зависимым от себя же фактически? Да, этому ничего не мешает, например тут Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Мы имеем строго типизированный метод CompareTo, который принимает Class1, а не object. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2016, 11:46 |
|
|
start [/forum/topic.php?fid=20&fpage=64&tid=1400709]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
187ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 301ms |
total: | 578ms |
0 / 0 |