HTML

Deklaracio, elerhetoseg

2010.12.26. 20:43 | Albert81 | Szólj hozzá!

Legalis valtozok(Legal Identifiers):

  • a valtozo kezdodhet betuvel (letter), penz karakterrel(currency character), vagy osszekoto (connecting) karakterrel (pl: '_'), de  nem kezdodhet szammal (number)
  • az elso karakter utan johet betu, penz kar. , osszekoto kar. , vagy szam
  • akarmilyen hosszu lehet egy valtozo
  • nem lehet valtozo neve java kulcsszo (Java keyword)
  • valtozok kis nagy betu erzekenyek (case-sensitive)

 

Java kulcsszok (Java keywords)

abstractbooleanbreakbytecasecatch
charclassconstcontinuedefaultdo
doubleelseextendsfinalfinallyfloat
forgotoifimplementsimportinstanceof
intinterfacelongnativenewpackage
privateprotectedpublicreturnshortstatic
strictfpsuperswitchsynchronizedthisthrow
throwstransienttryvoidvolatilewhile
assertenum    

 

 

 

 

 

 

 Sun-os ajanlasok

  • Osztalyok es interfeszek (Classes and interfaces)

Az elso betu nagybetu. Aztan a belszo szavak elso betuje nagybetu. Ezt neha hivjak  "camelCase" formanak is. Pl.: PrintWriter Osztalyoknal a nevek altalaban fonevek. Pl.: Account

Interfeszeknel altalaban mellekneveket hasznalunk. Pl.: Runnable

  • Metodusok (Methods)

Elso betu kisbetu, aztan a camelCase forma hasznalhato. A nevek altalaban ige-fonev parosok. Pl.: getAccount

  • Valtozok (Variables)

Mint a metodusoknal, camelCase forma. Ugyan ugy kisbetuvel kezdunk. A Sun rovid, ertheto valtozoneveket javasol. Pl.: accountBalance

  • Konstansok (Constants)

A konstansok olyan valtozok, amik static final-kent vannak jelolve. Nagybetuvel irjuk oket, tobb szo eseten alahuzassal elvalasztva. Pl.: MAX_HEIGHT

 

JavaBeans Standards

Ha a valtozo nem boolean, akkor a lekerdezo metodus prefixje 'get'. Pl.: getSize() a size valtozo lekerdezese. A metodusnak public -nak kell lennie, nem lehet arhumentuma, s a visszaadott ertek tipusa meg kell egyezzen a valtozoeval.

Ha a valtozo boolean, akkor a 'get' s az 'is' is alkalmas prefix Pl.: getStopped() vagy isStopped(). Azert szerintem az 'is' gyakoribban hasznalt...

Beallito metodus prefix: 'set' . Pl.: setSize(int size) a size-hoz. A metodusnak public void-nak kell lennie. S az argumentumnak reprezentalnia kell a valtozo tipusat.

Mint latjuk a valtozo elso betuje nagybetus lesz.

Listener-eknel a regisztrallas 'add' prefix-szel van Pl.: addActionListener(),

az eltavoltias 'remove', s a metodusnak 'Listener' szora kell vegzodnie.

Forras file deklaralasi szabajok (Source File Declaration Rules)

Roviden :) : Egy darab public -os osztaly lehet egy forras fileban. Ennek neve meg kell egyezzen a forras file nevevel. Pl.: class Dog {} -> Dog.java

Package - nak ha van, az elso sorban kell lennie.

Import - nak a package s az osztaly deklaracio kozott kell lennie.

Meg van itt egy par dolog, de szerintem ezek egyertemuek (voltak mar eddig is).

 

Nehany szo az osztaly modositokrol (Access, visibility)

  • Default Access

Ha nem all modosito pl az osztaly elott, akkor az default access. Ezt csomag szintu modositonak nevezzuk (package-level access), mivel az osztaly valtozoi, metodusai csak a csomagon belul lathatok.

  • Public Access

Public szo szerepel, mint modosito. Mindeki szamara elerheto. De fontos, hogy ha masik csomagbol akarod hasznalni, akkor importalni kell.

 

Van nehany ugynevezett nonaccess (other) tipusu osztaly modosito. Ezek a final, abstract es a strctfp. Nehany megjegyzes ezekhez is.

Final es abstract soha nem szerepelhet egyutt.

A strctfp kulcsszot csak osztaly s metodus elott lehet hasznalni, valtozo elott sosem. Ha egy osztaly ilyen modositot kap, az azt jelenti, hogy a benne szereplo osszes metodus megfelel a IEEE 754 lebego pontos standard szabvanynak. Lenyeg kb, hogy e nelkul a lebegopontos abrazolas platform fuggo lenne. Ha nem akarod az egesz osztalyt igy hasznalni, akkor metodus ele is teheted... Oszinten szolva en meg eletemben nem hasznaltam sehogy, nem is hiszem, hogy tul gyakori, de modjuk egy felvetelin rakerdezhetnek :)

  • Final Classes

Ha a final kulcsszo szerepel az osztaly elott, akkor azt nem lehet szarmaztatni, azaz nem lehet egy uj osztalyt letrehozni. ( extend (ez az osztaly)). / class can't be subclassed/ Ez arra jo, hogy az osztaly funkcioit tuti ne tegye tonkre senki, garantalt mukodest kapj. Pl.: ilyen a String osztaly.

  • Abstract Classes

Abstarct osztalyt (kulcsszo: abstarct) nem lehet peldanyositani, azaz extendalni kell. Ha az osztaly tartalmaz legalabb egy absztart metodust, akkor maga az osztaly is abstract. Az abstact metodus utan ';' (pontosvesszo, semicolon) szerepel. Pl.:

abstarct class Car {

     public abstact void goFast();

}

 

Interface deklaralas (Declaring an Interface)

 Ha interface -t deklaralsz, akkor tulajdonkeppen megmodod, hogy mit tud csinali, anelkul, hogy megmondanad, hogy hogyan. Az interface 100 %-ban abstract osztaly, ez jar egy ket kovetkezmennyel.

  • minden metodus az interface -ben abstract es public. Ezeket a modositokat nem is kell kitenni, de ki is lehet.
  • minden valtozo alapbol public, static es final, azaz konstans. (not instance variable)
  • interface metodusa nem lehet static
  • mivel a metodus abstact, ezert nem lehet final, strinctfp vagy native

 

Folytatom, amint tudom..

 

Eloszo

2010.12.26. 17:18 | Albert81 | Szólj hozzá!

Sziasztok!

Ide szeretnek egy ket javaval kapcsolatos hasznos infot usszegyujteni. Igazabol azert irom, hogy legyen egy hely, ahol mindig megtalalom, de nagyon remelem, hogy masnak is hasznos lesz.. Ekezetet nem irok, s a helyesirasom se a legjobb :) Bocsi erte!

 

Egyebkent java fejleszto vagyok lassan het eve, ami nem sok, de tobb mint a semmi :)

Ha esetleg extra kerdesed van, tedd fel nyugodtan, ha tudok valaszolok. Ha nem, akkor is igyekszem jelezni, hogy nem tudok :)

 

Hodur Albert

 

Ui.: S persze ha valamit elirok, vagy butasagot beszelek (megesik), kerlek jelezzetek! Akar itt, akar facebookon!

süti beállítások módosítása