Przeczytałem książkę O'Reilly, dzięki której poznałem zasadę wstępu .
- Użyj
extendssymbolu wieloznacznego, gdy otrzymujesz wartości tylko ze struktury.- Użyj
supersymbolu wieloznacznego, gdy umieszczasz tylko wartości w strukturze.- I nie używaj symbolu wieloznacznego, gdy oboje chcecie pobrać i wstawić z / do struktury.
Wyjątki to:
Nie możesz umieścić niczego w typie zadeklarowanym za pomocą
extendssymbolu wieloznacznego, z wyjątkiem wartościnull, która należy do każdego typu referencyjnego.Nie można uzyskać niczego z typu zadeklarowanego za pomocą
supersymbolu wieloznacznego, z wyjątkiem wartości typeObject, która jest nadtypem każdego typu referencyjnego.
Czy ktoś może mi pomóc zgłębić tę zasadę? Jeśli to możliwe, ułóż je hierarchicznie.