Javan perusteet

Samankaltaiset tiedostot
Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004

YHDYSKUNTALAUTAKUNTA TALOUSARVIOEHDOTUS 2018 TALOUSSUUNNITELMA

t P1 `UT. Kaupparek. nro Y-tunnus Hämeenlinnan. hallinto- oikeudelle. Muutoksenhakijat. 1( UiH S<

K Ä Y T T Ö S U U N N I T E L M A Y H D Y S K U N T A L A U T A K U N T A

Mikä yhteyssuhde on?

Metodien tekeminen Javalla

Kompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma

Pakkauksen sisältö: Sire e ni

Olio-ohjelmointi Javalla

Metodit Arvotyyppi. Metodit Arvotyyppi. Metodit Parametrit. Metodit Parametrit. Metodit Kuormittaminen. Metodit Kuormittaminen. Javan perusteet

OutputStream ja InputStream. Tietovirrat ja niiden suunnat. Tietovirtojen käyttö. FileInputStream esimerkki. DataOutputStream ja DataInputStream

1 Pöytäkirja Avaa haku

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2

SOSIALIDEMOKRAATTINEN PUOLUE SAARINIEMENKATU HELSINKI POSTISIIRTOTILI VAIHDE

Sisäpiirintiedon syntyminen

i lc 12. Ö/ LS K KY: n opiskelijakysely 2014 (toukokuu) 1. O pintojen ohjaus 4,0 3,8 4,0 1 ( 5 ) L i e d o n a mma t ti - ja aiku isopisto

Ohjelmointi 1 / 2009 syksy Tentti / 18.12

Sisällys. Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2

Rajapinta (interface)

PS. Jos vastaanotit Sinulle kuulumattoman viestin, pyydän ilmoittamaan siitä viipymättä allekirjoittaneelle ja tuhoamaan viestin, kiitos.

J A R M O S U N N A R I M A N A G E R S T A N D A R D S, R E G U L A T I O N S A N D A P P R O V A L S

Luokat ja oliot. Ville Sundberg

812341A Olio-ohjelmointi Peruskäsitteet jatkoa

public static void main (String [] args)

1. Kaikki kaatuu, sortuu August Forsman (Koskimies)

V a a liv o itto. H a a s ta tte lu Suomen S o sia lid e m o k ra a tissa 18/

1 Tehtävän kuvaus ja analysointi

P S. Va r äi n. m m2 2. e a / puistossa säilyvät puut. korko muuttuu, kansi uusitaan SVK asv.

Ohjelmointi 2 / 2010 Välikoe / 26.3

Taulukot. Jukka Harju, Jukka Juslin

ITKP102 Ohjelmointi 1 (6 op), arvosteluraportti

Metodien tekeminen Javalla

Listarakenne (ArrayList-luokka)

7. Näytölle tulostaminen 7.1

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Pakkaukset ja määreet

Periytyminen (inheritance)

Forssan kaupunki Osavuosikatsaus YHDYSKUNTAPALVELUT. Arviointik r iteeri tr mittarit ja tavoitetaso ja t a v o i t e t a s o

YHTEYSSUHDE (assosiation)

Javan perusteita. Janne Käki

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

Usko, toivo ja rakkaus

Ohjelmointi 2 / 2008 Välikoe / Pöytätestaa seuraava ohjelma.

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

N I K E A N U S K O N T U N N U S T U S

Java-kielen perusteet

Ohjelmointi 2, välikoe

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

Marina Kostik. Aurinkolaulu. for female choir. (Eino Leino)

Luokka Murtoluku uudelleen. Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista.

Sisällys. 6. Metodit. Oliot viestivät metodeja kutsuen. Oliot viestivät metodeja kutsuen

SAMMONKATU SAMMONKATU JAAKON- SARVI- KATU SARVIJAAKONKATU 1: Kalevanrinteen katujen yleissuunnitelma, Liite 3 Asemapiirros 1/4

Java kahdessa tunnissa. Jyry Suvilehto

Java-API, rajapinnat, poikkeukset, UML,...

Rekisteriseloste. 1. Rekisterinpitäjä. 3. Rekisterin nimi

& # # w. œ œ œ œ # œ œ œ œ œ # œ w. # w nœ. # œ œ œ œ œ # œ w œ # œ œ œ Œ. œ œ œ œ œ œ œ œ # œ w. œ # œ œ œ w œ œ w w w w. W # w

on ohjelmoijan itse tekemä tietotyyppi, joka kuvaa käsitettä

TEHTÄVÄKORI Monisteita matikkaan. Riikka Mononen

Sisällys. JAVA-OHJELMOINTI Osa 6: Periytyminen ja näkyvyys. Luokkahierarkia. Periytyminen (inheritance)

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Luokan sisällä on lista

Olion elinikä. Olion luominen. Olion tuhoutuminen. Olion tuhoutuminen. Kissa rontti = null; rontti = new Kissa();

9. Periytyminen Javassa 9.1

Sopimuspohjainen olio-ohjelmointi

Korkeusjärjestelmä N43 Höjdsystemet N43

ITKP102 Ohjelmointi 1 (6 op)

15. Ohjelmoinnin tekniikkaa 15.1

Aluevarausmerkinnät: T/kem Maakuntakaava

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki

A) on käytännöllinen ohjelmointitekniikka. = laajennetaan aikaisemmin tehtyjä luokkia (uudelleenkäytettävyys)


15. Ohjelmoinnin tekniikkaa 15.1

14. Poikkeukset 14.1

Heinola Jääporat on valmistettu Suomessa ja Suomalaisen Työn Liitto on myöntänyt. oikeuden käyttää Avainlippu -tunnusta merkkinä suomalaisesta työstä.

Tietorakenteet, laskuharjoitus 1,

Lista luokan sisällä

ITKP102 Ohjelmointi 1 (6 op)

9. Periytyminen Javassa 9.1

ENNAKOINTIKAMARIFOORUMI Jonna Heliskoski CEO, PhD candidate

NÄKYMÄ TURVESUONKADUN JA LIELAHDENKADUN RISTEYKSESTÄ MAANKÄYTTÖSUUNNITELMA TEIVAALANTIELLE LIELAHTEEN LUONNOS ARKKITEHDIT A3 OY

Interaktiivinen tarinankerronta

Piirrä kuvioita suureen laatikkoon. Valitse ruutuun oikea merkki > tai < tai =.

Ohjelmoinnin perusteet Y Python

LIITE 5. Pisteet. YLIOPISTOVERTAILU - Yritysnäkökulma 1,6 1,4 1,2 1 0,8 0,6 0,4 0,2. Vuosi. Pisteet 1,6 1,4. Oikeus tieteellinen 1,2 1 0,8 0,6 0,4 0,2

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista

Sisältö. 22. Taulukot. Yleistä. Yleistä

58131 Tietorakenteet ja algoritmit (syksy 2015)

ITKP102 Ohjelmointi 1 (6 op)

1. Omat operaatiot 1.1

815338A Ohjelmointikielten periaatteet Harjoitus 5 Vastaukset

KIERTOKIRJEKOKO ELMA

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

16. Javan omat luokat 16.1

TyontekijaOhjelma. +main() (käyttää) + = public - = private

4. Luokan testaus ja käyttö olion kautta 4.1

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Nakkilan kunta ja Lions Club Nakkila ry sopivat keskenään seuraavaa:

Transkriptio:

M JavaDoc e s i m e r k k i JavaDoc * Malliluokka, jossa esitellään JavaDoc:n toimintaa * @version.0 * @author Matti Meikäläinen public class TestApp { * Malli luokkamuuttujasta private int m_membervariable; * Mallimetodi * @param name Otettava parametri * @return Merkkijono jonka metodi palauttaa public String testmethod(string name) { /* J d p ä k y y m ä ä j m m m y ö p j p n ä k y y d n Oletusarvoisesti avad oc ok um en toi vain ub lic -n vy salueeseen ritelly t attrib uutit a etod it -p rivate k om en torivip aram etrilla se ottaa uk aan s rivate a rotec ted - vy salueid en ok um en toin in L isä tietoa J avad oc :sta lö y ty y verk osta: http://j a v a.s u n.c o m /j 2 s e /j a v a d o c / 2 u i t a ai h e al u e e s e e n k u u l u vi a as i oi t a rekursio st a t t iset m et od it j a a t t rib uut it R e k u r s i o Jos ohjelmassa on metodi, joka kutsuu sisä llä ä n itseä ä n uudestaan, kä y tetä ä n siitä nimity stä r ekur siiv inen metodi R ek ursiiviset m etod it k utsuvat itseä ä n eri p aram etreilla P aram etrien p erusteella m etod i k utsuu itseä ä n tai m ik ä li ollaan p ä ä sty p erustap auk seen ei k utsua en ä ä suoriteta 3 4 Javan perusteet 2002

Rekursio Rekursiossa jokaisella kutsulla lähestytään aina jotakin p erustap austa Rekursio on p erinteisissä p rosed uraalisissa ja olio-ohjelm ointikielissä hid asta Teoriassa kaikki rekursiiviset metodit voidaan p urkaa auki iteratiivisiksi versioiksi Rekursiota rajoittaa suurissa tap auksissa käytö ssä olev a m uistin m äärä Rekursio F ib on a c c in Fibonaccin l u k u j a ov at : 0,,, 2, 3, 5, 8, 3,... l uv ut E nsim m äinen luku on 0, toinen luku ja siitä eteenp äin seuraav a luku saad aan aina kahd en ed ellisen sum m ana Fibonnaccin l u k u j a v oid aan l as k e a r e k u r s iiv is t a m e t od ia h y v ä k s ik ä y t t ä e n H uom attav asti tehokkaam p iakin m enetelm iä on olem assa 5 6 Rekursio F ib on a c c in l uv ut S t a a t t iset m et od it j a a t t rib uut it // Palauttaa n:nnen Fibonaccin luvun public int fib(int n) { if (n==) return 0; else if (n==2) return ; else return fib(n-) + fib(n-2); Esim: f ib ( 4 ) 2 fib( 4 ) fib( 3 ) fib( 2 ) 0 fib( 2 ) fib( ) 7 Y leensä luokan sisään kirjoitetut m etod it käyttäv ät jotain olion attrib uuttia O n olem assa kuitenkin m yö s m etod eja, jotka eiv ät tarv itse olion attrib uutteja tai kutsu toisia olion attrib uutteja käyttäv iä m etod eja ( esim. M ath-luokan m etod it) K y seiset metodit eivä t nä in ol l en tarvitse ol emassa ol evaa ol iota suoritukseensa Tä l l aisia metodej a kutsutaan staattisiksi 8 Javan perusteet 2002 2

Metodi määritellään staattiseksi static - määreellä: public static double sqrt(double num) static -määreellä määritelty ä metodia v oidaan ku tsu a lu okan u lkop u olelta ilman olion lu ontia: double result = Math.sqrt(6); Luokan nimi, jossa metodi on määritelty 9 Attribuutteja voidaan määrittää myös staattisik si. S taattinen attribuutti on k äytettävissä il man ol ion l uontia. S taattista attribuuttia voi k äyttää k uten normaal iak in l uok an attribuuttia. Staattinen attribuutti on sama joka paikassa (vrt. ei-staattiset attribuutit, jotka ovat y ksil ö l l iset jokaisel l a l uod ul l a ol iol l a) 0 S taattiset metodit/ attrib u u tit ov at käy ttö alu eeltaan raj atu mp ia ku in eistaattiset H yvän oh jel mointitavan muk aista on määrittää metodi/ attribuutti staattisek si aina k un se on mah dol l ista K äytännössä varsink in staattisten metodien k äyttö on h arvinaista E simerkkej ä: main-metodin on aina ol tava staattinen V ak iot määritetään yl eensä staattisina: private final static int NUM_COLS = 5; C ol or-l uokan mä ä ritel l y t vä rit ovat staattisia public final static Color black = new Color(0,0,0); ath -l uok an k aik k i metodit ja attribuutit ovat staattisia M 2 Javan perusteet 2002 3

Luokan ulkopuolelta: public class TestApp { T es ta pp.s etv alues ( ) ; public static final int A = ; public final int B = 2; i nt i = T es ta pp.a ; private static int C = 3; i = T es ta pp.b ; private int D = 4; i = ( new T es ta pp( ) ).B ; ( new T es ta pp( ) ).s etv alues ( ) ; public TestApp() { / / E i s alli ttu ( T ) ) b V ( ) ; new es ta pp(.s etm em er alues public static void setvalues() { C = A; A = C; D = C; // Sallittu, koska A ja C staattisia // Ei sallittu, koska A on vakio (final) // Ei sallittu, koska D ei staattinen setmembervalues(); // Ei sallittu, koska ollaan staat. metodissa public void setmembervalues() { C = A; // Sallittu D = C; // Sallittu, koska ei olla staattisessa metodissa setvalues(); // Sallittu 3 Tenttipäivä H a r j o itu s h y vity k s et L a s k u h a r j o itu s tentti Tenttia l u e 4 Lopputentti ke 27..2002 klo 2-6 s a lis s a L23 U us inta tentti 3.2.2002 klo 2-6 s a lis s a L2 T entteih in ilm oitta utum inen v iikkoa ennen tenttiä T enttioikeus kun la s kuh a r j oituks is ta on teh ty v ä h intä ä n 25 % ( 7 teh tä v ä ä ) J os s uor itettuna on a lle 25 % teh tä v is tä, tulee teh d ä m y ö s la s kuh a r j oitus tentti La s kuh a r j oitus tenttiin ilm oitta utum is et m y ö s v iikkoa ennen s ä h kö pos tits e Osoite tk ein on e@c s.u k u.f i T eh d ä ä n l op p u ten tin y h tey d essä 5 6 Javan perusteet 2002 4

Tentti Tenttiin saa arvosanahyvityksiä harj oitu ksista: 75 % - 00 % (9-25 teht.) +2 arvosanaa 50 % - 75 % (3-8 teht.) + arvosana 25 % - 50 % (7-2 teht.) ei hyvitystä Tentti saatava ensin l äp i ennen ku in hyvityksiä otetaan hu om ioon A rvostel u T3-T4 -T5 -H 6 -H 7 -H 8 -H 9 -E 0 -E -E 2 Tenttia l u e R i l e y n k i r j a s t a l u v u t -5, 7, 0, 2-4 noin 380 sivua K y s y m y k s e t l u e n n o i l l a j a / t a i h a r j o i t u k s i s s a e s i l l ä o l l e i s t a a s i o i s t a K ir j ast a p uut t uvia asioit a: JavaDoc m ai n -m e t od i n k ä y t t ö a or om or vi ct or -l ok an ak a con oi or ak a op aat or i*=2) 7 8 Tentti Tarkoitu ksena m itata kokonaisu u d en hahm ottam ista, ei nip p el itietoa M ikäl i tehtävissä tarvitsee käyttää j otain al ib rary: n tai J 2 S E : n A P I -l u okkaa, on ko. l u okan U M L -kaavio tai l ähd ekood i tehtävien m u kana Tentissä ei saa ol l a kirj aa m u kana; kynä, ku m i j a viivoitin riittää 9 Javan perusteet 2002 5