ค่าคงที่

ในบทนี้ คุณจะได้เรียนรู้เกี่ยวกับค่าคงที่ (constants) ในภาษา Java ตั้งแต่วิธีการประกาศค่าคงที่ การใช้งาน และเรียนรู้เกี่ยวกับคำสั่ง final

ค่าคงที่ คืออะไร

ค่าคงที่ คือตัวแปรที่ใช้อ้างอิงข้อมูลของค่าๆ หนึ่งที่ไม่ถูกเปลี่ยนแปลง และไม่สามารถเปลี่ยนแปลงได้ การใช้ค่าคงที่นั้นมีประโยชน์ในการเขียนโปรแกรม มันสามารถทำเข้าใจได้ว่าตัวแปรหรือค่านั้นหมายถึงอะไร ยกตัวอย่างเช่น เมื่อเราอยากจะบอกถึงแรงโน่มถวงของโลก เรามักจะพูดว่าค่า g (gravity) เรามักจะไม่พูดว่าค่า 9.8 ถึงแม้ว่ามันมีค่าเท่ากับ 9.8 ก็ตาม แนวคิดนี้ได้นำมาใช้สำหรับการสร้างค่าคงที่ในการเขียนโปรแกรมภาษา Java เช่นกัน

รูปแบบในการประกาศค่าคงที่นั้นคล้ายคลึงกับการประกาศตัวแปรทั่วไป แต่มันจะขึ้นต้นด้วยคำสั่ง final เพื่อบอกคอมไพเลอร์ว่ามันเป็นตัวแปรค่าคงที่

final dataType constantName = value;

ในการประกาศค่าคงที่ คุณต้องกำหนดค่าให้กับมันในตอนแรกเสมอ และไม่สามารถเปลี่ยนแปลงค่าของมันได้ภายหลัง ไม่เช่นนั้นการคอมไพล์โปรแกรมของคุณจะผิดพลาด

สร้างและใช้งานค่าคงที่ในภาษา Java

ต่อไปมาดูตัวอย่างการประกาศตัวแปรค่าคงที่ และการใช้งาน โดยโปรแกรมในตัวอย่างจะเป็นโปรแกรมในการหา พื้นที่ เส้นรอบวง ปริมาตร และพื้นที่ผิดในสามมิติ ของวงกลม โดยเราทราบรัศมีของมัน

public class Constant {

public static void main (String[] args) {
final float PI = 3.14f;

int r = 8;

System.out.println("Circle with radius: " + r );
System.out.println("Area = " + (PI * r * r ));
System.out.println("Circumference = " + (2 * PI * r ));
System.out.println("Volume = " + (4.0f / 3.0f * PI * r * r * r));
System.out.println("Surface Area = " + (4.0f * PI * r * r ));

r = 10;

System.out.println("\nCircle with radius: " + r );
System.out.println("Area = " + (PI * r * r ));
System.out.println("Circumference = " + (2 * PI * r ));
System.out.println("Volume = " + (4.0f / 3.0f * PI * r * r * r));
System.out.println("Surface Area = " + (4.0f * PI * r * r ));
}
}

ในตัวอย่างด้านบน เราได้ประกาศตัวแปรค่าคงที่ในคำสั่ง final float PI = 3.14f; โดยตัวแปรนี้เก็บค่า floating-point ของค่า PI เพื่อนำไปใช้ในการคำนวณหารายละเอียดของวงกลม เราสามารถใช้ identifier PI แทนค่า 3.14 ได้ทั้งหมด และผลลัพธ์ของโปรแกรมด้านล่าง

Circle with radius: 8
Area = 200.96
Circumference = 50.24
Volume = 2143.5735
Surface Area = 803.84

Circle with radius: 10
Area = 314.0
Circumference = 62.800003
Volume = 4186.667
Surface Area = 1256.0

ครั้งต่อไปคุณคิดว่ามันไม่ละเอียดเพียงพอ คุณสามารถเปลี่ยนค่าของ PI ได้ที่เดียว โดยเปลี่ยนแค่เป็น final float PI = 3.14159f; ค่า PI และค่าของ PI ทั้งหมดจะเปลี่ยนไป และจะได้ผลลัพธ์ดังนี้ ซึ่งขึ้นกับค่า PI ของคุณ

Circle with radius: 8
Area = 201.06177
Circumference = 50.26544
Volume = 2144.659
Surface Area = 804.2471

Circle with radius: 10
Area = 314.159
Circumference = 62.831802
Volume = 4188.787
Surface Area = 1256.636

คำสั่ง final

คำสั่ง final หรือ final modifier นั้น นอกจากจะใช้กับตัวแปรแล้ว ยังใช้เกี่ยวกับการเขียนโปรแกรมแบบออบเจ็คด้วย โดยเมื่อใช้

  • final กับ method จะทำให้ method ไม่สามารถ override (การเขียนทับ) ได้โดย sub class
  • final กับ class จะทำให้ class นั้นไม่สามารถสือบทอด inherit ได้
final class NoInherit {
final void noOverride () {
...
}
}

ข้างบนเป็นตัวอย่างของคลาสและเมธอด ที่ใช้คำสั่ง final ในการสร้าง อย่างไรก็ตาม คุณจะเรียนเกี่ยวกับการโปรแกรมแบบออบเจ็คในภายหลัง มันเป็นพื้นฐานของภาษา Java และสำคัญที่คุณจะต้องรู้

ในบทนี้ คุณได้เรียนรู้เกี่ยวกับค่าคงที่ การสร้างและประโยชน์ในการใช้ของมันในภาษา Java และรู้จักเกี่ยวกับการใช้คำสั่ง final


บทความเกี่ยวกับ ค่าคงที่

ค่าคงที่ ในภาษา C

ค่าคงที่ (constant) เป็นตัวแปรที่ไม่สามารถเปลี่ยนแปลงค่าในภายลังได้ ค่าของตัวแปรค่าคงที่จะต้องถูกกำหนดพร้อมกับการประกาศตัวแปรเสมอ ค่าคงที่สามารถเป็นข้อมูลประเภ...

ค่าคงที่ ในภาษา C#

ค่าคงที่ เป็นตัวแปรที่ค่าของมันไม่สามารถเปลี่ยนแปลงได้หลังจากที่ถูกสร้างขึ้น และค่าของมันจะต้องถูกกำหนดให้ในตอนที่สร้างทันที เนื่องจากมันคือตัวแปรประเภทหนึ่ง กา...

ค่าคงที่ ในภาษา Visual Basic

ค่าคงที่ (constants) เป็นตัวแปรหรือประเภทของข้อมูลที่ไม่สามารถเปลี่ยนแปลงค่าได้ในภายหลัง นั่นหมายความว่ามันจะต้องกำหนดค่าก่อนการทำงานของคอมไพเลอร์เสมอ ค่าคงที่ท...

ค่าคงที่ ในภาษา C++

ค่าคงที่ (constant) เป็นตัวแปรประเภทหนึ่งที่ไม่สามารถเปลี่ยนแปลงค่าได้ในขณะที่โปรแกรมทำงาน นี่หมายความว่าเราจะต้องกำหนดค่าให้ตัวแปรในเวลาที่คอมไพเลอร์ทำงานหรือใ...

ค่าคงที่ ในภาษา PHP

ค่าคงที่ (Constants) คือค่าของ Literal ใดๆ ที่ถูกกำหนดให้กับตัวแปรค่าคงที่ ค่าคงที่จะไม่สามารถเปลี่ยนแปลงได้ภายในโปรแกรมและเป็นได้เพียงค่าเดียวตั้งแต่โปรแกรมเริ...