เมธอด Java คือชุดของคำสั่งที่จัดกลุ่มเข้าด้วยกันเพื่อดำเนินการ ตัวอย่างเช่น เมื่อคุณเรียกใช้เมธอด System.out.println() ระบบจะเรียกใช้คำสั่งหลายคำสั่งจริง ๆ เพื่อแสดงข้อความบนคอนโซล
วิธีการคงที่
เมธอดสแตติกเรียกอีกอย่างว่าเมธอดของคลาส และเป็นเรื่องปกติในอ็อบเจ็กต์ของคลาส และเมธอดนี้สามารถเข้าถึงได้โดยใช้ชื่อคลาสเช่นกัน
วิธีไม่คงที่
เมธอดของคลาสที่ไม่สแตติกจะเรียกว่าเมธอด non-static หรือเมธอดของอินสแตนซ์
ต่อไปนี้เป็นข้อแตกต่างที่สำคัญระหว่างวิธีคงที่และไม่คงที่
| ซีเนียร์ เลขที่ | คีย์ | คงที่ | ไม่คงที่ |
|---|---|---|---|
| 1 | การเข้าถึง | เมธอดแบบสแตติกเข้าถึงได้เฉพาะสมาชิกสแตติกและไม่สามารถเข้าถึงสมาชิกที่ไม่สแตติกได้ | เมธอดที่ไม่คงที่สามารถเข้าถึงทั้งสมาชิกแบบสแตติกและไม่สแตติก |
| 2 | การผูก | เมธอดแบบคงที่ใช้การรวมเวลาหรือการผูกไว้ล่วงหน้า | วิธีการแบบไม่คงที่ใช้การเชื่อมโยงรันไทม์หรือการผูกแบบไดนามิก |
| 3 | กำลังแทนที่ | วิธีสแตติกไม่สามารถแทนที่ด้วยการผูกเวลาคอมไพล์ได้ | วิธีที่ไม่คงที่สามารถแทนที่ด้วยการผูกแบบไดนามิกได้ |
| 4 | การจัดสรรหน่วยความจำ | วิธีการแบบคงที่ใช้พื้นที่น้อยลงและการจัดสรรหน่วยความจำจะเกิดขึ้นเพียงครั้งเดียว | วิธีการที่ไม่คงที่อาจใช้พื้นที่มากขึ้น การจัดสรรหน่วยความจำจะเกิดขึ้นเมื่อมีการเรียกใช้เมธอดและจัดสรรคืนหน่วยความจำเมื่อดำเนินการเมธอดอย่างสมบูรณ์ |
| 5 | คำหลัก | มีการประกาศวิธีการแบบคงที่โดยใช้คำหลักแบบคงที่ | วิธีปกติไม่จำเป็นต้องมีคีย์เวิร์ดพิเศษใดๆ |
ตัวอย่างวิธีการแบบคงที่และแบบไม่คงที่
JavaTester.java
public class JavaTester {
public static void main(String args[]) {
Tiger.roar();
Tiger tiger = new Tiger();
tiger.eat();
}
}
class Tiger {
public void eat(){
System.out.println("Tiger eats");
}
public static void roar(){
System.out.println("Tiger roars");
}
} ผลผลิต
Tiger roars Tiger eats