pushnuto, nemakenuto
parent
4f048484a6
commit
86556b4a66
@ -0,0 +1,29 @@
|
|||||||
|
# Třídy a Objekty
|
||||||
|
|
||||||
|
Třídy v programování popisují nějaký "typ" určité hodnoty.
|
||||||
|
Například hodnota `1` je typu `int`, hodnota `'ahoj'` je typu `str` - typy jsou třídy a hodnoty objekty.
|
||||||
|
Třídy popisují jen obecné vlastnosti a činnosti (funkce, u tříd se jim říká metody).
|
||||||
|
|
||||||
|
Objekty jsou instance třídy, které mají nějaké konktrétní hodnoty.
|
||||||
|
|
||||||
|
Takhle vypadá definice třídy v pythonu:
|
||||||
|
```python
|
||||||
|
class Clovek: # tridy se nazyvaji s velkym pocatecnim pismenem
|
||||||
|
def __init__(self, age, height):
|
||||||
|
self.age = age # self.age patri objektu, age je argument metody
|
||||||
|
self.height = height
|
||||||
|
```
|
||||||
|
Metoda `__init__` je tzv. konstruktor, čili je volána vždy když tvoříme objekt.
|
||||||
|
`self` je proměnná do které se automaticky přiřadí objekt.
|
||||||
|
|
||||||
|
Takle vypadá konstrukce objektu třídy člověk:
|
||||||
|
```python
|
||||||
|
x = Clovek(18, 180)
|
||||||
|
```
|
||||||
|
Je dobré si všimnout, že při konstrukci jsme dali metodě `__init__` jen dva argumenty, i když v definici bere tři.
|
||||||
|
To je proto, že objekt se automaticky přiřadí k proměnné `self` (nebo jakékoli proměnné která bude na začátku).
|
||||||
|
Protože `__init__` je konstruktor, tak k self se přiřadí prázdný objekt, kterému potom dáváme nějaké vlastnosti.
|
||||||
|
Je to lechce podobný proces jako při práci se slovníky:
|
||||||
|
```python
|
||||||
|
|
||||||
|
```
|
Loading…
Reference in New Issue