Az új be- és kimenet könyvtár
|
|
- Alíz Molnár
- 7 évvel ezelőtt
- Látták:
Átírás
1 Az új be- és kimenet könyvtár import java.io.ioexception; import java.io.fileinputstream; import java.io.fileoutputstream; import java.nio.channels.filechannel; import java.nio.bytebuffer; class Masol { static void masol( FileChannel in, FileChannel out ) throws IOException { ByteBuffer buffer = ByteBuffer.allocate(1024); buffer.clear(); while( in.read(buffer)!= -1 ){ buffer.flip(); out.write(buffer); buffer.clear(); public static void main( String[] args ) throws IOException { FileChannel in = (new FileInputStream(args[0])).getChannel(); FileChannel out = (new FileOutputStream(args[1])).getChannel(); masol(in,out); out.close(); in.close(); static void másol( ReadableByteChannel in, WritableByteChannel out ) throws IOException { ByteBuffer buffer = ByteBuffer.allocate(1024); while( in.read( (ByteBuffer)buffer.clear() )!= -1 ){ out.write( (ByteBuffer)buffer.flip() ); public static void main( String[] args ) throws IOException { FileInputStream fin = new FileInputStream(args[0]); FileChannel in = fin.getchannel(); FileOutputStream fout = new FileOutputStream(args[1]); FileChannel out = fout.getchannel(); másol(in,out); finally { fout.close(); finally { fin.close(); 1
2 1. A buerek m ködése public static void main( String[] args ) throws IOException { ByteBuffer buf = ByteBuffer.allocate(100); buf.clear(); buf.put((byte)3); buf.put((byte)5); buf.put((byte)7); buf.put((byte)11); buf.flip(); FileOutputStream fout = new FileOutputStream(args[0]); FileChannel out = fout.getchannel(); out.write(buf); finally { fout.close(); buf.put((byte)3).put((byte)5).put((byte)7).put((byte)11); buf.put( new byte[]{3,5,7,11 ); buf.put( primek, 1, 4 ); static boolean bennevan( byte minta, ReadableByteChannel in ) throws IOException { ByteBuffer buffer = ByteBuffer.allocate(1024); while( in.read((bytebuffer)buffer.clear())!= -1 ){ buffer.flip(); while( buffer.position() < buffer.limit() ){ if( buffer.get() == minta ){ return true; return false; while( buffer.hasremaining() ){ if( buffer.get() == minta ){ return true; public ByteBuffer get( byte[] dst ) public ByteBuffer get( byte[] dst, int offset, int length ) public ByteBuffer put( int index, byte b ) public byte get( int index ) public final int position() public final int limit() public final Buffer position(int newposition) public final Buffer limit(int newlimit) 2
3 2. Buerek létrehozása 2.1. Tömb a buer belsejében static void kitolt( ByteBuffer buffer, byte ertek ){ if( buffer.hasarray() ){ byte[] tartalom = buffer.array(); int kezdopozicio = buffer.arrayoffset(); int utolsopoziciopluszegy = kezdopozicio + buffer.capacity(); java.util.arrays.fill(tartalom,kezdopozicio,utolsopoziciopluszegy,ertek); else {... static void kiir( byte[] adatok, WritableByteChannel out ) throws IOException { ByteBuffer buffer = ByteBuffer.wrap(adatok); out.write( buffer ); 2.2. Buerek tartalmának megosztása ByteBuffer masik = buffer.duplicate(); ByteBuffer harmadik = buffer.slice(); import java.nio.bytebuffer; class Szelet { public static void main( String[] args ){ ByteBuffer buffer = ByteBuffer.allocate(1024); for( byte b=0; b<10; ++b ){ buffer.put( b ); buffer.position(3).limit(7); ByteBuffer szelet = buffer.slice(); for( int i=0; i<szelet.capacity(); ++i ){ byte b = szelet.get(i); b *= 11; szelet.put( i, b ); buffer.position(0).limit(10); while( buffer.remaining() > 0 ){ System.out.print( buffer.get() + " " );
4 2.3. Különböz primitív típusok támogatása static double osszeg( ReadableByteChannel in ) throws IOException { double osszeg = 0.0; ByteBuffer buffer = ByteBuffer.allocate(1024); while( in.read((bytebuffer)buffer.clear())!= -1 ){ buffer.flip(); FloatBuffer adatok = buffer.asfloatbuffer(); while( adatok.hasremaining() ){ osszeg += adatok.get(); return osszeg; static double osszeg( ReadableByteChannel in ) throws IOException { double osszeg = 0.0; ByteBuffer buffer = ByteBuffer.allocate(1024); FloatBuffer adatok = buffer.asfloatbuffer(); while( in.read((bytebuffer)buffer.clear())!= -1 ){ adatok.position(0).limit(buffer.remaining()/4); while( adatok.hasremaining() ){ osszeg += adatok.get(); return osszeg; static double osszeg( ReadableByteChannel in ) throws IOException { double osszeg = 0.0; ByteBuffer buffer = ByteBuffer.allocate(1024); while( in.read((bytebuffer)buffer.clear())!= -1 ){ buffer.flip(); while( buffer.hasremaining() ){ osszeg += buffer.getfloat(); return osszeg; 4
5 static void becsomagol( ByteBuffer buffer, Szamla szamla ){ buffer.clear(); buffer.putlong(szamla.azonosito()); buffer.putint(szamla.egyenleg()); int[] tranzakciok = szamla.tranzakciok(); buffer.putshort((short)tranzakciok.length); IntBuffer nezet = buffer.asintbuffer(); nezet.put(tranzakciok); buffer.position( buffer.position() + 4*tranzakciok.length ); buffer.flip(); buffer.order(byteorder.little_endian); 5
6 2.4. Csak olvasható buerek static long adatokatolvasesvalamitkiszamol( IntBuffer buffer ){ public static void main( String[] args ){ IntBuffer buffer;... // létrehozzuk a buffert és feltöltjük adatokkal long eredmeny = adatokatolvasesvalamitkiszamol(buffer.asreadonlybuffer());... // felhasználjuk a kiszámított eredményt 6
7 2.5. Közvetlen és leképzett buerek FileChannel channel = new RandomAccessFile("large.dat","rw").getChannel(); MappedByteBuffer buffer = channel.map(filechannel.mapmode.read_write, 0, channel.size()); channel.close(); buffer.load(); int limit = buffer.limit(); for( int i = buffer.position(); i < limit; ++i ){ buffer.put( i, (byte) (buffer.get(i)+1) ); buffer.force(); 7
8 3. Nem blokkoló IO while( true ){ out.writedouble( (double) in.readshort() ); out.flush(); catch( java.io.eofexception eof ){ Selector selector = Selector.open(); /* használjuk */ /* esetleg catch-ek */ finally { selector.close(); SelectableChannel channel =... channel.configureblocking(false); channel.register( selector, SelectionKey.OP_READ SelectionKey.OP_WRITE ); s.select(); Set<SelectionKey> feldolgozhatók = s.selectedkeys(); for( SelectionKey feldolgozható: feldolgozhatók ){ SelectableChannel channel = feldolgozható.channel(); if( feldolgozható.isreadable() ){ // olvassunk channel-r l if( feldolgozható.iswritable() ){ // írjuk ki channel-re, amit szeretnénk feldolgozhatók.clear(); SelectionKey feldolgozható =... // egy feldolgozható csatorna kulcsa SelectableChannel channel = feldolgozható.channel(); ByteBuffer buffer = int beolvasottbájtokszáma = ((ReadableByteChannel)channel).read(buffer); if( beolvasottbájtokszáma == -1 ){ // EOF jel, a partner bontotta a kapcsolatot feldolgozható.cancel(); channel.close(); else {... 8
9 4. Egy bonyolultabb példa 4.1. Többszálú szerver class EgyKliensKiszolgálása extends Thread { private final java.net.socket socket; private final DataInputStream in; private final DataOutputStream out; EgyKliensKiszolgálása( java.net.socket socket ) throws IOException { this.socket = socket; in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); public void run(){ while( true ){ out.writedouble( válasz(in.readshort()) ); out.flush(); catch( EOFException eof ){ catch( Throwable t ){ // nem várt kivétel log-olása finally { socket.close(); catch( Throwable t ){ /* nem várt kivétel log-olása */ double válasz( short kérés ){ return (double) kérés; 9
10 import java.io.*; class EgyKliensKiszolgálása extends Thread {... class Szerver { public static void main( String[] args ) throws IOException { java.net.serversocket kapcsolódásihely = new java.net.serversocket(9999); while( true ){ java.net.socket kapcsolat = null; kapcsolat = kapcsolódásihely.accept(); new EgyKliensKiszolgálása(kapcsolat).start(); catch( IOException e ){ // kivétel naplózása if( kapcsolat!= null ){ kapcsolat.close(); catch( IOException ioe ){ /* kivétel naplózása */ // kapcsolódásihely.close(); 10
11 4.2. Több kliens kiszolgálása egy szálon import java.io.*; import java.nio.*; import java.nio.channels.*; import java.util.*; import java.net.*; class SzelektívVárakozás { public static void main( String[] args ) throws IOException { final Selector multiplexer = Selector.open(); ServerSocketChannel kapcsolódásicsatorna = null; kapcsolódásicsatorna = kapcsolódásicsatornátlétrehoz(9999); kapcsolódásicsatorna.register( multiplexer, SelectionKey.OP_ACCEPT ); leállítószálatelindít(multiplexer); System.out.println("Kliensek kiszolgálása. Leállítás: <Enter>"); klienseketkiszolgál(multiplexer); System.out.println("Leállítás..."); finally { if( kapcsolódásicsatorna!= null ){ kapcsolódásicsatorna.close(); finally { multiplexer.close();... private static ServerSocketChannel kapcsolódásicsatornátlétrehoz( int port ) throws IOException { final ServerSocketChannel kapcsolódásicsatorna = ServerSocketChannel.open(); kapcsolódásicsatorna.configureblocking(false); final InetAddress localhost = InetAddress.getLocalHost(); final InetSocketAddress address = new InetSocketAddress(localhost, port); kapcsolódásicsatorna.socket().bind(address); return kapcsolódásicsatorna; 11
12 private static volatile boolean legyenvége = false; private static void leállítószálatelindít( final Selector multiplexer ){ assert multiplexer!= null; Thread leállítószál = new Thread(){ public void run(){ System.in.read(); catch( IOException e ){ legyenvége = true; multiplexer.wakeup(); ; leállítószál.setdaemon(true); leállítószál.start(); 12
13 private static class KliensKezel { final ByteBuffer buffer = ByteBuffer.allocate(2); private final ByteBuffer outbuffer = ByteBuffer.allocate(8); private final SocketChannel csatorna; KliensKezel ( SocketChannel csatorna ){ this.csatorna = csatorna; void válaszol() throws IOException { if( buffer.remaining() == 0 ){ buffer.flip(); final short kérés = buffer.getshort(); buffer.clear(); final double válasz = válasz(kérés); outbuffer.clear(); outbuffer.putdouble(válasz); outbuffer.flip(); csatorna.write(outbuffer); static double válasz( short kérés ){ return (double)kérés; // short // double 13
14 private static void klienseketkiszolgál( Selector multiplexer ) throws IOException { assert multiplexer!= null; Map<SocketChannel,KliensKezel > kliensek = new HashMap<SocketChannel,KliensKezel >(); while(!legyenvége ){ multiplexer.select(); if(!legyenvége ){ Set<SelectionKey> kulcsok = multiplexer.selectedkeys(); for( SelectionKey kulcs: kulcsok ){ SelectableChannel csatorna = kulcs.channel(); if( csatorna instanceof ServerSocketChannel ){ kapcsolatotlétrehoz( (ServerSocketChannel)csatorna, multiplexer, kliensek ); else if ( csatorna instanceof SocketChannel ){ klienstkiszolgál( (SocketChannel)csatorna, kulcs, kliensek ); else { assert false; kulcsok.clear(); finally { klienseketlezár(multiplexer); 14
15 private static void kapcsolatotlétrehoz( ServerSocketChannel kapcsolódás, Selector multiplexer, Map<SocketChannel,KliensKezel > kliensek ){ assert kapcsolódás.keyfor(multiplexer).isacceptable(); SocketChannel kapcsolat = null; kapcsolat = kapcsolódás.accept(); assert kapcsolat!= null; kapcsolat.configureblocking(false); kapcsolat.register(multiplexer,selectionkey.op_read); kliensek.put( kapcsolat, new KliensKezel (kapcsolat) ); catch( IOException e ){ hibaüzenet("error when accepting a connection.",e); if( kapcsolat!= null ){ csatornátlezár(kapcsolat, null); 15
16 private static void klienstkiszolgál( SocketChannel kapcsolat, SelectionKey kulcs, Map<SocketChannel,KliensKezel > kliensek ){ assert kapcsolat.equals(kulcs.channel()) && kulcs.isreadable() && kliensek.containskey(kapcsolat); KliensKezel klienskezel = kliensek.get(kapcsolat); if( kapcsolat.read(klienskezel.buffer) == -1 ){ kliensek.remove(kapcsolat); csatornátlezár(kapcsolat,kulcs); else { klienskezel.válaszol(); catch( IOException e ){ hibaüzenet("error during communication with a client.",e); csatornátlezár(kapcsolat,kulcs); 16
17 private static void klienseketlezár( Selector multiplexer ){ assert multiplexer!= null; for( SelectionKey kulcs: multiplexer.keys() ){ SelectableChannel csatorna = kulcs.channel(); if( csatorna instanceof SocketChannel ){ csatornátlezár((socketchannel)csatorna, kulcs); private static void csatornátlezár( SocketChannel kapcsolat, SelectionKey kulcs ){ assert (kapcsolat!= null) && (kulcs == null kulcs.channel().equals(kapcsolat)); if( kulcs!= null ) kulcs.cancel(); kapcsolat.close(); catch( IOException e ){ hibaüzenet("error when closing a connection.",e); private static void hibaüzenet( String üzenet, Throwable kivétel ){ if( üzenet!= null ){ System.err.println(üzenet); if( kivétel!= null ){ kivétel.printstacktrace(); 17
Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?
A "java Villa -v" parancs jelentése: A java interpreter elindítja a Villa osztály statikus main metódusát, és átadja neki paraméterként a "-v" stringet. A java interpreter elindítja először a Villa osztály
Java programozási nyelv 10. rész Input/output kezelés
Java programozási nyelv 10. rész Input/output kezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/28 Tartalomjegyzék
Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés
Kivételek kezelése (exception handling) Hibakezelés old style class Szamolo { void szamol( String s, int i ) { int d; if (i!= 0) d = (i+1)/i; else if (s!= null) d = s.length(); else if (i > 10) // applikációs
Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o
Miért Java? széleskörben elterjedt Micro Edition - beágyazott rendszerek, régi telefonok Standard Edition - PC, android ezen alapul Enterprise Edition - vállalati programok, web service-ek multiplatform
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 2. gyakorlat 1 Osztályok és objektumok default, public, protected, private láthatóság a metódusokra és adattagokra (első
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked
Az emelt szintű. informatika érettségi. programozási feladatainak. megoldása Java nyelven. NetBeans IDE 8.1 környezetben
Az emelt szintű informatika érettségi programozási feladatainak megoldása Java nyelven NetBeans IDE 8.1 környezetben Klement András 2016 Utolsó módosítás: 2016. május 25. Tartalomjegyzék Tartalomjegyzék
ANDROID ALKALMAZÁSFEJLESZTÉS
ANDROID ALKALMAZÁSFEJLESZTÉS Adattárolás SharedPreference Belső - külső tároló PreferenceActivity Felhő alapú tárolás SQLite sicz.mj[tekercs]gmail.com Sicz-Mesziár János 2013. július 3. Shared Preference
Java programozási nyelv
Szoftvertechnológia sáv Java programozási nyelv Dirk Louis-Peter Müller: Java (Belépés az internet világába) Panem kiadó, Budapest, 2002. Webvilág sorozat Készítette: Gregorics Tibor Vázlatos áttekintés
Algoritmusok és adatszerkezetek II.
Algoritmusok és adatszerkezetek II. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 6. Ugrólista (Skiplist) Definíció. Olyan adatszerkezet, amelyre
CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )
Célok: a Java DB adatbázis-kezelő rendszer használatának ismertetése, adatbázisok használata Java alkalmazásokban - kétrétegű architektúra, egyszerű kliens-szerver architektúra használata hálózati alkalmazásokhoz.
Szoftvertechnológia alapjai Java előadások
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html A mai előadás tartalma: Miért pont Java?
OOP: Java 8.Gy: Abstract osztályok, interfészek
OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus
Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN
Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető
C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem
C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real
Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor
Java Programozás 4. Gy: Java GUI Tipper, MVC kalkulátor 15/1 B ITv: MAN 2018.03.10 1. Feladat: Tipper Készítsük el a tippelős programunk grafikus változatát. Az üzleti logika kódja megvan, a felület pedig
Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java
Függvények, csomagok Csomagok Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges számú osztályt tartalmazhat Pl.: java.util.scanner Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Célja:
OOP: Java 8.Gy: Gyakorlás
OOP: Java 8.Gy: Gyakorlás 43/1 B ITv: MAN 2019.04.10 43/2 Egy régebbi beszámoló anyaga 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét
Informatika terméktervezőknek
Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások
Java Programozás 1. Gy: Java alapok. Ismétlés ++
Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk
Magas szintű programozási nyelvek 2 Előadás jegyzet
Magas szintű programozási nyelvek 2 Előadás jegyzet 1. Rendszerfejlesztés 0. lépés: Elemzés (analízis) 1. lépés: Tervezés a, technológia független rész b, technológia függő rész 2. lépés: Megvalósítás
Ja J v a a v a há h l á óz ó a z t a i al a ka k l a maz ma á z s á o s k o Socket, URL
Java hálózati alkalmazások Socket, URL Protokollok java.net: socket, URL (Uniform Resource Locators) Protokoll: számítógépek közötti kommunikáció szabályai Internet TCP/IP (Transport Control Protocol/Internet
JAVA PROGRAMOZÁS 3.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 3.ELŐADÁS 2014-2015 tavasz Polimorfizmus, absztrakt osztályok, interfészek 2 Példa - Hengerprogram 3 Példa - Hengerprogram 4 Példa - Hengerprogram
Java Programozás 11. Ea: MVC modell
Java Programozás 11. Ea: MVC modell 20/1 B ITv: MAN 2018.03.02 MVC Model-View-Controller A modell-nézet-vezérlő a szoftvertervezésben használatos szerkezeti minta. Az MVC célja elválasztani az üzleti logikát
Szoftvertechnológia alapjai Java előadások
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html 1 Kivételkezelés I. szokatlan, váratlan
Objektumorientált programozás C# nyelven
Objektumorientált programozás C# nyelven 3. rész Tulajdonságok Indexelık Kivételkezelés Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendı anyag vázlatát
Programozási technológia 2.
Programozási technológia 2. Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. PacMan Készítsünk egy szellem mentes két személyes PacMan játékot Ha a játékosok PacMan-jei mindent megettek, a játék újraindul
Objektumorientált programozás C# nyelven III.
Objektumorientált programozás C# nyelven III. Kivételkezelés Tulajdonságok Feladatok Készítette: Miklós Árpád Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és
Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész
Java Programozás 6. Gy: Java alapok Adatkezelő 2.rész 25/1 B ITv: MAN 2018.04.13 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki a Lista panelt - Betöltéskor olvassuk be az adatokat
Programozási nyelvek és módszerek Java Thread-ek
Programozási nyelvek és módszerek Java Thread-ek Laki Sándor lakis@inf.elte.hu 2006. május 3. 0-0 Szálak (Threads) Ahhoz, hogy egy mai rendszer m ködhessen több 10-100 folyamatnak kell futnia. A folyamatok
BME MOGI Gépészeti informatika 4.
BME MOGI Gépészeti informatika 4. 1. feladat önálló feladatmegoldás Generáljon két 1 és 10 közötti véletlen egész számot, majd kiírja ezekre a számokra a tízes szorzótáblákat! Ha az első generált szám
Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész
Java Programozás 9. Gy: Java alapok Adatkezelő 5.rész 15/1 B ITv: MAN 2018.04.22 A Keresés funkció Programlogika: 1. A keresés az etm táblamodellben fog keresni, és a találat rekordokat átmásolja egy másik
Java Programozás 3. Gy: Java GUI. Swing, AWT
Java Programozás 3. Gy: Java GUI Swing, AWT 35/1 B ITv: MAN 2018.02.25 Feladat Készítsük el az Emp osztály kezelő programját úgy, hogy ArrayList-et (listatömb, tömblista, rugalmas tömb) használunk. A java.util.arraylist
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 12. gyakorlat 1 Távoli metódushívás Java-ban (RMI) Java-ban a távoli metódushívás ( Remote Method Invocation, RMI) egy
Programozás II. ATM példa Dr. Iványi Péter
Programozás II. ATM példa Dr. Iványi Péter 1 ATM gép ATM=Automated Teller Machine Pénzkiadó automata Kezelő szoftvert szeretnénk írni Objektum-orientált módon 2 Követelmények Egyszerre csak egy embert
Kommunikáció Androidon Mobilinternet Wifi
OE-NIK 2012. március 24. Sicz-Mesziár János sicz-mesziar.janos@ nik.uni-obuda.hu Kommunikáció Androidon Mobilinternet Wifi Kommunikációs eszközök Androidon Wi-Fi Ma már minimum: a / b / g szabványok, újabbakon
A WEB programozása - JSP1 dr.gál Tibor. 2010. őszi félév
Általános jellemzők JavaServer Pages (JSP) Java utasításokat helyezetünk el a HTML lapon Ezket a Java utasításokat a kiszolgáló végrehajtja Az ügyfél felé generált tartalom: statikus HTML kód + Java utasítások
3. Gyakorlat Ismerkedés a Java nyelvvel
3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az
7. K: JAVA alapok Konzultáció
Objektum Orientált Programozás 7. K: JAVA alapok Konzultáció 35/1B IT MAN B IT v: 2017.05.03 MAN Hiba, biztonságos program 01. Szintaktikai hiba imt i = 0; system.out.println( alma ); for (int i = 0, i
Abstract osztályok és interface-ek. 7-dik gyakorlat
Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,
A Jáva programozási nyelv rejtelmei
Page 1 of 20 A Jáva programozási nyelv rejtelmei Tartalomjegyzék: Az alapok Egy példaprogram A program szerkezete Változók és értékek Megjegyzések a programban A fôprogram Vezérlési szerkezetek Kivételkezelés
Kivételkezelés, naplózás. Exception handling, logging
Kivételkezelés, naplózás Exception handling, logging Try-catch try { // Kódrészlet, amely kivételt eredményezhet catch (Exception1 object1 ) { // Az Exception1 kivétel kezelésének megfelelő kód catch (Exception2
OOP: Java 4.Gy: Java osztályok
OOP: Java 4.Gy: Java osztályok. 36/1 B ITv: MAN 2019.03.02 Feladat Készítsen el egy Employee osztályt és egy Employee osztályt használó osztályt (EmpProgram). Az Employee osztálynak: van name és salary
Programozás I. Első ZH segédlet
Programozás I. Első ZH segédlet Ezen az oldalon: kiírás az alapértelmezett (hiba) kimenetre, sztring konkatenáció, primitív típusok, osztály létrehozás, példányosítás, adattagok, metódusok Kiíratás alapértelmezett
3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai
Kémiai elemek felfedezése A kémiai elemek kémiailag tovább már nem bontható, egyszerű anyagok. Jelenleg 118 különböző kémiai elemet ismerünk, közüliik a Földön 94 található meg a természetben, ezeket természetes
List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error
Generics Egyszerűbb példák (java.util csomagból): public interface List { void add(e x); Iterator iterator(); public interface Iterator { E next(); boolean hasnext(); E - formális típusparaméter,
Java II. I A Java programozási nyelv alapelemei
Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak
I. 288.: Utcai WiFi térkép
I. 288.: Utcai WiFi térkép Azért ezt választottam, mert az iskolánkban viszonylag kevés WiFi hálózat található. Az adatok gyűjtéséhez saját programot készítettem androidos mobilomra a http://marakana.com/forums/android/examples/40.html
Java adattípusok Java programozás alapjai Egyszerű adattípusok (int, float) Osztályokkal objektumok Nincs külön mutató, referencia, címe operátor, helyette: objektumok csak dinamikusan hozhatok létre és
Gelle Kitti Algoritmusok és adatszerkezetek gyakorlat - 07 Hasítótáblák
Algoritmusok és adatszerkezetek gyakorlat - 07 Hasítótáblák Gelle Kitti 2017. 10. 25. Gelle Kitti Algoritmusok és adatszerkezetek gyakorlat - 07 Hasítótáblák 2017. 10. 25. 1 / 20 Hasítótáblák T 0 h(k 2)
Java Database Connectivity (JDBC)
Java adatbázisok elérése Java Database Connectivity (JDBC) JDBC Call Level Interface (CLI): standard, ami definiálja, hogy egy program hogyan kommunikálhat egy adatbázis management rendszerrel (DBMS).
Java és web programozás
Budapesti Műszaki Egyetem 2015. 04. 08. 9. Előadás Kivétel kezelés a kivétel (exception) egy esemény, mely futás közben megbontja a program normális futási folyamatát például kivétel dobódik amikor 0-val
Programozás BMEKOKAA146. Dr. Bécsi Tamás 1. Előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 1. Előadás Bemutatkozás Előadó: Dr. Bécsi Tamás St.106, (1)463-1044, becsi.tamas@mail.bme.hu Közlekedés-, és Járműirányítási Tanszék www.kjit.bme.hu Programozás
Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra.
Hello World Servlet Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra. Hozzunk létre egy Dynamic Web projectet File New Other itt a következőket
Kommunikáció - Wi-Fi, Mobil internet - Bluetooth - GSM / GPRS és SMS - NFC
Sicz-Mesziár János sicz.mj@gmail.com 2011. április 21. OE-NIK Kommunikáció - Wi-Fi, Mobil internet - Bluetooth - GSM / GPRS és SMS - NFC Kommunikációs eszközök Androidon Wi-Fi Ma már minimum: a / b / g
Programozási nyelvek II.: JAVA
Programozási nyelvek II.: JAVA 5. gyakorlat 2017. október 9-13. 5. gyakorlat Programozási nyelvek II.: JAVA 1 / 34 Az 5. gyakorlat tematikája Kivételkezelés alapjai Be és kimenet BufferedReader, Scanner
OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN
OOP: Java 11.Gy: Enumok, beágyazott osztályok 13/1 B ITv: MAN 2019.04.24 ArrayList Rugalmas tömb A tömbök korlátai Fix méret, nem lehet menet közben megnövelni Ha túl nagyra választjuk, fölösleges helyfoglalás
Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok. Android játékfejlesztés.
Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok Android játékfejlesztés Godinek László Tartalomjegyzék 1 Mentés... 1 1.1 A fájlmentésről röviden... 1 1.2
Debreceni Egyetem Informatika Kar. Mobiltelefon programozás és mobil adatbázis-kezelés
Debreceni Egyetem Informatika Kar Mobiltelefon programozás és mobil adatbázis-kezelés Témavezető: Dr. Fazekas Gábor egyetemi docens Készítette: Toldi Gábor informatika tanár Debrecen 2008 Tartalomjegyzék
Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Programozás I. 3. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Antal Gábor 1 Primitív típusok Típus neve Érték Alap érték Foglalt tár Intervallum byte Előjeles egész 0 8 bit
Osztályszintű elérés, kivételkezelés, fájlkezelés
Programozási, kivételkezelés, fájlkezelés Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 3 4 2 (statikusság) Az osztályban definiált attribútumok és műveletek az osztályból példányosított
Torna. A torna.csv UTF-8 kódolású állományban soronként egy versenyző eredményeit tároljuk. Az adatokat pontosvessző választja el egymástól.
Torna A pekingi olimpián tornából hat versenyszámban mérettetik meg magukat a versenyzők. Ennek a versenynek az eredményeit kell feldolgoznia ebben a feladatban. A megoldás során vegye figyelembe a következőket:
Kalapácsvetés 2016 szöveges
Kalapácsvetés 2016 Ebben a feladatban a 2016. évi nyári olimpiai játékokon az atlétika férfi kalapácsvetés döntőjének eredményeit kell feldolgoznia. A döntő 6 dobási sorozatból állt, de a 3. sorozat után
INFORMATIKAI ALAPISMERETEK
Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2010/2011-2 félév, 11. gyakorlat (az előző 2 gyak közül az egyiken ZH volt, a másik szünet miatt elmaradt) 1 JAR fájl készítés A JAR (Java
Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE
Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE 2015-16 Classic Empire - A turn Based Wargame Classic Empire is a real time, multiplayer, Internet-based game, featuring military, diplomatic, and economic
INFORMATIKAI ALAPISMERETEK
Informatikai alapismeretek emelt szint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK EMELT SZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM
C# osztályok. Krizsán Zoltán
C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC
Programozási technológia
Programozási technológia Osztályszintű elérés Kivételkezelés, Fájlkezelés Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Osztályszintű elérés (statikusság) Az osztályban definiált attribútumok és műveletek
Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.
Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606 Dr. Bécsi Tamás Bemutatkozás Előadó: Dr. Bécsi Tamás St.106, (1)463-1044, becsi.tamas@mail.bme.hu Közlekedés-, és Járműirányítási
Java II. I A Java programozási nyelv alapelemei
Java2 / 1 Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2009. 02. 09. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve
Programozási nyelvek II.: JAVA, 4. gyakorlat
Programozási nyelvek II.: JAVA, 4. gyakorlat 2017. október 2-6. Programozási nyelvek II.: JAVA, 4. gyakorlat 1 / 32 A 4. gyakorlat tematikája Tömbök A java.util.arrays osztály A String osztály A StringBuffer
Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben
Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Java GUI készítése, Oracle kapcsolódás JDBC-vel A jelen anyagban egy egyszerűsített megközelítéssel vizsgáljuk
Algoritmusok és adatszerkezetek II.
Algoritmusok és adatszerkezetek II. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 3. Kiegyensúlyozott keresőfák A T tulajdonság magasság-egyensúlyozó
Programozási nyelvek II.: JAVA
Programozási nyelvek II.: JAVA 6. gyakorlat 2017. október 16-20. 6. gyakorlat Programozási nyelvek II.: JAVA 1 / 24 Az 6. gyakorlat tematikája túlterhelés - összefoglalás statikus adattagok és metódusok
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 9. előadás Interface - típust vezet be, de osztálypéldány nem készíthető belőle (statikus típust ad) - több osztály is
Programozási nyelvek II.: JAVA, 4. gyakorlat
Programozási nyelvek II.: JAVA, 4. gyakorlat 2017. október 2-6. Programozási nyelvek II.: JAVA, 4. gyakorlat 1 / 29 A 4. gyakorlat tematikája Tömbök A java.util.arrays osztály A String osztály StringBuilder
ANDROID ALKALMAZÁSFEJLESZTÉS
ANDROID ALKALMAZÁSFEJLESZTÉS Adattárolás SharedPreference Belső - külső tároló PreferenceActivity Felhő alapú tárolás SQLite Sicz-Mesziár János sicz- m e s z i a r. j a n o s @ n i k. u n i - o b u d a.
A Java nyelv. Bevezetés, alapok Elek Tibor
A Java nyelv Bevezetés, alapok Elek Tibor A Java nyelv jellemzıi Interpreteres Forrás file fordítás Bytekódú file-ok (class fileok, nem gépikód, nem futtatható, egy új forrásnyelv) Interpreter: betölti,
Modern unit és integrációs tesztelés
Modern unit és integrációs tesztelés HOUG Orákulum - 2016. április Viczián István Java fejlesztő - IP Systems @vicziani at Twitter http://jtechlog.hu Miről lesz szó? 1 / 26 Automatizált tesztelés fontossága
abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {
Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,
117. AA Megoldó Alfréd AA 117.
Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,
Java és web programozás
Budapesti M szaki Egyetem 2013. szeptember 11. Jó hír Jó hír Java lesz! Tárgyismertet Elérhet ségek: Kovács Kristóf: kkovacs@math.bme.hu Rimay Zoé: zrimay@math.bme.hu, Követelmények: Év végi beadandó (facebook):
BME MOGI Gépészeti informatika 8.
BME MOGI Gépészeti informatika 8. 1. feladat Készítse beosztottak és vezetők munkahelyi adatait kezelő alkalmazást! A feladat megoldásához hozza létre a következő osztályokat! Beosztott osztály: adatmező
Kivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat
Kivételkezelés, beágyazott osztályok Nyolcadik gyakorlat Kivételkezelés Nem minden hibát lehet fordítási időben megtalálni Korábban (pl. C-ben) a hibakezelést úgy oldották meg, hogy a függvény hibakódot
.NET alapszolgáltatások 2.
1.oldal.NET alapszolgáltatások 2. Directory-k kezelése (Példák : DirectoryDateTimeRunEnv alkalmazás) Ellenőrzés könyvtár létrehozása előtt: if (!Directory.Exists("test")) Directory.CreateDirectory("test");
Kivételek. A program végrehajtása során ritkán bekövetkező események Nem a fő végrehajtási ág ; logikailag alacsonyabbrendű feladat jelzése
Kivételek A program végrehajtása során ritkán bekövetkező események Nem a fő végrehajtási ág ; logikailag alacsonyabbrendű feladat jelzése Hiba Felhasználó butaságot csinál Speciális/abnormális számítási
Programozási nyelvek II. JAVA EA+GY 1. gyakolat
Programozási nyelvek II. JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2017/2018. őszi félév Tartalom 1 Amit tudni kell a félévről
XML adatkezelés I. Az SAX szabvány. Dr. Kovács László Miskolci Egyetem Általános Informatikai Tanszék. XML adatok kezelési lehetőségei
XML adatkezelés I. Az szabvány Dr. Kovács László Miskolci Egyetem Általános Informatikai Tanszék XML adatok kezelési lehetőségei szövegszerkesztő API XML DOM API XSL XQUERY Az XML dokumentumok feldolgozó
// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió
BME MOGI Gépészeti informatika 3. 1. feladat Végezze el a következő feladatokat! Kérjen be számokat 0 végjelig, és határozza meg az átlagukat! A feladat megoldásához írja meg a következő metódusokat! a.
Kommunikáció Androidon Mobilinternet Wifi
OE-NIK 2013. április 14. Sicz-Mesziár János sicz-mesziar.janos@ nik.uni-obuda.hu Kommunikáció Androidon Mobilinternet Wifi Kommunikációs eszközök Androidon Wi-Fi Ma már minimum: a / b / g / n szabványok
Java programozási nyelv 4. rész Osztályok II.
Java programozási nyelv 4. rész Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/17 Tartalomjegyzék
Java és web programozás
Budapesti M szaki Egyetem 2013. szeptember 25. 3. El adás User public class User { private String realname_; private String nickname_; private String password_; public User(String realname, String nickname)
Objektum orientált programozás Java-ban
Objektum orientált programozás Java-ban String licenseplate; double speed; double maxspeed; String licenseplate; double speed; double maxspeed; Car c; c = new Car(); Car c = new Car(); String licenseplate;
Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread
Végrehajtási szálak Runnable, Thread Végrehajtási szálak Java-ban A Java program az operációs rendszer egy folyamatán (process) belül fut. A folyamat adat és kód szegmensekből áll, amelyek egy virtuális
Concurrency in Swing
Concurrency in Swing A szálkezelés a swing alkalmazásokban is fontos. Cél egy olyan felhasználói felület készítése, amely soha nem fagy, mindig válaszol a felhasználói interakciókra, bármit is csináljon
Tartalom DCOM. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés
Tartalom D Szoftvertechnológia elıadás Architektúra D vs CORBA Példá 2 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is használatos (pl. vágólap) NetDDE NetBIOS
BME MOGI Gépészeti informatika 7.
BME MOGI Gépészeti informatika 7. 1. feladat Írjon Windows Forms alkalmazást egy kör és egy pont kölcsönös helyzetének vizsgálatára! A feladat megoldásához hozza létre a következő osztályokat! Pont osztály: