บทที่ 3 Class and Object (1) การสร้างและการใช้งานคลาส w3_000.rar ข้อ Q1,4,6,8 as3_000.rar ข้อ 7,11,13 บทที่ 3 Class and Object (1)
โปรแกรมเชิงวัตถุ (Object Oriented Language: OOP) มองส่วนต่างๆ เป็นวัตถุหรือออบเจ็กต์ที่ไม่ขึ้นต่อกัน แต่สามารถทำงานร่วมกัน แต่ละออบเจ็กต์ คือขอบเขตของงานส่วนย่อยที่เป็นอิสระต่อกัน
คลาส (Class) และออบเจ็กต์ (Object) คลาส คือ สิ่งที่ใช้อธิบายลักษณะและความสามารถของออบเจ็กต์ เปรียบได้กับแม่แบบของออบเจ็กต์ ออบเจ็กต์ คือ สิ่งต่าง ๆ รอบตัว ซึ่งมีคุณลักษณะ (Attribute) และความสามารถในการทำงาน (Method) ตัวอย่างออบเจ็กต์ เช่น คน, รถยนต์, เครื่องคอมพิวเตอร์ เป็นต้น
ตัวอย่างคลาส ให้ภาษีเป็นคลาส คุณลักษณะของภาษี คือ อัตราภาษี, จำนวนเงินภาษีที่ต้องจ่าย ส่วนการทำงานคือ การคำนวณจำนวนเงินภาษีที่ต้องจ่าย
ขั้นตอนการใช้งานคลาส การประกาศคลาส การประกาศแอตทริบิวต์ การประกาศเมธอด การประกาศออบเจ็กต์ การเข้าถึงสมาชิกของคลาส
การประกาศคลาส [modifier] class ClassName { [AttributeName] [MethodName] } โดยที่ modifier เป็นคีย์เวิร์ดที่กำหนดคุณสมบัติการเข้าถึงคลาส ClassName เป็นชื่อคลาส AttributeName เป็นส่วนของการประกาศแอตทริบิวต์ MethodName เป็นส่วนของการประกาศเมธอด
การประกาศแอตทริบิวต์ [modifier] dataType AttributeName; โดยที่ modifier เป็นคีย์เวิร์ดที่กำหนดคุณสมบัติ การเข้าถึงแอตทริบิวต์ dataType เป็นชนิดข้อมูลของแอตทริบิวต์ AttributeName เป็นชื่อแอตทริบิวต์
การประกาศเมธอด [modifier] return_type Methodname ([parameter]) { [method_body] return varValue; } โดยที่ modifier เป็นคีย์เวิร์ดที่กำหนดคุณสมบัติการเข้าถึงเมธอด return_type เป็นชนิดของข้อมูลที่เมธอดจะส่งค่ากลับ ในกรณีที่ไม่มีการส่งค่ากลับ ให้กำหนดเป็น void MethodName เป็นชื่อเมธอด parameter เป็นตัวแปรที่ใช้ในการรับข้อมูล method_body เป็นชุดคำสั่งการทำงานของเมธอด varValue เป็นค่าที่ต้องการส่งค่ากลับ ในกรณีที่กำหนดให้ return_type เป็น void จะไม่มีคำสั่ง return
การประกาศออบเจ็กต์ ClassName ObjectName; และสามารถสร้างออบเจ็กต์ได้ตามรูปแบบดังนี้ ObjectName = new ClassName(); หรือ ClassName ObjectName = new ClassName(); โดยที่ ClassName เป็นชื่อของคลาสที่ใช้สร้างออบเจ็กต์นั้น ObjectName เป็นชื่อออบเจ็กต์ที่ประกาศใช้งาน
การเข้าถึงสมาชิกของคลาส ObjectName.AttributeName; โดยที่ ObjectName เป็นชื่อออบเจ็กต์ AttributeName เป็นชื่อแอตทริบิวต์ที่ต้องการใช้งาน ObjectName.MethodName ([argument]); หรือ dataType MethodValue = ObjectName.MethodName ([argument]); MethodName เป็นชื่อเมธอดที่ต้องการใช้งาน argument เป็นค่าที่ต้องการส่งผ่านไปให้เมธอดที่ต้องการใช้งาน dataType เป็นชนิดข้อมูลของเมธอดที่มีการคืนค่า MethodValue เป็นตัวแปรที่ใช้เก็บค่าที่ได้จากการคืนค่าของเมธอด
โปรแกรมที่ 1 (1) จงเขียนโปรแกรมรับข้อมูลราคาสินค้า เพื่อคำนวณราคารวม จากนั้นแสดงผลราคาสินค้าและราคารวมทางจอภาพ (กำหนดให้ราคารวม = ราคาสินค้า + ภาษี 7%)
โปรแกรมที่ 1 (2) import java.util.Scanner; public class ex1 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print("Enter product price >>> "); double productPrice = scan.nextDouble(); double totalPrice = (productPrice) + 0.07 * productPrice; System.out.println("product price = " + productPrice + " baht"); System.out.println("total price = " + totalPrice + " baht"); }