Hirdetés
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- Yézi: Blekk Frájdéj
- Geri Bátyó: Samsung T7 1TB külső SSD
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Fűzzük össze a szavakat :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Szólánc.
Új hozzászólás Aktív témák
-
modder
aktív tag
Karma írta: "A lényeg az, hogy milyen szolgáltatást nyújt, nem az, hogy konkrétan hogyan oldja meg."
Igazából ez a legfontosabb dolog. Amit még hozzá tennék, hogy kontextusfüggő vagy scope függő, hogy a statikus típusa a változónak Map vagy TreeMap legyen-e.
Amikor az osztályod (osztályaid) külső interfészét tervezed meg, akkor a hívó kliens kódnak nem kell tudnia hogy milyen konkrét implementációt (TreeMap vagy HashTable) ad vissza az osztályod egy függvénye, csak azt, hogy a visszaadot érték Map tulajdonságú.
De az osztályon belül fontos lehet, hogy konkrét típust deklarálj. Például egy JSON feldolgozó osztályt csinálsz, és szeretnéd, ha a hívó kliens egyszerűen egy OutputStreambe tudja írni a feldolgozandó JSON stringet. Neked azonban kell egy módszer a JSON feldolgozó osztályban, amivel ki tudod nyerni az OutputStreambe írt adatot. Az OutputStream interfészben nincsen deklarálva semmilyen metódus, amivel adatot ki tudnál nyerni (nem is arra való). De a ByteArrayOutputStreamben vissza tudod kérni a beírt adatot byte[] tömbként.
Konkrét példa:
public class MyJsonParser {
private ByteArrayOutputStream jsonByteStream = new ByteArrayOutputStream();
public OutputStream getOutputStream() {
return (OutputStream) jsonByteStream;
}
public JsonObject parse() {
// fontos tudni hogy ez egy ByteArrayOutputStream hogy használhassuk a toByteArray() metódusát
byte[] jsonBytes = jsonByteStream.toByteArray();
JsonObject jObject = new JsonObject();
// parszoljuk a json stringet
return jObject;
}
}
public class Application {
public static void main(String[] argv) {
MyJsonParser parser = new MyJsonParser();
// kit érdekel a konkrét implementációja az OutputStreamnek én csak írni akarok bele?
OutputStream parserOutputStream = parser.getOutputStream();
parserOutputStream.write( argv[0].getBytes() );
JsonObject jObject = parser.parse();
}
}Ezt csak azért írtam le, mert nem örök igazság, hogy csak interfész típust deklarálunk.

Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Kormányok / autós szimulátorok topikja
- Hogy is néznek ki a gépeink?
- Google Pixel topik
- Honor Magic6 Pro - kör közepén számok
- Milyen RAM-ot vegyek?
- Windows 10
- Battlefield 6
- One otthoni szolgáltatások (TV, internet, telefon)
- World of Tanks - MMO
- Fele annyit ér az iPhone Air, mint amennyibe pár hete került
- További aktív témák...
- Corsair VENGEANCE LPX 2x16GB DDR4 3200MHz CL16 - Új, bontatlan - Eladó!
- LG (55UH5J-H.) 140CM 4K WIFI PROFESSIONAL MONITOR ! AKCIÓ
- SAMSUNG (LS49CG954EUXEN ) 49" 240HZ NEO-QLED DUAL QHD GAMER ! AKCIÓ!!
- SAMSUNG (LS49C950UAUXEN) 5K 120HZ GAMER MONTOR ! AKCIÓ!
- SAMSUNG (LS27C902PAUXDU) 5K SMART PRÉMIUM PC-GAMER MONITOR ! AKCIÓ!
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- iPhone 13 Pro 128GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3963, 100% Akkumulátor
- Bomba ár! HP ProBook 450 G3 - i7-6G I 8GB I 256SSD I DVDRW I HDMI I 15,6" FHD I Cam I W11 I Gar!
- Apple iPhone 14 128GB,Használt,Adatkabelel,12 hónap garanciával
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


