Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความแตกต่างระหว่างวิธีการแบบคงที่และแบบไม่คงที่ใน Java


เมธอด 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