13. Állományok, bejegyzések 14. Folyamok 15. Közvetlen hozzáférésű állomány. Programozási technológia (Java) - III. / 1

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "13. Állományok, bejegyzések 14. Folyamok 15. Közvetlen hozzáférésű állomány. Programozási technológia (Java) - III. / 1"

Átírás

1 13. Állományok, bejegyzések 14. Folyamok 15. Közvetlen hozzáférésű állomány Programozási technológia (Java) - III. / 1

2 13. Állományok, bejegyzések 1. A java.io csomag 2. Útvonalak 3. A File osztály 4. Állományműveletek 5. Szűrés FilenameFilter interfész 6. Állománykiválasztó dialógus JFileChooser 7. Könyvtár felderítése rekurzióval Programozási technológia (Java) - III. / 2

3 java.lang.object +--File +--FilenameFilter +--InputStream +--ByteArrayInputStream +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 3 java.lang.object +--Reader +--InputStreamReader +--FileReader +--BufferedReader +--Writer +--OutputStreamWriter +--FileWriter +--PrintWriter +--BufferedWriter DataInput DataOutput +--RandomAccessFile java.io csomag

4 Útvonalak Absztrakt / valódi útvonal A valódi útvonal részei Prefix: " "/"(Unix), "c:\", "\\"(Windows) Nulla vagy több név szeparátorokkal elválasztva Szeparátor: "/"(Unix), "\"(Windows) Útvonalszeparátor: ":"(Unix), ";"(Windows) Helyi / távoli Abszolút útvonal Abszolút / relatív Aktuális könyvtár Szülő / gyermek Relatív útvonal Név c:\javaprog\work\icons\insert.gif Programozási technológia (Java) - III. / 4 Szülő útvonal Gyermek útvonal

5 Bejegyzést reprezentál Programozási technológia (Java) - III. / 5 File osztály A bejegyzést útvonalával azonosítja Mezők static String separator static char separatorchar static String pathseparator static char pathseparatorchar Konstruktorok File(String pathname) File(String parent, String child) File(File parent, String child)

6 Programozási technológia (Java) - III. / 6 File osztály (folyt.) Metódusok - A bejegyzés útvonala boolean isabsolute() String getabsolutepath() File getabsolutefile() String getpath() String getcanonicalpath() throws IOException File getcanonicalfile() throws IOException String getparent() File getparentfile() String getname()

7 Programozási technológia (Java) - III. / 7 File osztály (folyt.) Metódusok - A bejegyzés tulajdonságai boolean isdirectory() boolean isfile() long length() long lastmodified() boolean setlastmodified(long time) boolean canread() boolean canwrite() boolean exists() boolean ishidden() boolean setreadonly()

8 File osztály (folyt.) Metódusok - Karbantartás boolean mkdir() boolean mkdirs() boolean createnewfile() throws IOException boolean delete() void deleteonexit() boolean renameto(file dest) Programozási technológia (Java) - III. / 8

9 Metódusok - Egyéb Programozási technológia (Java) - III. / 9 File osztály (folyt.) Metódusok - Bejegyzéslisták String[] list() String[] list(filenamefilter filter) File[] listfiles() File[] listfiles(filenamefilter filter) static File[] listroots() equals(object o) compareto(file pathname) compareto(object o) String tostring()

10 Programozási technológia (Java) - III. / 10 Állományműveletek Feladat Átnevezés, törlés, létrehozás (RenDel) Adva vannak a következő könyvtárak és állományok: c:/javaprog/work/proba/app.java c:/javaprog/work/proba/fileattributes.class c:/javaprog/work/proba/fileattributes.java c:/javaprog/work/proba/icons/delete.gif c:/javaprog/work/proba/icons/insert.gif A c:/javaprog/work/proba könyvtárban végezzük el a következő állományműveleteket: Nevezzük át az App.java állományt App.~jav-ra! Töröljük ki a teljes icons könyvtárat! Feltételezzük, hogy abban nincs további könyvtár. Hozzunk létre egy üres readme.txt szöveges állományt! Minden egyes művelet után listázzuk ki a könyvtár tartalmát!

11 import java.io.*; public class RenDel { static void printdir(string dir) { File f = new File(dir); if (!f.exists() f.isfile()) { System.out.println(dir+" nem egy konyvtár."); return; System.out.println(dir+" bejegyzései:"); String[] list = f.list(); for (int i=0; i<list.length; i++) System.out.println(list[i]); System.out.println(); Programozási technológia (Java) - III. / 11

12 public static void main (String args[]) { String dir = "c:/javaprog/work/proba"; printdir(dir); File f = new File(dir,"App.java"); if (f.renameto(new File(dir,"App.~jav"))) System.out.println("Az átnevezés sikerült."); else System.out.println("Az átnevezés nem sikerült."); printdir(dir); f = new File(dir,"icons"); File[] list = f.listfiles(); Programozási technológia (Java) - III. / 12

13 if (list!=null) { for (int i=0; i<list.length; i++) list[i].delete(); if (f.delete()) System.out.println("A törlés sikerült."); else System.out.println("A törlés nem sikerült."); printdir(dir); else // list==null System.out.println("Nincs ilyen könyvtár."); Programozási technológia (Java) - III. / 13

14 f = new File(dir,"readme.txt"); try { f.createnewfile(); System.out.println("A létrehozás sikerült."); catch(ioexception e) { System.out.println("A létrehozás nem sikerült."); printdir(dir); // main // RenDel Programozási technológia (Java) - III. / 14

15 Szűrés FilenameFilter interfész Könyvtárbejegyzések szűrését szolgálja Metódus boolean accept(file dir, String name) Feladat Szűrés Írjuk ki konzolra a program paramétereként megadott könyvtár összes exe állományát! Ha nem adnak meg paramétert, akkor az aktuális könyvtárból listázzunk! Futtatáskor a program paramétere legyen a java home könyvtár bin alkönyvtára! Programozási technológia (Java) - III. / 15

16 import java.io.*; class FiletypeFilter implements FilenameFilter { private String extension; public FiletypeFilter(String extension) { this.extension = extension.touppercase(); public boolean accept(file dir, String name) { return name.touppercase().endswith('.'+extension); Programozási technológia (Java) - III. / 16

17 public class Szures { public static void main(string[] args) { File f; if (args.length>0) f = new File(args[0]); else f = new File("."); if (!f.isdirectory()) { System.out.println("Nincs, vagy nem könyvtár."); return; Programozási technológia (Java) - III. / 17

18 String[] list = f.list(new FiletypeFilter("exe")); System.out.println(f.getAbsolutePath() + " könyvtár exe állományai:"); for(int i=0; i<list.length; i++) System.out.println(list[i]); // Szures Programozási technológia (Java) - III. / 18

19 Állománykiválasztó dialógus JFileChooser Könyvtárlista Könyvtár Fájlnév Szűrő Programozási technológia (Java) - III. / 19

20 Állománykiválasztó dialógus JFileChooser (folyt.) Modális dialógus ablak, melynek feladata egy abszolút útvonal bekérése A dialógus elemei Aktuális könyvtár Könyvtárlista Szűrő Fájlnév Dialógus típusai: megnyitás, mentés Mezők static int OPEN_DIALOG, SAVE_DIALOG static int APPROVE_OPTION, CANCEL_OPTION, ERROR_OPTION Programozási technológia (Java) - III. / 20

21 Állománykiválasztó dialógus JFileChooser (folyt.) Jellemzők String dialogtitle int dialogtype (OPEN_DIALOG, SAVE_DIALOG) int fileselectionmode (FILES_ONLY (alapért.), DIRECTORIES_ONLY, FILES_AND_DIRECTORIES) boolean multiselectionenabled FileFilter filefilter File currentdirectory File selectedfile File[] selectedfiles Programozási technológia (Java) - III. / 21

22 Állománykiválasztó dialógus JFileChooser (folyt.) Konstruktorok JFileChooser() JFileChooser(File currentdirectory) JFileChooser(String currentdirectorypath) Metódusok int showopendialog(component parent) int showsavedialog(component parent) Lehetséges visszatérési értékek: APPROVE_OPTION, CANCEL_OPTION, ERROR_OPTION String getname(file f) Programozási technológia (Java) - III. / 22

23 Feladat FileChooserTest Készítsünk alkalmazást Java forrásállományok keresgélésére! Tegyünk a keretre két szövegmezőt és két nyomógombot: a szövegmezőkben az éppen kiválasztott könyvtár és Java állomány neve legyen, és egyiket se lehessen szerkeszteni! a Választ gomb lenyomására jelenjen meg az állománykiválasztó dialógus! A szövegmezők értéke ezután a kiválasztott könyvtár és állománynév legyen! A keret címe legyen a kiválasztott állomány teljes útvonala! A dialógus kezdeti könyvtára az aktuális könyvtár legyen, ezután pedig mindig az előző állapot jelenjen meg! a Kilép gombra csukjuk be a keretet! Programozási technológia (Java) - III. / 23

24 :FileChooserTest (ActionListener) btvalaszt (ActionEvent) import javax.swing.*; import javax.swing.filechooser.filefilter; import java.awt.*; import java.awt.event.*; import java.io.*; btkilep (ActionEvent) :JDialog Programozási technológia (Java) - III. / 24

25 class JavaFilter extends FileFilter { public boolean accept(file f) { return f.getname().touppercase().endswith(".java") f.isdirectory(); public String getdescription() { return "Java fájlok"; Programozási technológia (Java) - III. / 25

26 public class FileChooserTest extends JFrame implements ActionListener { private Container cp = getcontentpane(); private JTextField tfdir, tffile; private JButton btvalaszt, btkilep; private JFileChooser fc = new JFileChooser(); public FileChooserTest() { setlocation(200,100); setdefaultcloseoperation(exit_on_close); fc.setcurrentdirectory(new File(".")); fc.setfilefilter(new JavaFilter()); Programozási technológia (Java) - III. / 26

27 JPanel pninfo = new JPanel(); pninfo.add(new JLabel("Könyvtár: ")); pninfo.add(tfdir = new JTextField(40)); pninfo.add(new JLabel("Fájlnév: ")); pninfo.add(tffile = new JTextField(15)); tfdir.setenabled(false); tffile.setenabled(false); cp.add(pninfo); JPanel pngombok = new JPanel(); pngombok.add(btvalaszt = new JButton("Választ")); pngombok.add(btkilep= new JButton("Kilép")); cp.add(pngombok, BorderLayout.SOUTH); Programozási technológia (Java) - III. / 27

28 btvalaszt.addactionlistener(this); btkilep.addactionlistener(this); pack(); show(); void update() { File sf = fc.getselectedfile(); if (sf!= null) { tfdir.settext(fc.getcurrentdirectory().getabsolutepath()); tffile.settext(sf.getname()); settitle(sf.getabsolutepath()); Programozási technológia (Java) - III. / 28

29 public void actionperformed(actionevent e) { if (e.getsource()==btvalaszt) { if (fc.showopendialog(this)== JFileChooser.APPROVE_OPTION) { update(); else if (e.getsource()==btkilep) System.exit(0); public static void main(string[] args) { new FileChooserTest(); // FileChooserTest Programozási technológia (Java) - III. / 29

30 14. Folyamok 1. A folyam fogalma 2. Bájtfolyam 3. Karakterfolyam, szöveges állomány 4. Adatfolyam 5. Pufferező folyam 6. Objektumfolyam Programozási technológia (Java) - III. / 30

31 java.lang.object +--File +--FilenameFilter +--InputStream +--ByteArrayInputStream +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 31 java.lang.object +--Reader +--InputStreamReader +--FileReader +--BufferedReader +--Writer +--OutputStreamWriter +--FileWriter +--PrintWriter +--BufferedWriter DataInput DataOutput +--RandomAccessFile java.io csomag

32 Programozási technológia (Java) - III. / 32 A folyam fogalma Folyam (stream): objektum, amely egy célhelyre adatokat képes sorosan írni, ill. egy forráshelyről sorosan olvasni Folyamok osztályzása (feldolgozott elemek típusa szerint) Bájtfolyam (byte stream) Karakterfolyam (character stream) Adatfolyam (data stream) Objektumfolyam (object stream) Folyamok osztályzása (adatfeldolgozás iránya szerint) Beviteli folyam (input stream) Kiviteli folyam (output stream)

33 Fogalmak Folyam mutatója Forráshely, célhely Fizikai hely (pl. fájl, konzol, billentyűzet, nyomtató) vagy másik folyam Megadása: létrehozáskor (konstr. paramétereként) Szűrőfolyam (filter stream) Folyamok összekapcsolásánál használjuk Továbbító, szűrő szerepet játszik Szűrők ősosztályai: FilterInputStream, FilterOutputStream Szűrőfajták Pufferelés: Buffered... Konverzió: Data... Programozási technológia (Java) - III. / 33

34 Példa Kiviteli folyamlánc dos:dataoutputstream FileOutputStream Program, memória 12.4 dos.writedouble(12.4) true Tároló adatok.dat 'é' c=dis.readchar() Programozási technológia (Java) - III. / 34 dis:datainputstream FileInputStream Beviteli folyamlánc

35 Példa (folyt.) DataOutputStream dos = new DataOutputStream( new FileOutputStream("adatok.dat")); dos.writedouble(12.4); dos.writeboolean(true); dos.writechar('é'); dos.close(); DataInputStream dis = new DataInputStream( new FileInputStream("adatok.dat")); double d = dis.readdouble(); // 12.4 boolean b = dis.readboolean(); // true char c = dis.readchar(); // 'é' dis.close(); Programozási technológia (Java) - III. / 35

36 Bájtfolyam (byte stream) Írás/olvasás egysége: bájt (0..255) Minden adatsorozat feldolgozható bájtfolyamként Absztrakt ősei: InputStream, OutputStream Állományból olvasó bájtfolyam: FileInputStream Állományba író bájtfolyam: FileOutputStream Programozási technológia (Java) - III. / 36

37 java.lang.object +--InputStream +--ByteArrayInputStream Bájtfolyamok +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 37

38 InputStream Összes beviteli bájtfolyam absztrakt őse Metódusok abstract int read() throws IOException int read(byte[] b) throws IOException int read(byte[] b, int off, int len) throws IOException int available() throws IOException long skip(long n) throws IOException void close() throws IOException Programozási technológia (Java) - III. / 38

39 OutputStream Összes kiviteli bájtfolyam absztrakt őse Metódusok abstract void write(int b) throws IOException void write(byte[] b) throws IOException void write(byte[] b, int off, int len) throws IOException void flush() throws IOException void close() throws IOException Programozási technológia (Java) - III. / 39

40 FileInputStream - állományból olvasó bájtfolyam FileInputStream +FileInputStream(name: String) {FileNotFoundException +FileInputStream(file: File) {FileNotFoundException +read():int {IOException +read(b: byte[]): int {IOException +read(b: byte[], off: int, len: int): int {IOException +available(): int {IOException +skip(n: long): long {IOException +close() {IOException... Programozási technológia (Java) - III. / 40

41 FileOutputStream - állományba író bájtfolyam FileOutputStream +FileOutputStream(name: String) {FileNotFoundException +FileOutputStream(file: File) {FileNotFoundException +FileOutputStream(name: String, append: boolean) {FileNotFoundException +write(b: int):int {IOException +write(b: byte[]):int {IOException +write(b: byte[], off: int, len: int):int {IOException +flush() {IOException +close() {IOException... Programozási technológia (Java) - III. / 41

42 Feladat CopyFile Másoljunk át egy megadott állományt ugyanabba a könyvtárba, egy másik állományba; az újabb állomány neve csak annyiban térjen el az eredetiétől, hogy a kiterjesztése előtt legyen egy ~ karakter! import java.io.*; 1. megoldás bevitel és kivitel bájtonként public class CopyFile1 { public static void main (String args[]) { String fsource = "c:/javaprog/work/proba/app.java"; String fdest; int index = fsource.lastindexof('.'); fdest = fsource.substring(0,index) + Programozási technológia (Java) - III. / 42 ".~"+fsource.substring(index+1);

43 try { FileInputStream in = new FileInputStream(fSource); FileOutputStream out = new FileOutputStream(fDest); int b; while ((b = in.read())!= -1) { out.write(b); in.close(); out.close(); catch (IOException e) { System.out.println(e.getMessage()); // main // CopyFile1 Programozási technológia (Java) - III. / 43

44 2. megoldás bevitel és kivitel egy adagban byte[ ] bajttomb = new byte[in.available()]; in.read(bajttomb); out.write(bajttomb); 3. megoldás biztonságos lezárás FileInputStream in = null; FileOutputStream out = null; try { in = new FileInputStream(fSource); out = new FileOutputStream(fDest); byte[ ] bajttomb = new byte[in.available()]; in.read(bajttomb); out.write(bajttomb); Programozási technológia (Java) - III. / 44

45 catch (IOException e) { System.out.println(e.getMessage()); finally { try { if (in!= null) in.close(); if (out!= null) out.close(); catch (IOException e) { System.out.println(e.getMessage()); Programozási technológia (Java) - III. / 45

46 Karakterfolyam (character stream) Írás/olvasás egysége: unikód karakter (2 bájt) Szöveges állományok feldolgozására szokás használni Absztrakt ősei: Reader, Writer Pl.: FileReader, FileWriter java.lang.object +--Reader +--InputStreamReader +--FileReader +--BufferedReader +--Writer +--OutputStreamWriter +--FileWriter +--PrintWriter +--BufferedWriter Programozási technológia (Java) - III. / 46 Karakterfolyamok

47 Programozási technológia (Java) - III. / 47 Reader Összes beviteli karakterfolyam absztrakt őse Metódusok int read() throws IOException int read(char[] cbuf) throws IOException abstract int read(char[] cbuf,int off, int len) throws IOException boolean ready() throws IOException long skip(long n) throws IOException abstract void close() throws IOException

48 Programozási technológia (Java) - III. / 48 Writer Összes kiviteli karakterfolyam absztrakt őse Metódusok void write(int c) throws IOException void write(char[] cbuf) throws IOException abstract void write(char[] cbuf, int off, int len) throws IOException void write(string str) throws IOException void write(string str, int off, int len) throws IOException abstract void flush() throws IOException abstract void close() throws IOException

49 Szöveges állomány Csak olvasható karaktereket tartalmazó állomány Sorokból áll, a sorok pedig karakterekből Soros szervezésű Logikai szerkezet Állománymutató sor vége jel állomány vége jel E L S Ő <EOLN> 2 <EOLN> U T O L S Ó <EOLN> <EOF> Fizikai szerkezet (Windowsban) E L S Ő #13#10 2 #13#10 U T O L S Ó #13#10 #26 Programozási technológia (Java) - III. / 49

50 Szöveges állomány (folyt.) Állományból olvasó karakterfolyam: FileReader Állományba író karakterfolyam: FileWriter Karakterkódolás A szöveges állomány tárolásának módja az operációs rendszer karakterkódolási szabványától függ Lemezen tárolt karakter és a Java karakterei között kódolás/dekódolás: InputStreamReader, OutputStreamWriter Programozási technológia (Java) - III. / 50

51 FileReader - állományból olvasó karakterfolyam FileReader +FileReader(fileName: String) {FileNotFoundException +FileReader(file: File) {FileNotFoundException +read():int {IOException +read(cbuf: char[]):int {IOException +read(cbuf: char[], off: int, len: int):int {IOException +ready():boolean {IOException +skip(n: long):long {IOException +close() {IOException... Programozási technológia (Java) - III. / 51

52 FileWriter - állományba író karakterfolyam Programozási technológia (Java) - III. / 52 FileWriter +FileWriter(fileName: String) {FileNotFoundException +FileWriter(file: File) {FileNotFoundException +FileWriter(fileName: String, append:boolean) {FileNotFoundException +write(c: int) {IOException +write(cbuf: char[]) {IOException +write(cbuf: char[], off: int, len: int) {IOException +write(str: String) {IOException +write(str: String, off: int, len: int) {IOException +flush() {IOException +close() {IOException...

53 Feladat AppendAndList Készítsen egy programot, amellyel egy szöveges állományt lehet bővíteni (első alkalommal létrehozni), majd a konzolra kilistázni! Bővítéskor konzolról viszünk fel sorokat - végjel az üres szöveg. A szöveges állomány legyen a work/szoveg.txt! import java.io.*; import extra.console; public class AppendAndList { private String path; public AppendAndList(String path) { this.path = path; appendtext(); listtext(); Programozási technológia (Java) - III. / 53

54 void appendtext() { try { FileWriter fw = new FileWriter(path,true); String line; while (!(line = Console.readLine()).equals("")) { fw.write(line+"\r\n"); fw.close(); catch (IOException ex) { System.out.println(ex); Programozási technológia (Java) - III. / 54

55 void listtext() { try { FileReader fr = new FileReader(path); System.out.println("Lista:"); while (fr.ready()) System.out.print((char)fr.read()); fr.close(); catch (IOException ex) { System.out.println(ex); public static void main (String args[]) { new AppendAndList("work/Szoveg.txt"); // main // AppendAndList Programozási technológia (Java) - III. / 55

56 Programozási technológia (Java) - III. / 56 PrintWriter print és println metódusokat definiál az adatok olvasható formában kerülnek ki a karakterfolyamra PrintStream PrintWriter-hez hasonló, de elavult System.out és System.err szabványos eszközök osztálya Példa (szöveges állomány írása formázva): PrintWriter writer = new PrintWriter(new FileWriter("print.txt")); writer.println("double: "+12.78); writer.print('a'); writer.println(new Integer(66)); writer.close();

57 Programozási technológia (Java) - III. / 57 Adatfolyam (data stream) Írás/olvasás egysége: primitív adat vagy String Szűrő bájtfolyam: primitív adat / String bájt konverzió Pl.: DataInputStream, DataOutputStream DataInput, DataOutput interfészek primitív adat és String írása / olvasása primitív adat / String bájt konverzió FilterInputStream, FilterOutputStream Szűrőfolyamok ősosztályai

58 java.lang.object +--InputStream +--ByteArrayInputStream Bájtfolyamok +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 58

59 DataInput interfész (bájt primitív adat / String) boolean readboolean() throws IOException byte readbyte() throws IOException String readline() throws IOException String readutf() throws IOException DataOutput interfész (primitív adat / String bájt) void write(int b) throws IOException void write(byte[] b) throws IOException void write(byte[] b, int off, int len) throws IOException void writeboolean(boolean v) throws IOException void writebyte(int v) throws IOException void writebytes(string s) throws IOException void writechars(string s) throws IOException void writeutf(string s) throws IOException Programozási technológia (Java) - III. / 59

60 DataInputStream Beviteli szűrő adatfolyam Csak egy másik bájtfolyamból tud olvasni bájt primitív adat / String konverzió Konstruktor: DataInputStream(InputStream in) DataOutputStream Kiviteli szűrő adatfolyam Csak egy másik bájtfolyamba tud írni primitív adat / String bájt konverzió Konstruktor: DataOutputStream(OutputStream out) Programozási technológia (Java) - III. / 60

61 Feladat Egész számok írása, olvasása (SzamIrOlvas) Kérjünk be a felhasználótól int típusú értékeket, és írjuk fel őket egy állományba! Ezután listázzuk ki az egészeket a konzolra és vele párhuzamosan egy szöveges állományba is! import java.io.*; import extra.console; public class SzamIrOlvas { static void felvisz(string filename) { try { int szam = 0; System.out.println("Egesz szamok felvitele. Vegjel: -1"); DataOutputStream szamok=new DataOutputStream( Programozási technológia (Java) - III. / 61 new FileOutputStream(fileName+".dat"));

62 while ((szam=console.readint())!= -1) szamok.writeint(szam); szamok.close(); catch (IOException e) { System.out.println(e.getMessage()); static void listaz(string filename) { DataInputStream szamok = null; PrintWriter lista = null; int szam = 0; Programozási technológia (Java) - III. / 62

63 try { szamok = new DataInputStream( new FileInputStream(fileName+".dat")); lista = new PrintWriter( new FileOutputStream(fileName+".txt")); while (true) { szam = szamok.readint(); System.out.print(szam+" "); lista.print(szam+" "); catch (EOFException e) { catch (IOException e) { System.out.println(e.getMessage()); Programozási technológia (Java) - III. / 63

64 finally { try { szamok.close(); lista.close(); catch(ioexception e) { // listaz public static void main (String[] args) { String fnev="work/egeszek"; felvisz(fnev); listaz(fnev); // SzamIrOlvas Programozási technológia (Java) - III. / 64

65 Programozási technológia (Java) - III. / 65 Pufferező folyam Memória és egy külső erőforrás (pl. fájl) között az író/olvasó műveletek számát csökkenti BufferedInputStream, BufferedOutputStream Bájtfolyamot pufferező beviteli/kiviteli szűrőfolyam Konstruktorok BufferedInputStream(InputStream in) BufferedInputStream(InputStream in, int size) BufferedOutputStream(OutputStream out) BufferedOutputStream(OutputStream out, int size) BufferedReader, BufferedWriter Karakterfolyamot pufferező beviteli/kiviteli folyam Konstruktorok BufferedReader(Reader in) BufferedReader(Reader in, int size) BufferedWriter(Writer out) BufferedWriter(Writer out, int size)

66 java.lang.object +--File +--FilenameFilter +--InputStream +--ByteArrayInputStream +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 66 java.lang.object +--Reader +--InputStreamReader +--FileReader +--BufferedReader +--Writer +--OutputStreamWriter +--FileWriter +--PrintWriter +--BufferedWriter DataInput DataOutput +--RandomAccessFile java.io csomag

67 Példa Program (memória) 12 'a' 5.2F t os3: DataOutputStream writeint(int) is3: DataInputStream readint() os2: BufferedOutputStream write(byte) is2: BufferedInputStream read(byte) os1: FileOutputStream write(block) is1: FileInputStream read(block) Fájl: adatok.dat Programozási technológia (Java) - III. / 67

68 Példa (folyt.) Adatok kírása FileOutputStream os1 = new FileOutputStream("adatok.dat"); BufferedOutputStream os2 = new BufferedOutputStream(os1); DataOutputStream os3 = new DataOutputStream(os2); /* Szebben: DataOutputStream os3 = new DataOutputStream(new BufferedOutputStream(new FileOutputStream("adatok.dat"))); */ os3.writeint(12); os3.writechar('a'); os3.writefloat(5.2f); os3.writeboolean(true); os3.close(); Programozási technológia (Java) - III. / 68

69 Példa (folyt.) Adatok visszaolvasása FileInputStream is1 = new FileInputStream(fájl); BufferedInputStream is2 = new BufferedInputStream(is1); DataInputStream is3 = new DataInputStream(is2); /* Szebben: DataInputStream is3 = new DataInputStream(new BufferedInputStream(new FileInputStream("adatok.dat"))); */ int i = is3.readint(); char c = is3.readchar(); float f = is3.readfloat(); boolean b = is3.readboolean(); is3.close(); Programozási technológia (Java) - III. / 69

70 Objektumfolyam (object stream) Írás/olvasás egysége: primitív adat vagy szerializálható objektum Szerializáció Objektum bájtfolyam Előnye: objektumok perzisztensen eltárolhatók Írás objektum bájtfolyam ObjectOutputStream Olvasás bájtfolyam objektum ObjectInputStream Programozási technológia (Java) - III. / 70

71 java.lang.object +--InputStream +--ByteArrayInputStream Bájtfolyamok +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 71

72 ObjectOutputStream OutputStream DataOutput ObjectOutput +writeobject(o:object) {IOException ObjectOutputStream +ObjectOutputStream(out:OutputStream) {IOEx. +writeobject(obj:object) {IOEx., pl.:notserializableexception +writeboolean(b:boolean) {IOException +writebyte(b:byte) {IOException +writechar(c:char) {IOException +writeint(i: int) {IOException... +close() {IOException... Programozási technológia (Java) - III. / 72

73 ObjectInputStream InputStream DataInput ObjectInput +readobject():object {IOException, ClassNotFoundException ObjectInputStream +ObjectInputStream(in:InputStream) {IOEx. +readobject():object {IOEx., ClassNotFoundException +readboolean():boolean {IOEx. +readbyte():byte {IOEx. +readchar():char {IOEx. +readint():int {IOEx.... +close() {IOEx.... Programozási technológia (Java) - III. / 73

74 Egy objektum szerializálásának szabályai Az objektum osztályának implementálnia kell a Serializable jelölő interfészt Szerializálás deklarálás sorrendjében minden objektum csak egyszer kerül tárolásra java.io.notserializableexception keletkezhet Szerializáláskor a bájtfolyamra kerülő adatok: osztály azonosításához: osztály neve, azonosítója, objektum adatai(kivéve static és transient adatok) Visszatöltéskor az objektum állapota ugyanaz lesz, mint kimentéskor volt Visszaolvasás ugyanolyan sorrendben, mint kiíráskor java.lang.classnotfoundexception keletkezhet Alapértelmezett szerializáló mechanizmus Programozási technológia (Java) - III. / 74

75 Feladat Objektumok elmentése és visszaolvasása (ObjectStreamDemo) Írjunk ki egy "work/objektumok.dat" állományba két String-objektumot, egy primitív egész számot, és egy saját, MyClass osztályú objektumot. Olvassuk vissza az állomány tartalmát! Programozási technológia (Java) - III. / 75

76 Serializable... String tostring():string... n: int MyClass tostring():string s1:string s2:string i:int obj:myclass Rolád Roland Telivér Olivér objektumok.dat Programozási technológia (Java) - III. / 76

77 import java.io.*; class MyClass implements Serializable { int n=67; public String tostring() { return Integer.toString(n); Programozási technológia (Java) - III. / 77

78 public class ObjStreamDemo { static void letrehoz() { try { ObjectOutputStream out = new ObjectOutputStream( new FileOutputStream("work/objektumok.dat")); out.writeobject(new String("Rolád Roland")); out.writeobject(new String("Telivér Olivér")); out.writeint(54321); out.writeobject(new MyClass()); out.close(); catch (FileNotFoundException ex) { System.out.println("Az állományt nem lehet létrehozni!"); Programozási technológia (Java) - III. / 78

79 catch (IOException ex) { System.out.println("I/O hiba! "+ex); static void listaz() { try { ObjectInputStream in = new ObjectInputStream( new FileInputStream("work/objektumok.dat")); String s1 = (String) in.readobject(); String s2 = (String) in.readobject(); int i = in.readint(); MyClass obj = (MyClass) in.readobject(); in.close(); System.out.println(s1+" "+s2+" "+i+" "+obj); Programozási technológia (Java) - III. / 79

80 catch (FileNotFoundException ex) { System.out.println("Nincs ilyen állomány!"); catch (ClassNotFoundException ex) { System.out.println("Rossz osztály!"); catch (IOException ex) { System.out.println("I/O hiba! "+ex); public static void main(string[] args) { letrehoz(); listaz(); Programozási technológia (Java) - III. / 80

81 15. Közvetlen hozzáférésű állomány 1. Állományszervezési és -hozzáférési módok 2. A RandomAccessFile osztály Programozási technológia (Java) - III. / 81

82 Állományhozzáférési (elérési) módok Soros hozzáférés Szekvenciális hozzáférés Közvetlen hozzáférés Állományszervezési módok Soros szervezés (Pl.: folyamok) Közvetlen szervezés (Pl.: RandomAccessFile) Véletlen (hasító) szervezés Indexelt szekvenciális szervezés Programozási technológia (Java) - III. / 82

83 RandomAccessFile osztály Közvetlen hozzáférésű állomány Írható és olvasható egyszerre Írás/olvasás egysége: bájt, primitív adat vagy String (tetszőleges objektum nem lehet!) Állománymutató (állománypozíció, file pointer) Értéke: állomány elejétől számított bájtsorszám Lekérdezhető, beállítható Olvasó, író utasítások állítják Programozási technológia (Java) - III. / 83

84 java.lang.object +--File +--FilenameFilter +--InputStream +--ByteArrayInputStream +--FileInputStream +--FilterInputStream +--DataInputStream DataInput +--BufferedInputStream ObjectInputStream ObjectInput OutputStream +--ByteArrayOutputStream +--FileOutputStream +--FilterOutputStream +--DataOutputStream DataOutput +--BufferedOutputStream +--PrintStream ObjectOutputStream ObjectOutput... Programozási technológia (Java) - III. / 84 java.lang.object +--Reader +--InputStreamReader +--FileReader +--BufferedReader +--Writer +--OutputStreamWriter +--FileWriter +--PrintWriter +--BufferedWriter DataInput DataOutput +--RandomAccessFile java.io csomag

85 Példa adatok.dat Fájlmutató E l e j e X V é readchar() ch X RandomAccessFile raf = new RandomAccessFile("adatok.dat","rw"); raf.writechars("elejex1908vege"); long hossz = raf.length(); // hossz==28 raf.seek(10); char ch = raf.readchar(); // ch=='x' raf.writechar(ch); long poz = raf.getfilepointer(); // poz==14 Programozási technológia (Java) - III. / 85 X writechar(ch) g e

86 Konstruktorok RandomAccessFile(String name, String mode) throws FileNotFoundException RandomAccessFile(File file, String mode) throws FileNotFoundException mode: "r" vagy "rw" Metódusok long getfilepointer() throws IOException void seek(long pos) throws IOException int skipbytes(int n) throws IOException long length() throws IOException void setlength(long newlength) throws IOException Programozási technológia (Java) - III. / 86

87 Metódusok int read() throws IOException, EOFException boolean readboolean() throws IOException String readline() throws IOException String readutf() throws IOException void write(int b) throws IOException void writeboolean(boolean v) throws IOException void writebytes(string s) throws IOException void writechars(string s) throws IOException void writeutf(string s) throws IOException void close() throws IOException Programozási technológia (Java) - III. / 87

88 Feladat Hőmérsékletek A hónap minden napján délben egytized fok pontossággal megmérjük a levegő hőmérsékletét. Vigyük fel az adatokat egy HaviHomers.dat állományba! Ezután listázzuk ki az állományt, és írjuk ki a havi átlaghőmérsékletet! Kérdezhesse meg a felhasználó, hogy melyik napon mekkora volt a hőmérséklet! Ha rossz napot üt be, akkor írjuk ki, hogy "Nem jó nap!"; ha nullát üt be, akkor fejezzük be a programot! A hőmérsékletadatok a program befejezése után se vesszenek el! Programozási technológia (Java) - III. / 88

89 public class Homersekletek { static void felvisz() { try { DataOutputStream havihom = new DataOutputStream( new FileOutputStream("work/HaviHomers.dat")); for (int i=0; i<31; i++) { double hom = (int)(math.random()*100)/ ; havihom.writedouble(hom); havihom.close(); catch (IOException ex) { System.out.println(ex); // felvisz Programozási technológia (Java) - III. / 89

90 static void kerdez() { try { RandomAccessFile havihom = new RandomAccessFile("work/HaviHomers.dat","r"); System.out.println("Hőmérsékletek a hónapban"); int i=0; double osszeg = 0; try { while (true) { double hom = havihom.readdouble(); i++; osszeg += hom; if (i%8==0) System.out.println(); System.out.print(i+": "+hom+"\t"); // while Programozási technológia (Java) - III. / 90

91 catch (EOFException ex) { System.out.println("\nÁtlaghőmérséklet 2 tizedesre: "+ ((int)(osszeg/31*100)/100.0)); System.out.println("\n\nKérdezzen 0 végjelig!"); long poz; while ((poz = Console.readInt("\nNap: "))!= 0) { try { havihom.seek(8*(poz-1)); System.out.println(havihom.readDouble()); catch (IOException e) { System.out.println("Nem jó nap!"); // while Programozási technológia (Java) - III. / 91

92 havihom.close(); // külső try catch (IOException ex) { System.out.println(ex); // kerdez public static void main(string[] args) { felvisz(); kerdez(); // Homersekletek Programozási technológia (Java) - III. / 92

JAVA PROGRAMOZÁS 7.ELŐADÁS

JAVA PROGRAMOZÁS 7.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 7.ELŐADÁS 2014-2015 tavasz Állománykezelés 2 Állományok, bejegyzések 3 A java.io csomag Útvonalak 4 Absztrakt / valódi útvonal A valódi útvonal

Részletesebben

Java programozási nyelv 10. rész Input/output kezelés

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

Részletesebben

JAVA ALKALMAZÁSOK 5. ELŐADÁS 1/9/2017 1

JAVA ALKALMAZÁSOK 5. ELŐADÁS 1/9/2017 1 JAVA ALKALMAZÁSOK 5. ELŐADÁS 1/9/2017 1 TARTALOM Input/Output oadatfolyamok ofájlkezelés okonzol 1/9/2017 2 Input/Output, adatfolyamok 1/9/2017 3 INPUT/OUTPUT Szinte minden alkalmazás használ valamilyen

Részletesebben

JAVA PROGRAMOZÁS 8.ELŐADÁS

JAVA PROGRAMOZÁS 8.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 8.ELŐADÁS 2014-2015 tavasz Véletlen elérésű állományok; JDBC 2 Véletlen elérésű állományok A RandomAccessFile osztály 3 Közvetlen hozzáférésű

Részletesebben

Java programozási nyelv

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

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java 9. gyakorlat Fájlkezelés A fájlkezelés Java-ban különböző osztályok összekapcsolásával történik. Minden egyes osztály valamilyen minimális szolgáltatást tesz hozzá a többihez.

Részletesebben

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés

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

Részletesebben

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia

Részletesebben

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

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

Részletesebben

TCP/IP kapcsolat Java nyelven

TCP/IP kapcsolat Java nyelven Java programozási nyelv 2007-2008/ősz 5. óra TCP/IP kapcsolat Java nyelven Java streamek, szűrők, java.io TCP/IP alapú kommunikáció Egyszerű protokoll tervezése legradi.gabor@nik.bmf.hu szenasi.sandor@nik.bmf.hu

Részletesebben

Reader /Writer InputStreamReader, OutputStreamWriter

Reader /Writer InputStreamReader, OutputStreamWriter 9. gyakorlat Input, output A Java adatfolyamokkal dolgozik (stream). [Ez olyan objektum, ahova tesszük vagy kapjuk az adatot úgy, hogy nem kell foglalkozunk a file-al, hálózattal,stb.] 2 típusa van: InputStream

Részletesebben

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 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.

Részletesebben

Java Programozás 9. Ea: Java fájlkezelés. Sztrímtan

Java Programozás 9. Ea: Java fájlkezelés. Sztrímtan Java Programozás 9. Ea: Java fájlkezelés Sztrímtan 148/1 B ITv: MAN 2018.02.05 Java fájlkezelés A Java nyelvben a fájlkezelés Stream-eken keresztül valósul meg Stream: adatok sorozata, egyik végén befelé

Részletesebben

Programozási technológia

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

Részletesebben

Be- és kimenet kezelése

Be- és kimenet kezelése Be- és kimenet kezelése A legelső program Üdvözlő szöveg kiírása a képernyőre class Hello { public static void main( String args[] ){ System.out.println("Hello World!"); } } Hogyan használjunk fájlokat?

Részletesebben

Osztályszintű elérés, kivételkezelés, fájlkezelés

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

Részletesebben

Java Programozás 3. Gy: Java GUI. Swing, AWT

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

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Grafikus felhasználói felület Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni awt,,heavy weight"

Részletesebben

Abstract osztályok és interface-ek. 7-dik gyakorlat

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,

Részletesebben

Programozási nyelvek II.: JAVA

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

Részletesebben

Az új be- és kimenet könyvtár

Az új be- és kimenet könyvtár 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

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

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ő

Részletesebben

Java gyakorlat feladatai e s megolda sai (2014.04.10)

Java gyakorlat feladatai e s megolda sai (2014.04.10) Java gyakorlat feladatai e s megolda sai (2014.04.10) 1. Feladat Számítsuk ki a Fibonacci sorozat első 20 tagját! / Fibonacci számsorozat tagjait kiszámoló, egyetlen osztályból álló program @author Bence

Részletesebben

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 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

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

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

Részletesebben

Grafikus felhasználói felületek. Dr. Szendrei Rudolf Informatikai Kar Eötvös Loránd Tudományegyetem. Programozási technológia I. Dr.

Grafikus felhasználói felületek. Dr. Szendrei Rudolf Informatikai Kar Eötvös Loránd Tudományegyetem. Programozási technológia I. Dr. Programozási Grafikus Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni awt: heavy weight" komponensek swing:

Részletesebben

Java Programozás 11. Ea: MVC modell

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

Részletesebben

Kivételkezelés, naplózás. Exception handling, logging

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

Részletesebben

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

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,

Részletesebben

A Java nyelv. Dialógus ablakok. Elek Tibor

A Java nyelv. Dialógus ablakok. Elek Tibor A Java nyelv Dialógus ablakok Elek Tibor Dialógus ablakok Szerepe: felbukkanó ablak (üzenet, input) Felépítése, használata majdnem ua., mint JFrame Tulajdonos: lehet tulajdonosa, amellyel együtt ikonizálódik,

Részletesebben

Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később).

Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később). Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később). Mi hogyan használjuk? awt: eseménykezelés,

Részletesebben

Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész

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

Részletesebben

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás - Pál László 12. ELŐADÁS Állomány-kezelés 2 Objektumorientált programozás - Pál László Mi a

Részletesebben

Programozási nyelvek Java

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

Részletesebben

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 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

Részletesebben

Java Programozás 7. Gy: Java alapok. Adatkezelő 3.rész

Java Programozás 7. Gy: Java alapok. Adatkezelő 3.rész Java Programozás 7. Gy: Java alapok Adatkezelő 3.rész 39/1 B ITv: MAN 2018.04.11 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki az Új dolgozó felvitele panelt - A panel a Beszúr

Részletesebben

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java

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:

Részletesebben

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?

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

Részletesebben

Dr. Iszály György Barna

Dr. Iszály György Barna Dr. Iszály György Barna Ember központú tervezés Cél:... Az emberek a kívánt műveleteket, szolgáltatásokat, és támogató feladatokat minimális stressz mellett maximális hatékonysággal végezhetik el". Három

Részletesebben

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 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

Részletesebben

7. K: JAVA alapok Konzultáció

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

Részletesebben

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 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

Részletesebben

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. 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

Részletesebben

Java programozási nyelv 4. rész Osztályok II.

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

Részletesebben

Input Output Műveletek

Input Output Műveletek Input Output Műveletek Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Input Output Műveletek 2013 1 / 30 Tartalom jegyzék 1 I/O Osztályok File rendszer megvalósítás File rendszer módosítás,

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 35

Bánsághi Anna 2014 Bánsághi Anna 1 of 35 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 4. ELŐADÁS - ADATFOLYAMOK KEZELÉSE 2014 Bánsághi Anna 1 of 35 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

Informatika terméktervezőknek

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

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java 2. gyakorlat Függvények Általános prototípus Módosítószavak Láthatóság: public, protected, private. Ha nem definiált, akkor úgynevezett package-private láthatóság. Lehet abstract

Részletesebben

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é 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

Részletesebben

OOP: Java 8.Gy: Abstract osztályok, interfészek

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

Részletesebben

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22 Szerializáció Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) Szerializáció 2014 1 / 22 Tartalomjegyzék 1 Szerializációs Alapfogalmak 2 Szerializációs Megoldások Object Szerializáció XML

Részletesebben

Szoftvertechnológia alapjai Java előadások

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

Részletesebben

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

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

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Folyamok kezelése Fájlok írása/olvasása Folyamok kezelése Szabvány folyamok Eddig Kiírás a szöveges konzolra:

Részletesebben

Programozási nyelvek JAVA EA+GY 1. gyakolat

Programozási nyelvek JAVA EA+GY 1. gyakolat Programozási nyelvek JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2018/2019. tavaszi félév Tartalom 1 A Java alapjai 2 Java program

Részletesebben

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor

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

Részletesebben

és az instanceof operátor

és az instanceof operátor Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

ZH mintapélda. Feladat. Felület

ZH mintapélda. Feladat. Felület ZH mintapélda Feladat Írjon Java alkalmazást, amely képes hallgatók rekordjaittárolni és azokat különbözo rendezo kulcsok szerint sorba rendezni. A program grafikus felhasználói felületén keresztül új

Részletesebben

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 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

Részletesebben

Szoftvertechnológia alapjai Java előadások

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?

Részletesebben

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Java. Perzisztencia. ANTAL Margit. Java Persistence API. Object Relational Mapping. Perzisztencia. Entity components. ANTAL Margit.

Java. Perzisztencia. ANTAL Margit. Java Persistence API. Object Relational Mapping. Perzisztencia. Entity components. ANTAL Margit. Sapientia - EMTE 2008 Az előadás célja JPA - - perzisztencia ORM - - Objektumrelációs leképzés - Entitásbabok Állandóság Mechanizmus amely során az alkalmazás adatai megőrzésre kerülnek valamely perzisztens

Részletesebben

ANDROID ALKALMAZÁSFEJLESZTÉS

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

Részletesebben

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

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

Részletesebben

Dinamikus adatszerkezetek. 2D generikus tömb: C++ 2D generikus tömb: C++

Dinamikus adatszerkezetek. 2D generikus tömb: C++ 2D generikus tömb: C++ Dinamikus adatszerkezetek 2D generikus tömb: C++ template class CArray2D protected: TYPE **m_array; long m_row, m_col; public: CArray2D(long row, long col) // konstruktor m_array = new TYPE*[row];

Részletesebben

Dinamikus adatszerkezetek. 2D generikus tömb: C++ 2D generikus tömb: C++ 2D tömb: Java versus C++ 2D tömb: Java.

Dinamikus adatszerkezetek. 2D generikus tömb: C++ 2D generikus tömb: C++ 2D tömb: Java versus C++ 2D tömb: Java. 2D generikus tömb: C++ Dinamikus adatszerkezetek template class CArray2D protected: TYPE **m_array; long m_row, m_col; public: CArray2D(long row, long col) // konstruktor m_array = new TYPE*[row];

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

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

Részletesebben

Grafikus felhasználói felületek. Abstract Window Toolkit, a java.awt és java.awt.event csomagok

Grafikus felhasználói felületek. Abstract Window Toolkit, a java.awt és java.awt.event csomagok Grafikus felhasználói felületek készítése és eseménykezelés Java-ban Abstract Window Toolkit, a java.awt és java.awt.event csomagok Abstract Window Toolkit Absztraktizálás: az osztályok és funkcionalitások

Részletesebben

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai

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

Részletesebben

OOP: Java 8.Gy: Gyakorlás

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

Részletesebben

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

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

Részletesebben

PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19

PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 PHP II. WEB technológiák Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 Tartalomjegyzék Objektum Orientált Programozás 1 Objektum Orientált Programozás Öröklődés 2 Fájlkezelés

Részletesebben

Java tutorial. Be- es kimenet kezelese. A legelsoprogram. Hogyan hasznaljunk fajlokat? Bemenet es kimenet absztrakciüja

Java tutorial. Be- es kimenet kezelese. A legelsoprogram. Hogyan hasznaljunk fajlokat? Bemenet es kimenet absztrakciüja Be- es kimenet kezelese A legelsoprogram Ü U dví zloszí veg kiıra sa a kepernyore public static void main( String args[] ){ System.out.println("Hello World!"); Hogyan hasznaljunk fajlokat? Ü Trivialis

Részletesebben

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

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ő

Részletesebben

List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error

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,

Részletesebben

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18 C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi

Részletesebben

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 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ó

Részletesebben

Java Programozás 1. Gy: Java alapok. Ismétlés ++

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

Részletesebben

Java Programozás 5. Gy: Java alapok. Adatkezelő 1.rész

Java Programozás 5. Gy: Java alapok. Adatkezelő 1.rész Java Programozás 5. Gy: Java alapok Adatkezelő 1.rész 27/1 B ITv: MAN 2018.04.13 Feladat Egy nagyon hosszú feladatmegoldásba kezdünk bele: létrehozunk egy adatkezelő programot, sok-sok extrával: 27/2 A

Részletesebben

Java programozási nyelv 5. rész Osztályok III.

Java programozási nyelv 5. rész Osztályok III. Java programozási nyelv 5. rész Osztályok III. 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/20 Tartalomjegyzék

Részletesebben

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*; Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely

Részletesebben

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. 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

Részletesebben

OOP: Java 1.Gy: Java alapok

OOP: Java 1.Gy: Java alapok OOP: Java 1.Gy: Java alapok Eclipse alapok O O P Objektum Orientált Programozás 31/1 B ITv: MAN 2019.02.25 Feladat Írja meg a 4 alapműveletet megvalósító Kalkulátor programot Java nyelven. Az elvégzendő

Részletesebben

Java programozási nyelv 6. rész Java a gyakorlatban

Java programozási nyelv 6. rész Java a gyakorlatban Java programozási nyelv 6. rész Java a gyakorlatban Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. október A Java programozási nyelv Soós Sándor 1/16 Tartalomjegyzék

Részletesebben

Kalapácsvetés 2016 szöveges

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

Részletesebben

Példaprogram - 2. Objektum-orientált programozás Java és C++ nyelven. Példaprogram. Azonosítók. Dr. Rohonczy János. Azonosítók

Példaprogram - 2. Objektum-orientált programozás Java és C++ nyelven. Példaprogram. Azonosítók. Dr. Rohonczy János. Azonosítók Példaprogram - 2 Dr. Rohonczy János Objektum-orientált programozás Java és C++ nyelven Java developer kit elérhetősége http://www.javasoft.com > javac Proba.java > java Proba 4 f = 24.0 ELTE, Általános

Részletesebben

Programozási nyelvek és módszerek Java Thread-ek

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

Részletesebben

Programozás I. Első ZH segédlet

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

Részletesebben

STL gyakorlat C++ Izsó Tamás május 9. Izsó Tamás STL gyakorlat/ 1

STL gyakorlat C++ Izsó Tamás május 9. Izsó Tamás STL gyakorlat/ 1 STL gyakorlat C++ Izsó Tamás 2016. május 9. Izsó Tamás STL gyakorlat/ 1 Komponensek kapcsolata Deklarálja az alábbi osztálydiagramon szereplő osztályok közül az A, AA és AB osztályokat! A konstruktorokat

Részletesebben

Programozási nyelv Java

Programozási nyelv Java Programozási nyelv Java 1. gyakorlat Félév tematikája Bevezetés, alapok Vezérlési szerkezetek Eljárások, függvények Csomagok Tömbök, adatbevitelek Osztályok, objektumok, Interfészek Öröklődés, absztrakt

Részletesebben

BME MOGI Gépészeti informatika 13.

BME MOGI Gépészeti informatika 13. BME MOGI Gépészeti informatika 13. 1. feladat Készítsen alkalmazást, mely elvégzi a következő feladatokat! a. Állítson elő adott intervallumba eső, adott számú véletlen számot, és írja ki a számokat egy

Részletesebben

Java Programozás 8. Gy: Java alapok. Adatkezelő 4.rész

Java Programozás 8. Gy: Java alapok. Adatkezelő 4.rész Java Programozás 8. Gy: Java alapok Adatkezelő 4.rész 37/1 B ITv: MAN 2018.04.15 A feladat Feladat: folytassuk a panel életre keltését! - Készítsük el a Módosítás funkciót - A Lista panelt másoljuk le,

Részletesebben

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók SQL*Plus Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP dolgozó), DEPT osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható táblák táblanév-prefixek:

Részletesebben

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. 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

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java 11.gyakorlat Operációsrendszertől függő tulajdonságok PATH elválasztó Unix ":" Windows ";" final String PATH_SEPARATOR = File.pathSeparator; Ugyanaz, csak karakterkent final char

Részletesebben

A Java nyelv IV. rész - appletek, hálózati alkalmazások fejlesztése

A Java nyelv IV. rész - appletek, hálózati alkalmazások fejlesztése A Java nyelv IV. rész - appletek, hálózati alkalmazások fejlesztése A Java magasfokú objektumorientáltsága következtében egy Java program osztályok és objektumok összefüggő halmazát jelenti. A program

Részletesebben

Objektumorientált programozás C# nyelven III.

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

Részletesebben

Java IX. telkezelés a Java-ban

Java IX. telkezelés a Java-ban Java IX. Kivétel telkezelés a Java-ban Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 11. 17. Java IX. Kivételkezelés JAVA9 / 1 A kivételkezel telkezelés célja Kivételes

Részletesebben

Programozás I. Szöveges fájlok kezelése Felsorolástípus Objektumtömb Gyakorló feladatok

Programozás I. Szöveges fájlok kezelése Felsorolástípus Objektumtömb Gyakorló feladatok Programozás I. Szöveges fájlok kezelése Felsorolástípus Objektumtömb Gyakorló feladatok 1 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

Részletesebben

Nyíregyházi Egyetem Matematika és Informatika Intézete. Fájl rendszer

Nyíregyházi Egyetem Matematika és Informatika Intézete. Fájl rendszer 1 Fájl rendszer Terminológia Fájl és könyvtár (mappa) koncepció Elérési módok Fájlattribútumok Fájlműveletek ----------------------------------------- Könyvtár szerkezet -----------------------------------------

Részletesebben