พื้นฐานของ Java Static Method, Class, Variable และ Block

เผยแพร่แล้ว: 2019-12-13
พื้นฐานของ Java Static Methods และ Variables

สแตติกใน Java คืออะไร?

  • คำหลักแบบสแตติกสามารถใช้กับคลาส ตัวแปร เมธอด และบล็อก
  • สมาชิกแบบคงที่ไม่ได้อยู่ในอินสแตนซ์ใด ๆ ที่เฉพาะเจาะจง
  • สมาชิกแบบคงที่เป็นของชั้นเรียนเท่านั้น
  • เมื่อคุณทำให้สมาชิกเป็นแบบคงที่ คุณจะสามารถเข้าถึงได้โดยไม่ต้องมีวัตถุใดๆ

คุณมีคำถามด้านล่างหรือไม่?

  • คุณช่วยเขียนแนวทางปฏิบัติที่ดีที่สุดของ Java static method ได้ไหม?
  • วิธีสแตติก Java ในอินเทอร์เฟซคืออะไร
  • มีคำถามเกี่ยวกับวิธีการสแตติก Java เทียบกับซิงเกิลตัน?
  • วิธีสแตติก Java เทียบกับประสิทธิภาพของวิธีอินสแตนซ์
  • เมธอดและตัวแปรสแตติกของ Java
  • วิธีการแบบคงที่ของ Java กับแบบไม่คงที่
  • วิธีการแบบคงที่ของ Java ในคลาสนามธรรม

คำหลักคงที่สามารถใช้ได้ใน 3 สถานการณ์:

  • ตัวแปรคงที่
  • วิธีการแบบคงที่
  • บล็อกคงที่ของรหัส

ตัวแปรคงที่ (“คงที่” คำสำคัญ = ตัวแปรคลาส)

java-static-method-introduction-and-complete-tutorial

ใน Java Variables สามารถประกาศได้ด้วยคีย์เวิร์ด “ static

ตัวอย่าง: static int y = 0;

เมื่อมีการประกาศตัวแปรด้วยคีย์เวิร์ด static จะเรียกว่า class variable อินสแตนซ์ทั้งหมดใช้สำเนาของตัวแปรเดียวกัน สามารถเข้าถึงตัวแปรคลาสได้โดยตรงกับคลาส โดยไม่ต้องสร้างอินสแตนซ์

ไม่มีคีย์เวิร์ด "คงที่" = ตัวแปรอินสแตนซ์

หากไม่มี static keyword จะเรียกว่า instance variable และแต่ละอินสแตนซ์ของคลาสจะมีสำเนาของตัวแปรเป็นของตัวเอง

ตัวอย่าง: คงที่ int crunchify_variable_name ;

  • ตัวแปรสแตติกถูกใช้ร่วมกันในทุกอินสแตนซ์ของคลาส
  • หนึ่งในเหตุผลหลักที่คุณต้องการเมื่อต้องการจัดการหน่วยความจำจำนวนมาก
  • สำหรับตัวแปรสแตติกทั้งหมด – จะมีเพียงสำเนาเดียวที่คุณสามารถใช้ได้
  • คุณไม่จำเป็นต้องมีคลาสอ็อบเจ็กต์เพื่อเข้าถึงตัวแปรสแตติก
    • เพียงแค่ใช้โดยตรง คุณไม่จำเป็นต้อง object.StaticVariable

บล็อกแบบคงที่คืออะไร?

สแตติกบล็อก เป็นบล็อกของคำสั่งภายใน Java class ที่จะดำเนินการเมื่อโหลดคลาสใน JVM เป็นครั้งแรก

คุณสามารถแทนที่วิธีการส่วนตัวใน Java ได้หรือไม่?

  • ดีไม่มี วิธีส่วนตัวไม่สามารถแทนที่ได้ เนื่องจากไม่สามารถใช้นอกชั้นเรียนได้

เหตุใดเราจึงไม่สามารถแทนที่วิธีการแบบคงที่ใน Java ได้

  • วิธีสแตติกไม่สามารถแทนที่ได้เนื่องจากเป็นส่วนหนึ่งของคลาสแทนที่จะเป็นอ็อบเจกต์

เราสามารถเข้าถึงตัวแปรที่ไม่คงที่ในบริบทคงที่ได้หรือไม่?

  • เพื่อให้สามารถเข้าถึงตัวแปรที่ไม่คงที่จากวิธีการแบบคงที่ของคุณ พวกเขาจะต้องเป็นตัวแปรสมาชิกแบบคงที่

รายละเอียดเกี่ยวกับวิธีการคงที่

  • จะระบุได้อย่างไร? ตรวจสอบสิ่งนี้ก่อน คุณต้องการคลาสอ็อบเจ็กต์เพื่อเข้าถึงเมธอดแบบคงที่หรือไม่? หากคุณไม่ต้องการวัตถุก็เป็นวิธีคงที่
  • คุณต้องใช้คำหลักแบบคงที่เพื่อระบุวิธีการแบบคงที่
  • ควรใช้คำสำคัญแบบคงที่หากวิธีการนั้นจะไม่เปลี่ยนแปลงตลอดทั้งโครงการของคุณในขณะใช้งานจริง
  • คุณไม่สามารถแทนที่วิธีการแบบคงที่

ลองมาดูตัวอย่างด้านล่าง:

ตัวอย่าง-1:

ตรวจสอบคำอธิบายใน above code block เราต้องสร้างอินสแตนซ์ของ Class เพื่อเข้าถึงวิธีการที่ไม่คงที่

ตัวอย่าง-2:

ตอนนี้มาทำแบบทดสอบกัน:

เอาท์พุท:

ฉันหวังว่าคุณจะได้รับข้อมูลที่ดีเกี่ยวกับวิธีการคงที่ ตัวแปร และบล็อก

แจ้งให้เราทราบหากคุณประสบปัญหาใดๆ ในการใช้งานโปรแกรมข้างต้น หรือมีปัญหาในการทำความเข้าใจคำหลักแบบคงที่ใน Java