Luokat ja Olio-Ohjelmoinnin Perusteet
Olio-ohjelmointi (OOP) järjestää koodin yhdistämällä tiedot ja toiminnallisuuden olioihin. Sen sijaan, että käytettäisiin erillisiä muuttujia ja funktioita, mallinnetaan todellisen maailman käsitteitä luokkien avulla.
Pythonissa luokka määrittelee, miten olio on rakennettu ja mitä se voi tehdä.
Luokan määrittely
Luokka on malli olioiden luomista varten, ja se määritellään class-avainsanalla.
Se määrittää, mitkä ominaisuudet oliolla on ja mitä se voi tehdä.
Erityinen __init__-metodi suoritetaan, kun uusi olio luodaan, jolloin voidaan asettaa alkuarvot.
Esimerkiksi Car-luokka voi määritellä ominaisuudet kuten brand ja year.
Olioiden luominen ja käyttäminen
Kun luokka on määritelty, luodaan oliot (instanssit) kutsumalla luokkaa kuin funktiota tarvittavilla arvoilla.
Piste-notaatiolla päästään käsiksi ominaisuuksiin, esim. my_car.brand.
Jokainen olio tallentaa omat tietonsa annettujen arvojen perusteella.
Metodien lisääminen luokkaan
Luokat voivat määritellä myös toiminnallisuutta metodien avulla — funktioita, jotka kirjoitetaan luokan sisälle.
Metodit mahdollistavat olioiden toiminnan oman datansa perusteella. Esimerkiksi Car-luokalla voi olla metodi, joka ilmoittaa: "This is a Toyota from 2020."
Metodit muistuttavat tavallisia funktioita, mutta ottavat aina self-parametrin ensimmäisenä.
self viittaa siihen tiettyyn olioon, joka kutsuu metodia, mahdollistaen pääsyn olion omiin attribuutteihin ja muihin metodeihin.
self.brand– tämän olion merkki;self.describe()– tämän olion describe-metodi.
Luokkamuuttujat vs. ilmentymämuuttujat
Luokan sisällä voidaan määritellä:
- Ilmentymämuuttujat: yksilöllisiä jokaiselle oliolle (
self.brand); - Luokkamuuttujat: jaettuja kaikille luokan olioille.
Käytä ilmentymämuuttujia esimerkiksi auton mallille tai vuosimallille. Käytä luokkamuuttujia yhteisille arvoille, kuten yleiselle luokittelulle.
Yhteenveto
- Luokat määrittelevät olioiden rakenteen ja toiminnallisuuden;
- Käytä
__init__-metodia olion tietojen alustamiseen luotaessa; - Luo olioita kutsumalla luokkaa kuin funktiota;
- Metodit lisäävät toiminnallisuutta olioihin;
selfviittaa nykyiseen olioon;- Luokkamuuttujat ovat jaettuja; ilmentymämuuttujat ovat yksilöllisiä.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain how to define a class in Python?
What is the purpose of the __init__ method in a class?
Can you give more examples of classes and objects?
Awesome!
Completion rate improved to 5
Luokat ja Olio-Ohjelmoinnin Perusteet
Pyyhkäise näyttääksesi valikon
Olio-ohjelmointi (OOP) järjestää koodin yhdistämällä tiedot ja toiminnallisuuden olioihin. Sen sijaan, että käytettäisiin erillisiä muuttujia ja funktioita, mallinnetaan todellisen maailman käsitteitä luokkien avulla.
Pythonissa luokka määrittelee, miten olio on rakennettu ja mitä se voi tehdä.
Luokan määrittely
Luokka on malli olioiden luomista varten, ja se määritellään class-avainsanalla.
Se määrittää, mitkä ominaisuudet oliolla on ja mitä se voi tehdä.
Erityinen __init__-metodi suoritetaan, kun uusi olio luodaan, jolloin voidaan asettaa alkuarvot.
Esimerkiksi Car-luokka voi määritellä ominaisuudet kuten brand ja year.
Olioiden luominen ja käyttäminen
Kun luokka on määritelty, luodaan oliot (instanssit) kutsumalla luokkaa kuin funktiota tarvittavilla arvoilla.
Piste-notaatiolla päästään käsiksi ominaisuuksiin, esim. my_car.brand.
Jokainen olio tallentaa omat tietonsa annettujen arvojen perusteella.
Metodien lisääminen luokkaan
Luokat voivat määritellä myös toiminnallisuutta metodien avulla — funktioita, jotka kirjoitetaan luokan sisälle.
Metodit mahdollistavat olioiden toiminnan oman datansa perusteella. Esimerkiksi Car-luokalla voi olla metodi, joka ilmoittaa: "This is a Toyota from 2020."
Metodit muistuttavat tavallisia funktioita, mutta ottavat aina self-parametrin ensimmäisenä.
self viittaa siihen tiettyyn olioon, joka kutsuu metodia, mahdollistaen pääsyn olion omiin attribuutteihin ja muihin metodeihin.
self.brand– tämän olion merkki;self.describe()– tämän olion describe-metodi.
Luokkamuuttujat vs. ilmentymämuuttujat
Luokan sisällä voidaan määritellä:
- Ilmentymämuuttujat: yksilöllisiä jokaiselle oliolle (
self.brand); - Luokkamuuttujat: jaettuja kaikille luokan olioille.
Käytä ilmentymämuuttujia esimerkiksi auton mallille tai vuosimallille. Käytä luokkamuuttujia yhteisille arvoille, kuten yleiselle luokittelulle.
Yhteenveto
- Luokat määrittelevät olioiden rakenteen ja toiminnallisuuden;
- Käytä
__init__-metodia olion tietojen alustamiseen luotaessa; - Luo olioita kutsumalla luokkaa kuin funktiota;
- Metodit lisäävät toiminnallisuutta olioihin;
selfviittaa nykyiseen olioon;- Luokkamuuttujat ovat jaettuja; ilmentymämuuttujat ovat yksilöllisiä.
Kiitos palautteestasi!