A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Következő változat | Előző változat | ||
oktatas:programozas:objektum_orientalt_tervezes [2019/08/21 17:06] admin létrehozva |
oktatas:programozas:objektum_orientalt_tervezes [2024/01/22 14:45] (aktuális) admin [Objektum Orientált Tervezés] |
||
---|---|---|---|
Sor 2: | Sor 2: | ||
====== Objektum Orientált Tervezés ====== | ====== Objektum Orientált Tervezés ====== | ||
- | |||
* **Szerző:** Sallai András | * **Szerző:** Sallai András | ||
- | * Copyright (c) Sallai András, 2014 | + | * Copyright (c) 2014, Sallai András |
- | * Licenc: GNU Free Documentation License 1.3 | + | * Szerkesztve: 2024 |
- | * Web: http://szit.hu | + | * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] |
+ | * Web: https://szit.hu | ||
===== A szoftver készítés folyamata ===== | ===== A szoftver készítés folyamata ===== | ||
+ | |||
+ | Az következő ábra bemutatja egy szoftver tervezésének menetét. | ||
{{:oktatas:programozás:oo_tervezes.png|}} | {{:oktatas:programozás:oo_tervezes.png|}} | ||
Sor 30: | Sor 33: | ||
===== A Java osztályhierarchia részlet ===== | ===== A Java osztályhierarchia részlet ===== | ||
+ | Az osztályok hierarchiába szerveződnek. | ||
+ | |||
+ | |||
+ | Minden osztály az Objekt ősosztályból származik, ez a gyökérosztály. | ||
{{:oktatas:programozás:java_objektum_hierachia.png|}} | {{:oktatas:programozás:java_objektum_hierachia.png|}} | ||
Sor 42: | Sor 49: | ||
{{:oktatas:programozás:sargazrt_osztalydiagram.png|}} | {{:oktatas:programozás:sargazrt_osztalydiagram.png|}} | ||
+ | |||
+ | A háttérben minden megalkotott és gyökér osztálynak kinevezett | ||
+ | osztálynak is van egy [[https://docs.oracle.com/en/java/javase/20/docs/api/java.base/java/lang/Object.html|Object]] nevű őse. Ez a kapcsolat akkor is létrejön, | ||
+ | ha nem jelöljük örökléssel. | ||
+ | |||
+ | Vegyük például a Szemely osztályt: | ||
+ | |||
+ | <code java Java.java> | ||
+ | class Szemely { | ||
+ | String nev; | ||
+ | Integer kor; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | A háttérben olyan, mintha ezt csináltuk volna: | ||
+ | |||
+ | <code java Java.java> | ||
+ | class Szemely extends Object { | ||
+ | String nev; | ||
+ | Integer kor; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | |||
+ | {{:oktatas:programozas:szemely_object.png|}} | ||
+ | |||
+ | |||
+ | Vegyünk egy Employee nevű osztályt, ahol szintén nem állítunk be öröklést: | ||
+ | |||
+ | <code java Employee.java> | ||
+ | class Employee { | ||
+ | Integer id; | ||
+ | String name; | ||
+ | String city; | ||
+ | Double salary; | ||
+ | LocalDate birth; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | <code java Employee.java> | ||
+ | class Employee extends Object { | ||
+ | Integer id; | ||
+ | String name; | ||
+ | String city; | ||
+ | Double salary; | ||
+ | LocalDate birth; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | |||
+ | |||
+ | {{:oktatas:programozas:employe_object.png|}} | ||
===== Iskola példa ===== | ===== Iskola példa ===== | ||
{{:oktatas:programozás:iskola_osztalydiagram.png|}} | {{:oktatas:programozás:iskola_osztalydiagram.png|}} |