Easter Pastel Eggs - wathinee . reru . ac . th

Download Report

Transcript Easter Pastel Eggs - wathinee . reru . ac . th

Object-Oriented
Programming
การเขียนโปรแกรมเชิงวัตถุ
Wathinee Duang-onnam
FB : AJ Wathinee
Email: [email protected]
คำอธิบำยรำยวิชำ :
 แนวคิดพืน้ ฐำนเกีย่ วกับกำรออกแบบ และพัฒนำโปรแกรมเชิ ง
วัตถุโครงสร้ ำงของภำษำเชิงวัตถุ
 เช่ น คลำส ออปเจ็ค เมธอด
 อินเตอร์ เฟส
 แพคแกจ
 กำรสื บทอดคลำส
 เอนแคปซูเลชั่น
 และพอริมอร์ ฟิซึม
เอพีไอของภำษำทีใ่ ช้ ในกำรเขียนโปรแกรมเชิงวัตถุ
#
สิ่ งที่จะเรี ยนรู้ใน Week นี้
 Class
 Attribute
 Object
 Method แบบคืนค่า(return type)
(void)  วันนี้เรี ยนเรื่ องนี้จา้
และไม่คืนค่า
#
Class
คลาส (Class) - ประเภทของวัตถุ เป็ นการกาหนดว่า
วัตถุ จะประกอบไปด้วย ข้อมูล(data) หรื อ
คุณสมบัติ(property) และ พฤติกรรม
(behavior)หรือกำรกระทำ(method) อะไรบ้าง
#
Method
- Method ชนิดไม่ส่งค่ากลับ ,ไม่ return ค่า,void
- Method ชนิดส่ งค่ากลับ ,return ค่า
#
Class diagram
Class
Attribute(Data)
Method
Class Name
AttributeName
MethodName ( )
#
ตัวอย่าง class diagram ของ Rectangle
Class Name
AttributeName
MethodName ( )
#
public +
ไม่เขียนหรื อว่าง
protected #
private -
[modifier] class ชื่อClass
{
// Attribute_Member
// Method_Member
}
class คือคียเ์ วิร์ดสาหรับกาหนดคลาส
Class_Name
คือชื่อคลาส
Attribute_Member Data หรื อข้อมูลในคลาส
Method_Member เมดธอดในคลาส
สัญลักษณ์ { }
คือของเขตของคลาส
#
กำรสร้ ำง METHOD แบบไม่ ส่งค่ ำกลับ
กำรสร้ ำง METHOD แบบไม่ คนื ว่ ำ
กำรสร้ ำง METHOD แบบ VOID
#
Class Rectangle (สี่ เหลี่ยม)
 คุณสมบัติของ Rectangle (Attribute)
กว้าง
ยาว
สี
 กำรกระทำคือ (method)
แสดงผลข้อมูลสี่ เหลี่ยม
คานวณหาพื้นที่
เพิม่ ค่าความกว้าง
ดึงค่าความกว้าง
เพิ่มค่าความยาว
ดึงค่าความยาว
เพิ่มค่าสี
ดึงค่าสี
#
Class สี่ เหลีย่ ม
การสร้าง Class Rectangle (สี่ เหลี่ยม)
กว้าง : double
ยาว : double
สี : String
แสดงผลข้อมูลสี่ เหลี่ยม () : void
คานวณหาพื้นที่(w : double,h :double): double
เพิ่มค่าความกว้าง(w: double) : void
ดึงค่าความกว้าง () : double
เพิ่มค่าความยาว (h : double) : void
ดึงค่าความยาว () : double
เพิ่มค่าสี (c : String) : String
ดึงค่าสี () : dobule
#
เมธรอด(Method Member)
[modifier] ชนิดของข้อมูลที่จะส่ งกลับออกไป ชื่อเมธอด ([อาร์กิวเมนต์])
{
[รายละเอียดการทางานในเมธอด ]
}
• Argument คือช่องทางสาหรับการผ่านข้อมูลเพื่อส่ งให้กบั เมธ
รอดใช้ในการทางาน
• สั ญลักษณ์ { และ } เป็ นเครื่ องหมายบ่งบอกขอบเขตของเมธรอด
• ถ้าไม่มีขอ้ มูลที่จะส่ งกลับก็ให้กาหนดค่าเป็ น “void”
#
ตัวอย่าง method ไม่ return ค่า
[modifier] ชนิดของข้อมูลที่จะส่ งกลับออกไป ชื่อเมธอด ([อาร์กิวเมนต์])
{
[รายละเอียดการทางานในเมธอด ]
}
public void testMehod()
{
System.out.print(“test”);
}
#
ตัวอย่าง method แบบ return ค่า (1)
[modifier] ชนิดของข้อมูลที่จะส่ งกลับออกไป ชื่อเมธอด ([อาร์กิวเมนต์])
{
[รายละเอียดการทางานในเมธอด ]
}
public String testMehod()
{
String x=“HI”;
return x;
}
#
ตัวอย่าง method แบบ return ค่า (2)
[modifier] ชนิดของข้อมูลที่จะส่ งกลับออกไป ชื่อเมธอด ([อาร์กิวเมนต์])
{
[รายละเอียดการทางานในเมธอด ]
}
public int testMehod2()
{
return 2+4;
}
#
ตัวอย่าง
class Rectangle{
double width;
double height;
void showData(){
System.out.print(“ สี่ เหลี่ยมกว้าง ”+width);
System.out.print(“ สี่ เหลี่ยมยาว ”+height);
}
}
#
ตัวอย่าง
class Rectangle{
double width;
double height;
public void setWidth(double w){
width=w;
}
}
#
ตัวอย่าง
class Rectangle{
double width;
double height;
public double getArea(){
return width*height;
}
}
#
ตัวอย่าง
class Rectangle{
double width;
double height;
public double getWidth(){
return width;
}
}
#
class
class ชื่อคลาส{
attribute1;
attribute2;
method1(){
//วิธีการทางาน
}
method2(){
//วิธีการทางาน
}
}
attribute
method
#
class
class ชื่อคลาส{
method1(){
//วิธีการทางาน
}
method2(){
//วิธีการทางาน
}
attribute1;
attribute2;
}
method
attribute
#
#
แสดงข้อมูลสี่ เหลี่ยมมีความกว้าง 40.00 มีความยาว 30.00
พื้นที่สีเหลี่ยมคือ : 2000.0
#
ฝึ กปฏิบตั ิ
1.ให้นกั ศึกษานา class ที่สงั่ ให้เป็ นการบ้าน ชัว่ โมงก่อนนามา
สร้าง method ให้สมบูรณ์
- ทั้งแบบ return ค่า
- และ แบบ Void
2.สร้าง class ขึ้นมาทดสอบเรี ยก class ที่สร้างขึ้น
สรุ ปจะมี 2 class (คลาสต้นแบบและคลาสที่เรี ยกใช้งาน)
#