@ Leena Lahtinen 10.1.2006 OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.

Slides:



Advertisements
Samankaltaiset esitykset
Tuloksellinen Java-ohjelmointi Luku 3 Luokkien käyttäminen
Advertisements

15. Loogiset operaatiot.
@ Leena Lahtinen Helia Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.
6. Metodit.
@ Leena Lahtinen Helia TIETO JA TIETOKONEOHJELMA  TIETOKONEOHJELMA KÄSITTELEE TIETOJA  TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA.
© Jukka Harju, Viittausmuuttujat. © Jukka Harju, Viittaukset •Viittausmuuttuja sisältää tiedon siitä missä muistipaikassa olio.
Ohjelman perusrakenteet
1 Ehtolausekkeet Ehdot, valintalausekkeet Boolean-algebra.
Nämä kalvot on lisensoitu Creative Commons Attribution-ShareAlike 1
Jukka Juslin Poikkeukset ja niiden paikallistaminen * Jukka Juslin * Liittyy oppikirjan lukuun 11.
Taulukot: Array Taulukko Javassa pitää aina perustaa (new)
22. Taulukot.
Ohjelmointitaito (ict1td002, 12 op) Syksy 2008
13. Pakkaukset.
Näytölle tulostaminen. 7.2 Sisällys System.out.println - ja System.out.print -operaatiot. Tulostus erikoismerkeillä. Edistyneempää tulosteiden.
Java-ohjelmointi Opas ammattimaiseen osaamiseen Luku 4 Toistolauseet
OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT. LUOKKA JAVA ohjelma koostuu luokista LUOKKA sisältää metodeja molemmat sisältävät attribuutteja eli muuttujia.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ VARTEN.
Yksinkertaiset graafiset syöttö- ja tulostustoiminnot.
16. Lohkot Sisällys Tutustutaan lohkoihin. Muuttujien ja vakioiden näkyvyys sekä elinikä erityisesti operaation lohkossa. Nimikonfliktit. Muuttujat.
© Jukka Harju, Jukka Juslin Java-ohjelmointi Opas ammattimaiseen osaamiseen Luku 9 Poikkeuskäsittely.
Poikkeustenkäsittely  Mitä poikkeustenkäsittely tarkoittaa?  Poikkeuksen käsitteleminen  Poikkeusluokkien hierarkia  Poikkeuksen heittäminen 1.
Toiston tekeminen Javalla  Mikä toistorakenne on?  while toistorakenne  do-while toistorakenne  for toistorakenne 1.
TAULUKKO YKSIULOTTEINEN TAULUKKO. TAULUKKO  Taulukon tarkoitus Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia Näitä.
Ohjelman perusrakenteet
TIETO JA TIETOKONEOHJELMA TIETOKONEOHJELMA KÄSITTELEE TIETOJA TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA MENETELMILLÄ.
© Jukka Harju, Jukka Juslin
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
7. Oliot ja viitteet.
String-vertailusta ja Scannerin käytöstä (1/2)
Metodit – Arvotyyppi Ellei metodi palauta arvoa, sen arvotyyppi on void Tällöin ”return;”-lauseke ei ole metodissa pakollinen, vaikka sen käyttö on sallittua.
19. Olio-ohjelmointia Javalla
Kuinka niitä käsitellään
4. Attribuutit 4.1. Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2.
5. Kapselointi Yleistä Kapseloinnilla (encapsulation) tarkoitetaan luokan tietojen ja toimintojen pakkaamista yhdeksi suojatuksi kokonaisuudeksi.
Hyvä ohjelmointitapa (osa 2) Yleistä Lisää hyviä ohjelmointikäytäntöjä: − Jaa pitkä koodi osiin. − Käytä attribuutteja säästeliäästi.
22. Taulukot.
Poikkeukset Yleistä Virheeseen varautuminen tarkoittaa sitä, että ohjelmoija huomioi koodia kirjoittaessaan ajonaikaisen virheen mahdollisuuden.
Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen
@ Leena Lahtinen Toistorakenne Ohjelmassa toistetaan tiettyjä toimenpiteitä monta kertaa peräkkäin Toisto noudattaa sille kuuluvia tarkkoja standardoituja.
@ Leena Lahtinen TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA:  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ.
© Jukka Juslin1 Osio2 Olio-ohjelmointi: Merkkijonot eli Stringit Jukka Juslin.
2. Lisää Java-ohjelmoinnin alkeita
Aakkosnumeerinen tieto Tarkoittaa kaikkea muuta tietoa paitsi laskentaan tarkoitettuja lukuja Muuttujan tietosisältö on siis tekstitietoa Muuttujan tietotyypiksi.
Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen.
Kontrollirakenteet laajemmin
Java - Tietokanta. JDBC=Java database connectivity  ODBC:n kaltainen ohjelmointiliittymä SQL- tietokantoihin  Koostuu Java-kehitysympäristön (esim.
Javan oliovirrat eli oliotiedostojen käsittely. Olio- eli objektitiedostojen käsittely Käsittely täysin samanlaista kuin muiden tiedostojen 1.Otetaan.
1 © Jukka Juslin Luokat, attribuutit ja metodit Yleistietoa: seuraavalla koulutusviikolla tarkempi käsittely.
14. Poikkeukset Sisällys Johdanto poikkeuksiin. Poikkeusten käsittely: − Poikkeusten käsittely paikallisesti. − Poikkeusten heittäminen. Exception.
Sähköpostin lähetys Java- ohjelmasta Jukka Juslin.
Valintarakenne valintarakenne alkaa aina kysymyksellä eli ehdolla ehto tarkoittaa, että muuttujan sisältöä verrataan toisen muuttujan sisältöön tai vakioon.
Ohjausrakenteet Määräävät ohjelmakoodin suoritusjärjestyksen Ehtolause if – else on muotoa if (lauseke) lause1 else lause2 Jos lauseke on tosi, niin suoritetaan.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
String-vertailusta ja Scannerin käytöstä (1/2)
5. Kapselointi.
1. Omat operaatiot.
Kuinka niitä käsitellään
13. Loogiset operaatiot.
3. Luokat, oliot ja metodit Java-kielessä (Lausekielinen ohjelmointi I ja II –kursseilla opitun kertausta.)
Aakkosnumeerinen tieto
Aakkosnumeerinen tieto
6. Metodit.
7. Oliot ja viitteet.
4. Attribuutit.
7. Näytölle tulostaminen
3. Attribuutit.
4. Luokan testaus ja käyttö olion kautta
eli oliotiedostojen käsittely
Esityksen transkriptio:

@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT

@ Leena Lahtinen LUOKKA JAVA - sovellus koostuu luokista Luokka sisältää attribuutteja ja metodeja Ohjelmassa pitää olla yksi luokka, joka sisältää main - metodin

@ Leena Lahtinen LUOKKA Luokka muodostetaan jotain tiettyä tarkoitusta varten, esimerkiksi LaskeKuukausipalkat Luokan avulla hoidetaan ko. luokan attribuuttien arvojen käsittely Luokan attribuuttien arvojen käsittely tapahtuu metodien avulla

@ Leena Lahtinen METODI METODIN MERKITYS –Metodi on luokan sisällä oleva toimintojen kokonaisuus –Se suorittaa rajatun tehtävän, esimerkiksi tulostaPalkat() –Se suoritetaan itsenäisesti omana kokonaisuutenaan

@ Leena Lahtinen METODI METODIN SUORITUS Suoritus tapahtuu kutsumalla metodia: ohjelman kontrolli eli ohjelman toteutus siirtyy suorittamaan metodiin kirjoitetut toimenpiteet tämän jälkeen palataan takaisin kutsulausetta seuraavaan lauseeseen, esimerkiksi: tulostaPalkat(); System.out.println(”Palkkojen ” + ”yhteissumma: ” + summa);

@ Leena Lahtinen METODI metodi 1 ( luokka, jossa main-metodi) metodi 2 metodi 3 KUTSU … METODIN KUTSUTEKNIIKKA LUOKKA

@ Leena Lahtinen METODI ATTRIBUUTIT JA MUUTTUJAT LUOKAN ATTRIBUUTIT –attribuutit ovat luokan tietoja (vrt. muuttujia) –ne ovat käytössä luokan sisällä kaikissa metodeissa LUOKAN ATTRIBUUTIT ja MUUTTUJAT –metodi käsittelee luokan attribuutteja –metodilla voi olla myös omia muuttujia, jotka ovat vain metodin käytössä

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS –Metodien käytössä eli kun siitä kutsutaan suoritukseen, on tärkeänä osana tiedonvälitys –Tiedonvälitys tapahtuu kutsuvan ja kutsuttavan ohjelman osan välillä

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS TIEDONVÄLITYSPARAMETRIT Metodin kutsulauseessa on mukana yleensä tiedonvälitysparametreja eli tavallisia muuttujanimiä Tiedonvälitysparametrien arvot sijoittuvat metodissa esiteltyjen vastaanottavien muuttujien arvoiksi Tiedonvälitysparametrien ja vastaanottavien muuttujien tulee olla tietotyypiltään täysin samanlaiset, sillä vain silloin tiedonvälitys onnistuu (vrt. sijoitus)

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS - TIEDONVÄLITYSPARAMETRIT Tiedonvälitysparametrien järjestys kutsulauseessa noudattaa aina metodin vastaanottokykyä Kutsuttaessa metodia asetetaan kutsulauseessa tiedonvälitysparametrit siis oikeaan järjestykseen Metodin esittelylauseesta nähdään miten metodi ottaa tietoa vastaan

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS TIEDONVÄLITYKSEN VAIHTOEHDOT: 1.Tiedonvälitystä ei ole ollenkaan 2.Vain kutsuja välittää tietoa metodiin 3.Vain metodi palauttaa yhden tiedon kutsujalle 4.Kohdat 2 ja 3 ovat molemmat mukana kutsussa

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS 1.Tiedonvälitystä ei ole ollenkaan - kutsulauseessa ei lähetä tietoa metodiin - eikä metodi lähetä paluuarvoa takaisin

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS 2.Tiedonvälitys vain ohjelmasta metodiin - vain kutsulauseessa lähetetään tietoja metodiin - metodi ei lähetä paluuarvoa takaisin

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS 3. Vain metodi lähettää paluuarvon kutsujalle - kutsulausessa ei lähetä tietoa metodiin - metodi lähettää yhden paluuarvon takaisin

@ Leena Lahtinen METODI METODIT JA TIEDONVÄLITYS 4.Tiedonvälitys tapahtuu molempiin suuntiin - kutsulauseessa lähettää tietoja metodiin - metodi lähettää yhden paluuarvon takaisin

@ Leena Lahtinen METODI METODIN KUTSULAUSE Kutsulauseen kirjoitusasu: metodin kutsulauseessa on metodin nimi sekä suluissa niiden tiedonvälitysparametrien nimet, joiden arvot halutaan lähettää metodiin jos mukana on myös paluuarvon vastaanotto, niin kutsulauseeseen otetaan mukaan vastaanottava muuttujanimi sekä sijoitusoperaattori =

@ Leena Lahtinen METODIN KUTSULAUSE Neljä esimerkkiä kutsulauseesta: 1). kutsulause, jota käytetään silloin, kun tiedonvälitystä ei ole ollenkaan metodi () ; METODI

@ Leena Lahtinen ). kutsulause, jossa on mukana suluissa niiden tiedonvälitysparametrien nimet, joiden arvot sijoittuvat metodiin metodi (tp1,tp2) ; METODI

@ Leena Lahtinen METODI 3). kutsulause, jossa on mukana metodin paluuarvon vastaanottavan muuttujan nimi vastottava = metodi () ;

@ Leena Lahtinen METODI 4). kutsulause, jossa on mukana suluissa tiedonvälitysparametrien nimet ja paluuarvon vastaanottavan muuttujan nimi vastottava = metodi (m1, m2) ;

@ Leena Lahtinen METODI METODIN ESITTELY –metodi alkaa aina metodin esittelyllä –esittely sisältää kolme osaa: a)metodin esittely kertoo metodin nimen b)suluissa on tiedonvälitysparametrien esittely c)esittely kertoo myös paluuarvon tietotyypin

@ Leena Lahtinen METODI METODIN ESITTELY 1). Metodin esittelylause, johon ei liity tiedonvälitystä static void metodi ( ) void kertoo että metodilla ei ole paluuarvoa (tyypitön) Huomaa: esittely ei pääty puolipisteeseen !

@ Leena Lahtinen METODI METODIN ESITTELY 2). Metodin esittelylause, jossa on kaksi muuttujanimeä tiedon vastaanottoa varten (tiedonvälitysparametrit) static void metodi (int m1, String m2)

@ Leena Lahtinen METODI METODIN ESITTELY 3). Metodin esittelylause, jossa näkyy vain paluuarvon tyyppi static int metodi ( )

@ Leena Lahtinen METODI METODIN ESITTELY 4). Metodin esittelylause, jossa on mukana kaikki tiedonvälitys vaihtoehdot static String metodi (int luku)

@ Leena Lahtinen METODI METODIN PALUUARVO –Metodi palauttaa vain yhden tiedon paluuarvona kutsuvalle ohjelmalle –Paluuarvo sijoittuu kutsulauseessa olevan vastaanottavan muuttujan sisällöksi

@ Leena Lahtinen METODI METODIN PALUUARVO PALUUARVO: paluuarvo palautetaan return - lauseella. Sen yhteydessä ilmoitetaan suluissa muuttujan nimi, jonka sisältö palautetaan kutsujalle (arvo sijoittuu kutsulauseessa olevan muuttujan arvoksi)

@ Leena Lahtinen METODI METODIN PALUUARVO –Paluuarvon välitys: - metodi palauttaa paluuarvon, esimerkiksi sukunimen: return (sukunimi) ;

@ Leena Lahtinen METODI Esimerkkiohjelma: public class Ohjelma { public static void main (String [ ] args) { int a, b ; System.out.println (”Anna luku”) ; a = Input.intLuku() ; b = vahenna (a) ; System.out.println (”Vähensin yhden, tulos on ” + b) ; } static int vahenna (int a) { a = a – 1 ; return (a) ; }

@ Leena Lahtinen String-tiedon käsittely javan omilla metodeilla equals – metodi tekee eron isoille ja pienille kirjaimille esimerkki Javalla: String kaupunki ; ….. if (kaupunki.equals (”Helsinki”)) { … }

@ Leena Lahtinen –Javassa käytetään esim. equals tai equalsIgnoreCase – metodia, kun verrataan ovatko merkkijonot samat: –equals vertaa kirjoitusasuja ja sisältöjä –equalsIgnoreCase vertaa sisältöjä String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen equals – metodi tekee eron isoille ja pienille kirjaimille esimerkki Javalla: String kaupunki ; ….. if (kaupunki.equals (”Helsinki”)) { … } String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen equalsIgnoreCase ei tee eroa isoille ja pienille kirjaimille esimerkki Javalla: String kaupunki ; ….. if (kaupunki.equalsIgnoreCase (”Helsinki”)) { … } String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen esimerkki Javalla (kaksi muuttujaa): String teksti1, teksti2 ; …. if (teksti1.equals(teksti2)) { … … } String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen esimerkki Javalla (kaksi muuttujaa): String teksti1, teksti2 ; …. if (teksti1.equalsIgnoreCase (teksti2)) { … … } String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen null – arvo –tekstitietoa voidaan verrata null – arvoon –silloin verrataan onko muuttujan sisältö tyhjä –tässä tilanteessa käytetään vertailuoperaattoria String-tiedon käsittely javan omilla metodeilla

@ Leena Lahtinen Javalla: if (etunimi == null) { …. } String-tiedon käsittely javan omilla metodeilla