Metody třídy Java
Metody třídy Java
Z kapitoly Metody Java jste se dozvěděli , že metody jsou deklarovány v rámci třídy a že se používají k provádění určitých akcí:
Příklad
Vytvořte metodu pojmenovanou myMethod()
v Main:
public class Main {
static void myMethod() {
System.out.println("Hello World!");
}
}
myMethod()
vypíše text (akci), když je
volána . Chcete-li volat metodu, napište název metody následovaný dvěma závorkami () a středníkem ;
Příklad
Uvnitř main
zavolejte
myMethod()
:
public class Main {
static void myMethod() {
System.out.println("Hello World!");
}
public static void main(String[] args) {
myMethod();
}
}
// Outputs "Hello World!"
Statické vs. Nestatické
Často uvidíte programy Java, které mají
atributy a metody buď static
nebo .public
Ve výše uvedeném příkladu jsme vytvořili static
metodu, což znamená, že k ní lze přistupovat bez vytvoření objektu třídy, na rozdíl od public
, ke kterému lze přistupovat pouze objekty:
Příklad
Příklad, který demonstruje rozdíly mezi static
a public
metodami :
public class Main {
// Static method
static void myStaticMethod() {
System.out.println("Static methods can be called without creating objects");
}
// Public method
public void myPublicMethod() {
System.out.println("Public methods must be called by creating objects");
}
// Main method
public static void main(String[] args) {
myStaticMethod(); // Call the static method
// myPublicMethod(); This would compile an error
Main myObj = new Main(); // Create an object of Main
myObj.myPublicMethod(); // Call the public method on the object
}
}
Poznámka: Více o těchto klíčových slovech (nazývaných modifikátory) se dozvíte v kapitole Modifikátory Java .
Přístupové metody s objektem
Příklad
Vytvořte objekt Car s názvem myCar
. Zavolejte metody fullThrottle()
a speed()
na myCar
objektu a spusťte program:
// Create a Main class
public class Main {
// Create a fullThrottle() method
public void fullThrottle() {
System.out.println("The car is going as fast as it can!");
}
// Create a speed() method and add a parameter
public void speed(int maxSpeed) {
System.out.println("Max speed is: " + maxSpeed);
}
// Inside main, call the methods on the myCar object
public static void main(String[] args) {
Main myCar = new Main(); // Create a myCar object
myCar.fullThrottle(); // Call the fullThrottle() method
myCar.speed(200); // Call the speed() method
}
}
// The car is going as fast as it can!
// Max speed is: 200
Příklad vysvětlen
1) Vytvořili jsme vlastní Main
třídu s class
klíčovým slovem.
2) Ve třídě jsme vytvořili
metody fullThrottle()
a .
speed()
Main
3) fullThrottle()
Metoda a
speed()
metoda při volání vytisknou nějaký text.
4) speed()
Metoda přijímá int
parametr nazvaný
maxSpeed
- ten použijeme v 8) .
5) Abychom mohli Main
třídu a její metody používat, musíme vytvořit objekt třídy
Main
.
6) Poté přejděte k main()
metodě, o které již víte, že je to vestavěná metoda Java, která spouští váš program (spustí se jakýkoli kód v main).
7) Pomocí new
klíčového slova jsme vytvořili objekt s názvem
myCar
.
8) Poté na objektu zavoláme
metody fullThrottle()
a
a spustíme program pomocí názvu objektu ( ), za kterým následuje tečka ( ), následovaná názvem metody ( a ). Všimněte si, že do metody přidáme parametr 200 .speed()
myCar
myCar
.
fullThrottle();
speed(200);
int
speed()
Pamatuj si to..
Tečka ( .
) se používá pro přístup k atributům a metodám objektu.
Chcete-li volat metodu v Javě, napište název metody následovaný sadou závorek () a středníkem ( ;
).
Třída musí mít odpovídající název souboru ( Main
a
Main.java ).
Použití více tříd
Jak jsme uvedli v kapitole Třídy , je dobrým zvykem vytvořit objekt třídy a přistupovat k němu v jiné třídě.
Pamatujte, že název souboru java by se měl shodovat s názvem třídy. V tomto příkladu jsme vytvořili dva soubory ve stejném adresáři:
- Main.java
- Druhá.java
Main.java
public class Main {
public void fullThrottle() {
System.out.println("The car is going as fast as it can!");
}
public void speed(int maxSpeed) {
System.out.println("Max speed is: " + maxSpeed);
}
}
Druhá.java
class Second {
public static void main(String[] args) {
Main myCar = new Main(); // Create a myCar object
myCar.fullThrottle(); // Call the fullThrottle() method
myCar.speed(200); // Call the speed() method
}
}
Když jsou oba soubory zkompilovány:
C:\Users\Your Name>javac Main.java
C:\Users\Your Name>javac Second.java
Spusťte soubor Second.java:
C:\Users\Your Name>java Second
A výstup bude:
The car is going as fast as it can!
Max speed is: 200