Klausimai pažymėti „neapdorotų tipų“

Žalios rūšys yra „Java“ kalbos generinių vaistų savybės. Žaliavinis tipas yra etaloninis tipas, suformuotas naudojant bendrinio tipo pavadinimą be jokių pridėto tipo argumentų. Žaliavinis tipas yra lygus bendrinio tipo ištrynimui.
14
atsakymai

Kas yra žaliavinis tipas ir kodėl neturėtume to naudoti?

Klausimai: Kas yra „Java“ neapdoroti tipai ir kodėl dažnai girdžiu, kad jie neturėtų būti naudojami nauju kodu? Kokia yra alternatyva, jei negalime naudoti žaliavų tipų ir kaip tai geriau?
gegužės 5 d. 10 val
2
atsakymai

„Java 6“: nepalaikomi įspėjimai @SuppressWarnings („rawtypes“)

Persijungiau į naujausią „Sun Java“ kompiliatorių ir pastebėjau keletą įspėjimų esamame „Java 6“ kode. „Eclipse IDE“ pasiūlė komentuoti paskyrimą su: @SuppressWarnings („rawtypes“) Pavyzdžiui: klasė Foo <T> {... ...
nustatyti 05 Rgs '10, 19:19
6
atsakymai

ArrayList <Integer> priima eilutę

public class Main {public static void main (String [] args) {ArrayList <Integer> ar = naujas ArrayList <Integer> (); Sąrašas l = naujas ArrayList (); l.add ("a"); l.add ("b"); ar.addAll (l); System.out ...
Nustatykite kovo 24 d. 15 val. 15:55
5
atsakymai

Kodėl klasė <?

Jei skelbiu klasę kaip lauką: klasė fooClass; Eclipse suteikia man įspėjimą: klasė yra neapdorotas. Nuorodos į A tipo bendrąją klasę turi būti parametruotos. ir kodėl raginu tai daryti? Jei prašau ...
nustatyti 02 gruodis '10 19:30 val
6
atsakymai

Bendrosios „Java“ metodai generinių vaistų klasėse

Jei kuriate „Java“ bendrąją klasę (klasė turi tipo parametrus), ar galite naudoti bendrus metodus (ar metodas priima bendrus tipo parametrus)? Apsvarstykite šį pavyzdį: viešosios klasės „MyClass“ {public <K> K doSomething (K k) {...
nustatyti 01 rug. '13, 21:15
3
atsakymai

Nepavyko konvertuoti iš sąrašo <sąrašas> į sąrašą <sąrašas <? >>

Žaliavų sąrašas konvertuojamas į sąrašą <?> Tiesiog gerai. Kodėl šaltinio sąrašas negali būti konvertuojamas į sąrašą <?>? {// darbai Sąrašas neapdorotas = null; Sąrašas <?> Laukiniai = žalia; } {// Tipo neatitikimas: negali ...
lapkričio 5 d. '14, 23:41
5
atsakymai

Kodėl galima „neteisingo tipo“ objektą grąžinti iš parametrų sąrašo „Java“?

Čia yra kodo fragmentas: importuoti java.util. *; class Test {public static void main (String [] args) {List <Integer> list = new ArrayList <> (); addToList (sąrašas); Integer i = list.get (0); // # 1 nepavyksta vykdymo metu ...
nustatytas kovo 4 d. 15 val. 19:26
2
atsakymai

Nepatvirtinta užduotis

Naudoju „Android Studio 1.1.0“. Tai nesukelia įspėjimų: viešoji statinė A klasė {viešas žemėlapis <Integer, eilutė> getMap () {return null; }} viešoji statinė B klasė {public void processA (A a) {Žemėlapis <...
yra nustatytas kovo 2 d. 15 val. 13:56
5
atsakymai

Žaliavų tipų ir bendrų metodų derinimas

Štai klausimas, šis pirmasis kodų sąrašas yra sukompiliuotas tik gerai (JDK 1.6 | JDK 1.7): ArrayList <String> a = naujas ArrayList <String> (); String [] s = a.toArray (nauja eilutė [0]); Tačiau, jei skelbiu sąrašo nuorodą kaip neperdirbtą tipą: ...
birželio 13 d. 12 val
4
atsakymai

Kodėl vadinamas metodas, turintis bendrą grąžą bendroje klasėje, laikoma javac nesaugus?

Apsvarstykite šį kodą: viešoji klasė Main {public static class NormalClass {public class <Integer> metodas () {return Integer.class; }} viešoji statiška klasė <T> {public class ...
gegužės 02-15 dienomis 19:58
4
atsakymai

Ar galima išvengti pažymėtų įspėjimų, kai viršijamas metodas su žaliavinio tipo parametrais?

Aš pratęsiu bibliotekoje apibrėžtą klasę, kurią negaliu keisti: viešosios klasės tėvų {public void init (žemėlapio ypatybės) {...}} Jei apibrėžiu klasę „Vaikas“, kuris tęsiasi tėvą, ir naudoju „Java 6“ su generiniais kaip geriausia saulė ...
nustatyti spalio 28 d '08, 1:05
2
atsakymai

Kodėl neapdorotos rūšys vienoje vietoje verčia generinius skundus kitoje vietoje laikyti neapdorotais?

Apsvarstykite šį pavyzdį: importuoti java.util. *; klasė Foo <T> {public int baz (sąrašas <String> eilutės sąrašas) {return 1; } public int baz (ArrayList <Object> objektų sąrašas] {return 2; } public static void main (String [] args) {F ...
gegužės 23 d. 11 val
1
atsakymas

kodėl aš galiu nustatyti primityvius tipus trijose operacijose

Aš visada maniau, kad primityvūs Java tipai negali būti nuliniai, nes tai yra kompiliavimo laiko klaida, jei bandau daryti kažką panašaus: int test = null; Tačiau trijose operacijose, atrodo, tai leidžiama: int test = something! = 0? 5: null ...
lapkričio 8 d. '12, 17:38
4
atsakymai

Ar gera praktika yra pakeisti klasę <? pratęsia objektą>, kad išvengtumėte įspėjimų?

Mano kodo pakete turiu kažką panašaus: viešoji klasė mySpecialMethod () {return MySpecialClass.class; }, kuris sukelia įspėjimą. Nuorodos į bendrąjį tipą Klasė turi būti parametruojama. Bet esl ...
gruodžio 16 d '08 9:52
2
atsakymai

Sąrašas <Sąrašas <? >> ir sąrašas <List> yra nesuderinami java tipai

Aš vis tiek nepavyko surinkti šio kodo: sąrašas <List> a = naujas ArrayList (); Sąrašas <Sąrašas <? >> b = naujas ArrayList (); a = b; // nesuderinami tipai b = a; // nesuderinami tipai Atrodo, kad java neatsižvelgia į sąrašą ir sąrašą <...
nustatė 15 kovo 15 d. 2:31