Nie mogę znaleźć relacji między tymi typami za pomocą reflektora .Net. Dowolny pomysł?Gdzie się dowiedzieć/sprawdzić: Int32 dziedziczy po ValueType, ValueType dziedziczy z Object?
Odpowiedz
Skoro mówisz "przy użyciu .NET reflektor":
Jeśli chciał odbicie:
Type type = typeof (int);
while(type != null)
{
Console.WriteLine(type.FullName);
type = type.BaseType;
}
który pokazuje:
System.Int32
System.ValueType
System.Object
i jeśli masz na myśli IL:
.class public sequential ansi serializable sealed beforefieldinit Int32
extends System.ValueType
oraz:
.class public abstract auto ansi serializable beforefieldinit ValueType
extends System.Object
(w reflektorze, wybierz węzeł typu, a wybrać IL jako widoku)
Jeśli masz na myśli # Widok C, a następnie:
public struct Int32 ...
wystarczy; Słowo kluczowe struct
oznacza: dziedziczy po ValueType
(chociaż nie całkiem w zwykły sposób C# class
). ValueType
pozostaje regularne klasy i posiada:
public abstract class ValueType ...
i jak zwykle, class
którego nie określa typu bazowego oznacza: dziedziczy object
.
Mam na myśli widok C#. Wszystko jest teraz jasne. Dziękuję Markowi za dawanie różnych podejść, co jest wspaniałe. – user1033098
+1 za wyjaśnienie różnych możliwych sposobów. – Adil
- 1. Modyfikuj ValueType z metody rozszerzenia?
- 2. Selektor dziedziczy
- 3. Android XML dziedziczy po dwóch motywach rodzica?
- 4. Dlaczego NSOrderedSet nie dziedziczy po NSSet?
- 5. Czy dziedziczy się sekwencja specyfikatora atrybutu?
- 6. Jaka jest różnica między GetHashCode zaimplementowanym w klasie Object i ValueType?
- 7. Serializować obiektu, gdy obiekt dziedziczy z listy
- 8. CMAKE dziedziczy definicję od rodzica
- 9. Wyjątek pochodny nie dziedziczy konstruktorów
- 10. Atrybut 'content' dziedziczy wartość węzła
- 11. Razor typ widoku nie dziedziczy z 'System.Web.WebPages.WebPage'
- 12. styles.xml dziedziczy "? Android: attr/borderlessButtonStyle"?
- 13. Dlaczego Int nie dziedziczy/nie rozszerza się z zamówionego [Int]
- 14. Dynamicznie dziedziczy z klasy wewnętrznej przez odbicie
- 15. {@initit} nie dziedziczy superklasy javadoc w Eclipse
- 16. Tworzenie flexboxa dziedziczy prawidłową szerokość w IE11
- 17. Co to jest typ Ta struktura dziedziczy po?
- 18. Czy można utworzyć obiekt w JavaScript, który NIE dziedziczy z Object?
- 19. Sprawdź, czy typ obiektów dziedziczy abstrakcyjny typ
- 20. Generics IAbstract <T> dziedziczy z IAbstract
- 21. ServiceStack Razor dziedziczy dyrektywa ma intellisense
- 22. Jak zatrzymać podkatalogu dziedziczy zasady .htaccess rodzica
- 23. Czy klasa PHP Extended dziedziczy również interfejsy?
- 24. abstrakcyjna klasa dziedziczy inną klasa abstrakcyjna problem
- 25. Dlaczego podklasa nie dziedziczy stałych rodzica?
- 26. Kpiny z klasy, która dziedziczy z innej klasy
- 27. C++ Jak wiele dziedziczy z interfejsów z różnych typów zwracanych?
- 28. Dziedziczy z klasy, która ma konstruktora kopii usunięty
- 29. Wywołanie metody C++/CLI z parametrem System :: DateTime wymaga "ValueType" jako parametru?
- 30. Python klasa dziedziczy wieloprocesorowe, kłopoty z dostępem do członków klasy
Ładne pytanie, ja też jestem interesujący, ale myślę, że nie można go zobaczyć w reflektorze, ponieważ tylko słowa kluczowe, takie jak scruct lub enum, definiują typ jako wartość kompilatora. –
@Denis można zobaczyć go w IL, C# i drzewa ... –
przeglądarka obiektów w VS powinna również dać te same informacje ... –