Hirdetés
Új hozzászólás Aktív témák
-
-
skoda12
tag
válasz x123456 #1828 üzenetére
Írok egy példát és abból le fog tisztulni:
package javaapplication1;
class A{
public static void staticF(){
System.out.println("staticF() A");
}
public void f(){
System.out.println("f() A");
}
}
class B extends A{
public static void staticF(){
System.out.println("staticF() B");
}
public void f(){
System.out.println("f() B");
}
}
public class Main {
public static void main(String[] args) {
A a = new B();
B b = new B();
a.f();
a.staticF();
b.f();
b.staticF();
}
}Kimenet:
f() B
staticF() A
f() B
staticF() B[ Szerkesztve ]
-
Löncsi
őstag
válasz x123456 #1832 üzenetére
'a'-beli try-catch ágat törölheted sztem, mivel ott 'b'-t hívod meg, a b-hez tartozó catch fog működni.
Amúgy kérdésedre a válasz ,hogy nem tudom, igazából nem tudom mi értelme lenne..
[ Szerkesztve ]
Elvették a radírját, azt az egész élete egy nagy kompenzálás, hogy ő igenis kan és igenis 2 méteres a fallosza - by stranger28
-
gaben
aktív tag
válasz x123456 #1838 üzenetére
Szia!
Hmm...
server glx version string: 1.2
client glx version string: 1.4
GLX version: 1.2
OpenGL version string: 1.4 Mesa 7.7.1Most a server meg a Client version közt mi a különbség? Ezt ne mnagyon értem, meg miért régi?
Még egy kérdés:
Olyan problémám volna ,hofy van egy forrsákód ,ami külső, nem szokványos importokat használ. (neurális háló példa progi )
Szóval nem ismeri az importokat alapból. .JAr fájl nincs ,helyette van egy .tar.gz állomány. Ebben vannak .class fájlok és .java fájlok is ebben van a tutor is,meg azok a jegyzékeke is amit az importbna használna. Ezt kibontom Winrarral. Eclipse-ben a Library-knál (ahol .jar-t adnám hozzá más esetben), ott rámegyek az External Class folders, beállítom ,de semmi. Mit kell ezzel kezdeni?[ Szerkesztve ]
-
skoda12
tag
válasz x123456 #1842 üzenetére
Ha a sun-os tutort olvasod, akkor gondolom nincs gond az angol szakirodalommal sem. Ebben az esetben pedig a SCJP study guide az alapmű. Ha pedig valami spéci API érdekel, akkor arra külön kell keresni.
-
skoda12
tag
válasz x123456 #1858 üzenetére
Nézd meg, hogy tudnál külső osztályból létrehozni egy másik osztályba ágyazott osztályból egy példányt.
package javaapplication1;
class A{
class B{
}
static class C{
}
}
public class Main {
public static void main(String[] args) {
A a = new A();
A.B b = a.new B();
A.C c = new A.C();
}
}Mint láthatod, ha nem static nested classról van szó, akkor kell egy példány először a beágyazó osztályból. Ezért b által hivatkozott objektum kapcsolódik a által hivatkozotthoz.
--------------------------------------------------
Az interface-szes problémára: Egy interface minden függvénye impliciten public elérésű. Felülírási szabály szerint pedig nem szűkítheted egy függvény elérését (ezesetben publicról defaultra).[ Szerkesztve ]
-
A szerzetes
csendes tag
válasz x123456 #1858 üzenetére
Interface-ben hamegadsz egy metodust, az implicit abstracs és public mást nem is lehet megadni interface-en belül. Ha viszont az osztályba nem írod ki a pulblic-ot akkor csomagon belül ugyan publikus, de csomagon kívül privát és ez a viselkedés nem egyezik meg a puliblic-kal, hanem annak szűkítése, ami nem megengedett...
"Nem adom fel mert lehet, hogy holnap lesz az én napom"
-
shev7
veterán
válasz x123456 #1866 üzenetére
hat en anno csak szimpla szoveges menus alkalmazasokkal szorakoztam, de emlekeim szerint a j2me eleg volt. Bar elofordulhat hogy rosszul emlekszem....
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
skoda12
tag
válasz x123456 #1868 üzenetére
Javat szerintem ne erőltesd telefonokon. Ha ilyen irányba akarsz elmozdulni, akkor döntened kell, hogy Iphone vagy Android. Iphone-nal nincs tapasztalatom, androidra viszont elég gázos a fejlesztés. Verziónként külön sdk, gagyi programnyelv és api, nincs fix programbelépési pont csak repkednek az események, xml descriptorok, bugos emulátor (de csak hogy könnyebb legyen a fejlesztés) ... Szóval elég hulladék. Lehet, hogy mint end user, nagyon látványos tapogatni az ikonokat a telefonon, de fejleszteni rá ...
[ Szerkesztve ]
-
skoda12
tag
válasz x123456 #1874 üzenetére
Viszonylag gyakran előkerülnek. Gondolj pl a tárolókra, mint a Vector, HashMap, LinkedList, ... vagy pl TypedQuery JPA-ban. De saját generikus class-t vagy interface-t is sokszor kell írni. Ezekkel a generikusokkal megspórolható egy csomó castolás, így gyorsabb a program.
[ Szerkesztve ]
-
skoda12
tag
válasz x123456 #1881 üzenetére
Ahogy a linkelt oldalon is látható, a Box egy generikus osztály és tartalmaz t névvel egy változót:
...
private T t;
...
Az add függvény ennek a t-nek adna értéket. A fillBoxes pedig átvesz egy listát, amiben Boxok vannak és minden Boxhoz hozzáadja u-t. De nyilván tudnia kel, hogy mi a típus. Ez lesz az a típus, amit U helyére írsz be.[ Szerkesztve ]
-
skoda12
tag
válasz x123456 #1883 üzenetére
"Ezt a metódust úgy kell értelmezni, hogy van egy U paramétere, valamint egy olyan, ami a List generikusból, azon belül kizárólag a Box generikus valamely fajtájából származik és megkötés, hogy a Box "altípusa" (nem tudom, erre mi lenne a helyes kifejezés) meg kell egyezzen az első paraméter típusával/osztályával?"
Igen, valamilyen Box-okat tartalmazó listát vár. Egyébként java.util.List-ként találod meg a listát, ami egy interface. Az implementációi pedig szintén a java.util csomagban találhatók.
[ Szerkesztve ]
-
x123456
aktív tag
-
x123456
aktív tag
válasz x123456 #1886 üzenetére
Van itt valaki, aki érti a hivatkozott hozzászólásomban vázolt "súlyos" problémámat?
Ha igen: nem lehet, hogy marhaságot akartam ráerőszakolni a java-ra?
Amikor írtam még úgy éreztem, hogy értem mit akarok. Azóta kissé elbizonytalanodtam: jelenleg értelmetlennek tűnik az elképzelés, hogy osztálydefinícióba wildcardot tegyek...Az a baj, hogy már nem tudom eldönteni: akkor voltam belekavarodva az info áradatba, vagy most (hogy már értelmetlennek tűnik) kutyultam össze valamit.
-
x123456
aktív tag
válasz x123456 #1895 üzenetére
Azt hiszem, megvan a magyarázat.
-
Löncsi
őstag
válasz x123456 #1895 üzenetére
javax.swing.SwingUtilities.invokeLater(new Runnable() { .. }
Fontos ,hogy kirajzolásokat az EDT szálon hajtsuk végre, más esetben hiba léphet fel (nomeg a grafikai műveletket meg kell próbálni függetleníteni a számításoktól, ezért kell külön szál).
Az invokeLater biztosítja, hogy a kirajzolás EDT szálon hajtódik végre. (Ugye paraméterben egy Runnable-et adsz át, a run() metódus tartalmazza a grafikai parancsokat).Le is tudod ellenőrizni ,hogy a kirajzolás EDT-n történik-e, az isEventDispatchThread() függvény meghívásával , logikai értéket ad vissza.
Remélem hasznos volt,bár látom utánajártál.
[ Szerkesztve ]
Elvették a radírját, azt az egész élete egy nagy kompenzálás, hogy ő igenis kan és igenis 2 méteres a fallosza - by stranger28
-
shev7
veterán
válasz x123456 #1902 üzenetére
"Olvastam ezt az android-google ellen készülő pert"
Az teljesen masrol szol. A google irt egy sajat VM-et, a Sun azt allitja, hogy a VM kodjanak egy reszet toluk nyultak. Ennek a pernek semmi koze ahhoz, hogy te irsz egy java alkalmazast.
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
x123456
aktív tag
válasz x123456 #1914 üzenetére
Ezt kissé át kell fogalmaznom, mert azt hiszem, valamit félreértettem elsőre: szóval annyi lenne a lényeg, hogy egy darab komponenst szeretnék egy 3x3 mezőnyi helyet elfoglaló terület közepére tenni úgy, hogy akkor is a mező közepén maradjon, ha változik az ablak mérete. Ezt a GridBagLayout-tal hogy lehet megoldani?
Valahol elvesztem a doksikban. Úgy tűnik, a fill és anchor mezőkön kívül is van még valami, ami befolyásolja a komponensek elhelyezését, mert ezzel a kettővel a max. amit el tudtam érni az az volt, hogy a 3x3-as terület alsó sorának közepére tette...
Hm. Na mind1, még keresgélek. -
Karma
félisten
válasz x123456 #1921 üzenetére
A beépített layoutokkal való szívás helyett fogd meg a MigLayoutot, pillanatok alatt össze fogod tudni rakni vele amit szeretnél.
Céges projectben is felhasználtam már (BSD licenc), sok évvel meghosszabbította a várható élettartamomat.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz x123456 #1924 üzenetére
Ez most csak egy ötlet, de szerintem meg lehet oldani.
Most olvastam, hogy a statikus metódusok compile-time bindingon mennek át, tehát ha az ősosztályban hivatkozol egy saját statikus metódusra közvetlenül, akkor biztosan az ősosztályé fog meghívódni.
Viszont ha reflekciót használsz, akkor meg tudod hívni név alapján.
Úgyhogy megpróbálhatnál az ős- és leszármazott osztályban is egy azonos nevű factory metódust írni, és azt a main()-ben GetClass().GetMethod("xxx") és az Invoke() segítségével meghívni.
Annyi mondjuk a csavar csak, hogy a main() metódust indításkor meg kell határoznod, melyik osztályban keresse a JVM De úgyis csak kísérletről van szó, nem?
Élő rendszerekben ez nagyságrendekkel bonyolultabb, általában frameworkök vannak az életciklusokra, a cserélhetőségre meg ilyenek...
[ Szerkesztve ]
“All nothings are not equal.”
-
x123456
aktív tag
válasz x123456 #1928 üzenetére
Továbbmegyek: semmilyen 1x1 cellásnál nagyobb komponens sem akar úgy működni, ahogy a leírás alapján képzelném:
cc.setLayout(new GridBagLayout());
GridBagConstraints gbc;
gbc=new GridBagConstraints();
gbc.gridx=1; gbc.gridy=1;
gbc.gridwidth=3; gbc.gridheight=3;
JButton b0=createJB("BUTTON0","cmd0",this);
b0.setBorder(new TitledBorder("keretes keret"));
cc.add(b0,gbc);A "cc" a JFrame.getContentPane()-ből származik. A fentiről én úgy gondoltam, hogy egy 3x3 cellát elfoglaló gombot kapok, a panel bal szélén és tetején egy-egy üres oszloppal, ill. sorral.
Ehhez képest kapok egy egyetlen cellát elfoglaló objektumot az ablak közepén.
Mit rontok el v. értek félre? (az a Border-es dolog csak nyomkövetési céllal került bele: arra voltam kíváncsi, a komponens foglal-e kisebb helyet, mint szeretném vagy a helyfoglalás stimmel, csak a gomb méretezése lesz kisebb - ebből úgy tűnik, valóban kisebb helyet foglal az előírtnál)[ Szerkesztve ]
-
-
x123456
aktív tag
válasz x123456 #1935 üzenetére
Épp csak a lényeg maradt le...
szóval létre akarok hozni két menüt, eltérő fontokkal.
Ilyenkor minden egyes menüponthoz egyenként be kell állítani, hogy milyen fontot használjon. Automatizálni persze tudom, de kérdés, hogy van-e valahol a swing-ben/awt-ben eldugva ilyen beállítási lehetőség? -
skoda12
tag
válasz x123456 #1937 üzenetére
Bár nem kifejezetten javas fórum, de van rajta pár javahoz értő: hup
Ez meg nem igazán forgalmas: javaforum
Egyébként swinges kérdésekre ezeken a helyeken sem kapsz túl sok érdemi választ. Swing, AWT mind halott, amire ezeket az apikat használták, abban már a .NET vonal erősebb. Ami java vonalon pörög az a spring, hibernate, seam, richfaces, jsp, jsf. A többibe szerintem ne ölj túl sok energiát.[ Szerkesztve ]
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- iPhone topik
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Vodafone mobilszolgáltatások
- Apple asztali gépek
- Amazon Fire TV stick/box
- Star Trek
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Anglia - élmények, tapasztalatok
- Világ Ninjái és Kódfejtői, egyesüljetek!
- eMAG vélemények - tapasztalatok
- További aktív témák...
- ÚJ Lenovo Legion 5 16IRX9 - 16" WQXGA 2k 165Hz - i5-13450HX - 16GB - 512GB - RTX 4060 - 3év garancia
- 1 TB Samsung M.2 2280, NVMe, PCIe, Gen4X4, SSD /számlával / 12 hónap jótállással
- DJI Mavic 3 Pro RC - drón szett új állapotban - Garanciával
- Playstation/Xbox konzolok
- APPLE MACBOOK AIR 13.3 2020 M1 (MGN63MG/A) Silver -MAGYAR - 21 Ciklus - 2+ év garancia - MAGYAR
Állásajánlatok
Cég: HC Pointer Kft.
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest