Pytania oznaczone «generics»

127
Java generics T vs Object

Zastanawiałem się, jaka jest różnica między następującymi dwiema deklaracjami metod: public Object doSomething(Object obj) {....} public <T> T doSomething(T t) {....} Czy jest coś, co możesz / chciałbyś zrobić z jednym, ale nie z drugim? Nie mogłem znaleźć tego pytania w innym miejscu na...

126
Dlaczego w Go nie ma leków generycznych?

Zastrzeżenie: grałem w Go tylko przez jeden dzień, więc jest duża szansa, że ​​wiele przegapiłem. Czy ktoś wie, dlaczego w Go nie ma prawdziwego wsparcia dla typów ogólnych / szablonów / whatsInAName? Jest więc rodzaj ogólny map, który jest dostarczany przez kompilator, podczas gdy programista Go...

125
Protokół nie jest zgodny z samym sobą?

Dlaczego ten kod Swift nie kompiluje się? protocol P { } struct S: P { } let arr:[P] = [ S() ] extension Array where Element : P { func test<T>() -> [T] { return [] } } let result : [S] = arr.test() Kompilator mówi: „Typ Pnie jest zgodny z protokołem P” (lub, w późniejszych...

124
Jak zaimplementować IEnumerable <T>

Wiem, jak zaimplementować nieogólne IEnumerable, na przykład: using System; using System.Collections; namespace ConsoleApplication33 { class Program { static void Main(string[] args) { MyObjects myObjects = new MyObjects(); myObjects[0] = new MyObject() { Foo = "Hello", Bar = 1 };...

114
Czym dokładnie jest „klasa specjalna”?

Po nieudanej kompilacji czegoś podobnego do następującego: public class Gen<T> where T : System.Array { } z błędem Ograniczenie nie może być klasą specjalną `` System.Array '' Zacząłem się zastanawiać, czym właściwie są „specjalne zajęcia”? Ludziom często wydaje się, że popełniają ten...

113
zwracanie obiektu Void

Jaki jest prawidłowy sposób zwracania Voidtypu, jeśli nie jest to typ pierwotny? Na przykład. Obecnie używam null, jak poniżej. interface B<E>{ E method(); } class A implements B<Void>{ public Void method(){ // do something return null;