az objektum

27
1 Komoróczy Tamás ([email protected]) Az objektum

Upload: odina

Post on 15-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Az objektum. Jogi rendelkezések. A következőket teheted a művel: szabadon másolhatod, terjesztheted, bemutathatod és előadhatod a művet származékos műveket (feldolgozásokat) hozhatsz létre Az alábbi feltételekkel:. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Az objektum

1Komoróczy Tamás ([email protected])

Az objektum

Page 2: Az objektum

2Komoróczy Tamás ([email protected])

Jogi rendelkezésekA következőket teheted a művel:szabadon másolhatod, terjesztheted, bemutathatod és

előadhatod a művet származékos műveket (feldolgozásokat) hozhatsz létre Az alábbi feltételekkel:

Jelöld meg!. A szerző vagy a jogosult által meghatározott módon kell megjelölni a művet: Szerző és eredeti elérhetőség

Ne add el!. Ezt a művet nem használhatod fel kereskedelmi célokra.

Nevezd meg! - Ne add el! 2.5 Magyarország

További információ a képre kattinva

Page 3: Az objektum

3Komoróczy Tamás ([email protected])

Az objektum részei

• adatelemek,• szerkezeti összefüggések,• szelekciós műveletek• konstrukciós műveletek

Page 4: Az objektum

4Komoróczy Tamás ([email protected])

Az objektumok 4 fő tulajdonsága

• Az adat és kód egysége• Öröklődés• Polimorfizmus• Zártság

Page 5: Az objektum

5Komoróczy Tamás ([email protected])

Az objektum

• Az objektum egy létező alkatrésze a programnak

• Egy objektum egy terv alapján készül el, ezt a tervet hívjuk osztálynak

Page 6: Az objektum

6Komoróczy Tamás ([email protected])

Adat és kód kombinációja

• Egy objektum adatból és kódból áll

• A kód az objektum függvénye, melyet metódusnak hívunk

• Az adatot, melyeket változókkal írunk le, az objektum egyedváltozóinak, vagy attribútumainak nevezzük (megkülönböztetésül a metódusok saját változóitól)

Page 7: Az objektum

7Komoróczy Tamás ([email protected])

Öröklés• Egy új osztály létrehozásakor

annak alapja lehet egy másik osztály

• Az új osztályban a szülő osztály metódusai és egyedváltozói is használhatóak, az új osztály saját egyedváltozókat és metódusokat is tartalmaz

• Minden objektumnak van szülője a Javaban (Object class)

Page 8: Az objektum

8Komoróczy Tamás ([email protected])

Példák

• pont kör (egy pont és egy sugár)

• gerincesek madarak• gerincesek halak

Page 9: Az objektum

9Komoróczy Tamás ([email protected])

Polimorfizmus

• Egy osztály leszármazottjában a metódust újra lehet definiálni. (AZ EGYEDVÁLTOZÓT NEM!!!)

• Hasonló osztályok, hasonló tulajdonságát, ugyan olyan nevű metódussal kezelhetjük

Page 10: Az objektum

10Komoróczy Tamás ([email protected])

Polimorfizmus példa

• háromszög területe és kör területe objektum orientált programozásban a terulet függvénnyel számítható ki. Pascalban ehhez 2 különböző nevű függvény kell.

• Figyeljük meg, hiába az azonos névű metódus azt az objektum tulajdonságainak megfelelően kell paraméterezni!

Page 11: Az objektum

11Komoróczy Tamás ([email protected])

Zártság

• Az objektumok egyedváltozóinak manipulálása a programban, kizárólag az objektum metódusain keresztül lehetséges.

• Az objektum metódusai tartják a kapcsolatot a külvilág és az objektum között.

Page 12: Az objektum

12Komoróczy Tamás ([email protected])

Vége (objektumok)

Page 13: Az objektum

13Komoróczy Tamás ([email protected])

Első programunk

public class Elso { public static void main( String args[] ) {       System.out.println( "Hello, ez az első Java programunk!" );  }}

Page 14: Az objektum

14Komoróczy Tamás ([email protected])

Megjegyzés

• A G: meghajtón hozzunk létre egy Java mappát munkáinknak

• Egy parancs ablakban dolgozzunk(Start menü – Futtatás - cmd)

• Hozzunk létre egy parancsállományt, melyben az adott parancsablakban az elérési utakat a c:\”program Files”\Java\jdk1.5.0_07\bin mappával bővítjük!path=%path%;c:\”Program Files”\Java\jdk1.5.0_07\bin

• A jdk1.5.0_07 mappa helyére a rendszeren elérhető mappát kell írni!

• Mentsük a parancsállományt el java_env.cmd néven!

Page 15: Az objektum

15Komoróczy Tamás ([email protected])

Mentés-Fordítás-Futtatás

• Mentés az Elso.java nevű állományba– Figyeld meg az elmentett

állomány neve és a public class mögötti név megegyezik!

• Fordítás a javac Elso.java paranccsal• Futtatás ajava Elso paranccsal

Page 16: Az objektum

16Komoróczy Tamás ([email protected])

MegjegyzésHa nem fut az alkalmazásunk

ellenőrizzük le a CLASSPATH környezeti válozót. Ha nem az aktuális könyvtárra mutat állítsuk át!

set CLASSPATH=.Bővítsük ezzel a sorral a

java_env.cmd állományunkat!(Az állomány első sora

célszerűen legyen @echo off !)

Page 17: Az objektum

17Komoróczy Tamás ([email protected])

Megjegyzés a Javaban

• Megjegyzés (comment)– egysoros megjegyzés:

// jeltől a sor végéig

– hosszabb megjegyzés:/*...*/

Feladat: Készítsünk megjegyzést az első programunkban a System.out.printl kezdetű sor végére! Írjuk oda, hogy ez az utasítás egy sort ír ki a képernyőre!

Page 18: Az objektum

18Komoróczy Tamás ([email protected])

Feladat

Készítsünk egy Java programot amely sorra kiírja a nevünket, az iskolánkat és az osztályunkat!

Page 19: Az objektum

19Komoróczy Tamás ([email protected])

Vége (1. gyakorlat)

Page 20: Az objektum

20Komoróczy Tamás ([email protected])

Azonosítók Javaban• Betüvel kezdődik – betűvel vagy

számmal folytatódik• Betűnek számít a $ és az _ jel

valamint az ékezetes magánhangzók is.

• Case-sensitive, azaz különböznek a kis- és nagybetűk

• Az azonosítók hossza nincs korlátozva

• A nyelv kulcsszavai nem lehetnek azonosítók

• Példák:•egészszám, _változó, $dollár, CiklusVáltozó

Page 21: Az objektum

21Komoróczy Tamás ([email protected])

Egyszerű típusok Javaban

egyszerű típus osztály leírásboolean Boolean logikai típus (true, false)char Character 16 bites Unicode karakterbyte Integer 8 bites egész szám (-128 - +127)short Integer 16 bit, (-32 768 - +32 767)int Integer 32 bit (-2 147 483 648 - +2 147 483 647)long Long 64 bit (-9 223 372 036 854 775 808 - +...)float Float 32 bit (-3,40292347E+38 - +3,40292347E+38)double Double 64 bit (-1,79769313486231570E+308 - +...)

egyszerű típus osztály leírásboolean Boolean logikai típus (true, false)char Character 16 bites Unicode karakterbyte Integer 8 bites egész szám (-128 - +127)short Integer 16 bit, (-32 768 - +32 767)int Integer 32 bit (-2 147 483 648 - +2 147 483 647)long Long 64 bit (-9 223 372 036 854 775 808 - +...)float Float 32 bit (-3,40292347E+38 - +3,40292347E+38)double Double 64 bit (-1,79769313486231570E+308 - +...)

Page 22: Az objektum

22Komoróczy Tamás ([email protected])

Második program

public class Szöveg { public static void main( String args[] ) {

 String szöveg="Hello, kezdő Java programozó vagyok!";

    System.out.println( szöveg );  }}

Page 23: Az objektum

23Komoróczy Tamás ([email protected])

Harmadik program

public class Gyök {

public static void main( String args[] ) {

int szám=225;

System.out.println("A " + szám + " gyöke:" + Math.sqrt(szám) );

}

}

Page 24: Az objektum

24Komoróczy Tamás ([email protected])

Escape szekvenciák• Kód Leírás• \n újsor• \t tabulátor• \b egy karakter vissza, törlés• \r “kocsi” vissza, soremelés nélkül• \f lapdobás• \\ \ karakter• \' ' karakter, aposztróf• \” “ karakter, idézőjel• \ooo karakter oktális

számrendszerben 0-377• \uhhhh Unicode karakter

hexadecimálisan (0-0xffff)

Page 25: Az objektum

25Komoróczy Tamás ([email protected])

Feladat

1. Készítsünk Java programot amely különböző numerikus változókkal végzett alapműveletek eredményét íratja ki a képernyőre!

2. Készítsünk Java programot amelyik különböző szövegeket ír ki a képernyőre, ahol a szövegeket, változókban tároljuk!

Megoldás

Megoldás

Page 26: Az objektum

26Komoróczy Tamás ([email protected])

Vége (2. gyakorlat)

Page 27: Az objektum

27Komoróczy Tamás ([email protected])

A Math osztály néhány függvénye

Visszatérési érték típusa

Függvényfej Funkció

double abs(double a) Abszolút érték

double fcos/sin/tan/asin/acos/atan(double)

Trigonometrikus függvények

double Exp/log(double) ex és ln(x) függvények

double toDegrees/toRadians(double)

Radián érték fok-ba váltása és fordítva

double random() Véletlenszám a [0;1[ intervallumból

double pow(double, double) Hatványozás

int round(double) Kerekítés (lefelé)

double e és PI E és pi értéke