วันพุธที่ 17 สิงหาคม พ.ศ. 2559

ค่าคงที่

ในบทนี้ คุณจะได้เรียนรู้เกี่ยวกับค่าคงที่ (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 (การเขียนทับ) ได้โดย subclass
  • final กับ class จะทำให้ class นั้นไม่สามารถสือบทอด inherit ได้
final class NoInherit {
    final void noOverride () {
        ...
    }
} 
ข้าง บนเป็นตัวอย่างของคลาสและเมธอด ที่ใช้คำสั่ง final ในการสร้าง อย่างไรก็ตาม คุณจะเรียนเกี่ยวกับการโปรแกรมแบบออบเจ็คในภายหลังสำหรับบทเรียนนี้ มันเป็นพื้นฐานของภาษา Java และสำคัญที่คุณจะต้องรู้
ในบทนี้ คุณได้เรียนรู้เกี่ยวกับค่าคงที่ การสร้างและประโยชน์ในการใช้ของมันในภาษา Java และรู้จักเกี่ยวกับการใช้คำสั่ง final

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Set MongoDB in the windows path environment

  Let’s set MongoDB in the windows environment in just a few steps. Step 1: First download a suitable MongoDB version according to your mach...