0041 metoder
Demonstration av metodanrop och metoddefinitioner.
Metoddefinition
Första raden är metodhuvud. Metodkroppen är det som följer inom klamrar..
accessmodifierare returdatatyp metodnamn(datatyp parameter)
{
//metodkropp
}
Accessmodifierare är public eller private.
Returdatatyp är en primitiv datatyp eller en klassdatatyp.
Metodnamn skrivs som ett ord med lowerCamelCase.
Parametrarna kan utelämnas.
Metodanrop
Metodanrop kan ske i konstruktorer och metoder.
Anrop av metod utan parameter.
metodnamn();
Anrop av metod med en eller två parametrar.
metodnamn(värde);
metodnamn(värdeEtt, värdeTvå);
Värde är av den datatyp som anges i metodhuvudet.
Korta kodexempel
Korta exempel som bara visar metodhuvuden och exempel på giltigt anrop. Koden är ej i ett sammanhang.
// metodhuvud
public void move(int distance)
// anrop
move(20);
// metodhuvud
public boolean isAtEdge()
// anrop
isAtEdge();
// metodhuvud
public void setLocation(int x, int y)
// anrop
setLocation(100, 200);
Kodexempel
public class Mouse extends Actor
{
public void act()
{
//Metoden move ärvs från Actor.
//Metodhuvudet ser ut som följer:
//public void move(int distance)
move(2); //anrop
//Metoden checkEdge är definierad nedan.
checkEdge(); //anrop
}
//definition av metoden checkEdge
//metodhuvud följt av kropp inom { }
private void checkEdge()
{
//Metoden isAtEdge ärvs från Actor.
//Metodhuvudet ser ut som följer:
//public boolean isAtEdge()
if (isAtEdge()) //anrop i if-sats
{
//Metoden turn ärvs från Actor.
//Metodhuvudet ser ut som följer:
//public void turn(int amount)
turn(27);
}
}
}