Første
Oversigt
Klassedefinitioner - adgangskontrol serie, Planche nr. 22
Print af Klassedefinitioner - adgangskontrol
1 : Klassedefinitioner - adgangskontrol
Klasser
klassevariable (static)
automatiske variable (local)
modifiers
2 : Modifiers
abstract
final
static
native
public
protected
package ("friendly")
private
3 : Abstract og Final
Abstract
Klasser og metoder
Du SKAL udvide abstract-erklærede
Final
Klasser, metoder og data
Du KAN IKKE udvide final-erklærede
4 : Abstract
Klasser
abstract-klasser kan ikke realisere et objekt
Kun en ikke-abstrakt underklasse kan realiseres
En klasse, der ikke implementere et interface helt, skal være abstract
Metoder
abstract-metoder har ikke nogen blok
eks.: abstract void skiftGear();
Hvis blot en metode er abstract må hele klassen også være det!
5 : Abstract eksempel:
6 : Final
En final class må ikke udvides
En final metode må ikke overskrives
En final variabel må ikke ændres
... Når den først er initialiseret!
7 : Static data
8 : Static metoder
static metoder kan kun læse og skrive static variable i samme klasse!
static metoder kan kun kalde static metoder i samme klasse!
static metoder har ikke nogen this-reference
static metoder kan kaldes via klassenavn eller objektreference
Men sidstnævnte frarådes
9 : Native metoder
native metoder kalder ud af JVM
f.eks. til C-biblioteker
svarer til abstract definitioner (uden definitionsblok)
native metoder bruges KUN i nødstilfælde...
10 : Adgangkontrol - access modifiers
indlæse klasser
læse/skrive variable
kalde metoder
11 : De 4 p'er
Package ("venlig")
public
private
protected
12 : Package
13 : Private
14 : Public
15 : Protected
16 : Adgangsrækkefølge
1. private
2. "friendly"
3. protected
4. public
17 : Polymorfing!!!
Et navn - mange udtryk
Navnet er et metode-navn
Erklæret i superklasser eller interfaces
Udtrykket er metode-implementeringen
Defineret i aktuel klasse eller underklasser
18 : Vores cykel-eksempel
19 : Modelering i software
20 : Skift gear!
21 : Adgang og overskrivning
22 : Main metoden
public static void main (String argv[]);
public så runtime-systemet kan finde metoden
static, så der ikke skal realiseres objekter først
void, fordi der ikke returneres status
main er metodens navn
String-vektoren er parametre EFTER klassenavn:
© 2000 BLA*net - Leif E. Andersen, leander@blanet.dk
Første
Oversigt
Klassedefinitioner - adgangskontrol serie, Planche nr. 22