Download บทที่ 1 - FooGameLib

Document related concepts
no text concepts found
Transcript
CS@KKU
Java Summer Camp 2011
•Day 1 - 1
•Java Technology
•Object Oriented Programming Concepts
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
1
ข้ อตกลง และ ลักษณะการอบรม
 เป้าหมายหลัก : ให้ผเู ้ ข้าอบรมเขียนโปรแกรมภาษา Java ได้จริ ง
 การอบรมเน้นปฏิบตั ิ 70 ทฤษฎี 30
 Student Centered
 Project Based Learning
ข้ อตกลง :
 Group Learning
ระหว่างการอบรม ห้ามเล่นเกมส์
 แบ่งกลุ่มงานกลุ่มละ 4 คน
 สร้าง 2D Java Game
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
2
ประวัติของ Java
 ปี 1991 พัฒนาซอฟต์แวร์ควบคุมอุปกรณ์ขนาดเล็ก
ซึ่ งได้ผลลัพธ์คือ ภาษาโอ๊ค (Oak)
 ปี 1993 ภาษาโอ๊คถูกปรับปรุ งใช้สร้างเว็บแอพพลิเคชัน่
James Gosling
พร้อมกับสร้างเว็บเบราว์เซอร์ (web browser)
 ปี 1995
บริ ษทั ซันได้เปิ ดตัวภาษาจาวา (Java) (ภาษาโอ๊คเดิม)
พร้อมกับเว็บเบราว์เซอร์ ที่รองรับภาษานี้ ชื่อว่า ฮอตจาวา (HotJava)
ได้รับการสนับสนุนจากบริ ษทั ใหญ่ท้ งั เน็ตสเคบ (Netscape), ไมโครซอฟต์
(Microsoft), และ ไอบีเอ็ม (IBM)
บริ ษทั ซันได้เริ่ มแจกจ่าย Java development Kit (JDK) ซึ่ งเป็ นชุดพัฒนา
โปรแกรมภาษาจาวาในอินเตอร์เน็ต
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
3
คาถามความรู้รอบตัว
ปัจจุบนั JAVA เป็ น ลิขสิ ทธิ์ของบริ ษทั ใด
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
4
Java Technology
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
5
Programming
คอมพิวเตอร์ถูกใช้เพื่อทาอะไร?
อะไรที่ทาให้คอมพิวเตอร์ทางานได้
?
?
?
มีอาชีพ หรื อ บุคคลใดที่เกี่ยวกับ คอมพิวเตอร์ บ้าง
อนาคต คุณจะเป็ นอะไร ?
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
6
Programmer
เป้าหมายของอบรมนี้ เพื่อเรี ยนรู ้การเป็ น Java Programmer
แต่กย็ งั มีบทบาทอื่น ๆ ที่ตอ้ งเรี ยนรู ้ เช่น
 Software Designer
 Software Tester
 Users
Graphics Designer
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
7
Program คืออะไร ?
“ลาดับของคาสัง่ ที่สามารถถูกประมวลผลได้โดยคอมพิวเตอร์เพื่อใช้ใน
การแก้ปัญหาบางอย่าง”
การเขียนโปรแกรม เรี ยกว่า Coding
 ภาษาที่ใช้เขียนโปรแกรมเรี ยกว่า Programming Language
 รหัสโปรแกรมที่เขียนเรี ยกว่า Source Code
 ภาษาของคอมพิวเตอร์เรี ยกว่า Machine Language
 รหัสโปรแกรมนี้เรี ยกว่า Binary Code
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
8
คุณสมบัตขิ อง Software ที่ดี
Correctness
Robustness
Interface Usability
Simplicity
Presentation and Document
Efficiency
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
9
Programming Languages
Structural programming
การเขียนโปรแกรมเชิงโครงสร้าง
Object-Oriented programming (OOP)
การเขียนโปรแกรมเชิงวัตถุ
Logical programming
การเขียนโปรแกรมเชิงตรรก
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
10
Programming กับการเขียนนิยาย
การเขียนโปรแกรมก็คล้ายกับการแต่งนิยาย
การแต่งนิยายแบบโครงสร้าง
ดาเนินเรื่ องเป็ นขั้นตอน
เหมาะกับเรื่ องสั้นที่ไม่ซบั ซ้อน
การแต่งนิยายแบบ Object-Oriented
ออกแบบตัวละคร สภาพแวดล้อม
ดาเนินเรื่ องโดยสร้างสถานการณ์
เหมาะกับนิยายเรื่ องยาวที่สลับซับซ้อน
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
11
Structural Programming languages
เขียนโค้ดเป็ นลาดับขั้นตอน สาหรับการแก้ปัญหา โดยคาสัง่ จะทางาน
จากบนลงล่าง
บางครั้งก็ทาซ้ า ๆ หรื อ มีการใช้เงื่อนไข ในการตัดสิ นใจ ซึ่งโดยปกติ
แล้วจะมีโครงสร้างของโปรแกรม 3 ขั้น คือ
1. Input คือ ขั้นการนาข้อมูลเข้า เช่นรับข้อมูลจากผูใ้ ช้
2. Process คือ ขั้นการประมวลผล คานวณ หรื อ ตัดสิ นใจ
3. Output คือ การแสดงผล
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
12
Object-Oriented Programming
ใช้แนวคิดว่าโปรแกรมมีคุณสมบัติเป็ น Object
 สิ่ งที่จบั ต้องได้ เป็ น รู ปธรรม
 สิ่ งที่จบั ต้องไม่ได้ เป็ น นามธรรม
การหาว่ามี Object หรื อสิ่ งใดในปัญหานั้นบ้าง และ มีความสัมพันธ์กนั
อย่างไร
การนิยามคุณลักษณะ สถานะ และ พฤติกรรมของ Object
ควบคุมให้ Object ทางานร่ วมกัน
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
13
ข้ อดีของ OOP
เพิ่มคุณภาพของงานขนาดใหญ่ และ ใช้เวลาน้อยกว่า
ใช้แรง และ คนน้อยกว่า
ลดค่าใช้จ่ายในการดูแล
ซอฟท์แวร์มีความน่าเชื่อมากขึ้น
สามารถปรับปรุ ง เปลี่ยนแลง เพิ่มเติมได้ง่าย
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
14
Object และ Class
Object หมายถึงสิ่ งใดๆ (ที่มีตวั ตน) ทุกสิ่ งเป็ น Object
Class คือสิ่ งที่ใช้นิยาม Object
ภายใน Object จะประกอบไปด้วย
ข้อมูล (State)
พฤติกรรม (Behavior)
Class จะอธิบายว่า Object นี้ควรจะมีขอ้ มูลอะไรบ้าง และ มีพฤติกรรม
การทางานอย่างไร (ทาอะไรได้บา้ ง)
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
15
Object และ Class (ต่ อ)
ตัวอย่าง คาว่า ไข่ เป็ น class
เมื่อถามว่าไข่คืออะไร เราจะนึกถึงอยู่ 2 อย่าง
1. ลักษณะข้อมูลของไข่ที่ใช้จาแนกตัวตนของมัน
เช่น รู ปทรง ขนาด น้ าหนัก สี อะไร
ที่ตอ้ งบันทึกเพื่อที่จะได้จามันได้
2. ความสามารถของไข่ ไข่ทาอะไรได้บา้ ง เช่น กินได้ ตกแตกได้
ถ้าเราหยิบไข่ข้ ึนมา 1 ฟอง ไข่ฟองที่เราถืออยูน่ นั่ คือ Object
 Object เป็ นสิ่ งที่มีตวั ตน สามารถระบุตวั ได้
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
16
Object และ Class (ต่ อ)
 ถ้าเปรี ยบเทียบกับโลกในชีวิตจริ ง Class จะเปรี ยบได้กบั นามธรรมที่เรา
สร้างเพื่อใช้แทนสิ่ งใดๆ ทาให้เราสามารถจินตนาการถึงของสิ่งนั้นได้
และหากพบของสิ่ งหนึ่ งที่รู้ว่าเป็ น class อะไร ก็จะสามารถปฏิสัมพันธ์
กับของสิ่ งนั้นได้
 จินตนาการถึงของสิ่ งใดสิ่ งหนึ่ ง ก็คือการสร้าง Object ขึ้นภายใน
สมองของเรา
การจะจินตนาการอะไรได้ เราจะต้องถูกสอนให้รู้จกั class ของสิ่ ง
นั้นก่อน
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
17
เป้าหมายของ เทคโนโลยีจาวา
เพื่อ สร้างภาษาที่ง่ายในการพัฒนาโปรแกรม
สร้างตัวรันโปรแกรมจาวา (Java Interpreter) เพื่อให้จาวาสามารถ
นาไปใช้ทางานบนหลายๆ ระบบ
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
18
Java Programming Language
ไวยกรณ์คล้ายกับภาษา C และ C++
พัฒนาโดยบริ ษทั Sun Microsystems
โปรแกรมทั้งหมดอยูใ่ นรู ปของ Class ไม่สามารถเขียนอยูน่ อก Class ได้
ไฟล์ Source Code จะเก็บในไฟล์ .java
 เมื่อ Compile แล้วจะรหัสที่เรี ยกว่า Byte Code
โดย Byte Code ของแต่ละ Class
จะแยกเก็บอยูใ่ นไฟล์ .class ตามชื่อของ Class นั้น
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
19
จาวาสามารถทางานบนหลาย Platform
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
20
Compiler & Interpreter
คอมพิวเตอร์เข้าใจเฉพาะ Machine Language ที่เป็ น Binary Code
โปรแกรมเมอร์จะเข้าใจ Programming Language ที่เป็ น Source Code
 Compiler จะแปล Source Code เป็ น Binary Code พร้อมกันทั้งหมด
โปรแกรม
 Interpreter จะแปลที่ละชุดคาสัง่
Compiler = นักแปล , Interpreter = ล่าม
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
21
จาวามีท้งั Compiler และ Interpreter
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
22
ประเภทของโปรแกรม Java
Java Application
 โปรแกรม Java ที่รันเหมือนกับโปรแกรมประยุกต์อื่นๆทัว่ ไป
Java Applet
 โปรแกรม Java ที่รันบน Web Browser
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
23
Java Development Kit (JDK)
JDK เป็ นเครื่ องมือที่จาเป็ นสาหรับการพัฒนาโปรแกรม JAVA
ใน JDK จะมี Java Compiler, เอกสารคู่มือ, ตัวอย่างโปรแกรม และ
โปรแกรมอรรถประโยชน์ต่าง
สามารถ Download ได้ที่เว็บไซต์ http://java.sun.com/
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
24
DEMO
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
25
สิ่ งที่ใช้ ในการเขียนโปรแกรม Java
Java Development Kit (JDK)
Java Code Editor หรื อ Java IDE
Notepad,Editplus
Eclipse, Netbean, JBuilder,JEdit
Java Runtime Environment (JRE)
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
26
Hello World
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
27
Hello World
24 พฤษภาคม 2560
Editing, compiling, and executing.
โดย วชิราวุธ ธรรมวิเศษ
28
ฝึ กปฏิบัติ 1.
1. การติดตั้ง JDK
2. การติดตั้ง Eclipse
3. การสร้าง Java Project
4. การสร้าง Class HelloWorld
5. การรัน
ดูสาธิตและทาตาม เวลา 10 นาที
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
29
Resource
http://www.oracle.com/
Download JDK (Java for Developer)
http://www.eclipse.org
Download Eclipse IDE for Java Developer
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
30
ไวยากรณ์ พืน้ ฐาน
การนิยาม class
การนิยาม attribute หรื อ fields
การนิยาม method
package
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
31
ตัวอย่าง
โครงสร้างของ Class
โปรแกรม Java จะต้อง
เขียนในรู ปของ class
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
32
การนิยาม Class ของจาวา
 ไวยกรณ์
<modifiers> class <class_name>{
[attribute declaration]
[constructor declaration]
[method declaration]
}
public class Person {
}
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
33
การนิยาม Attributes (Instance Variable)
 ต้องเขียนอยูภ่ ายในปี กกาของ class (ไม่สนใจลาดับก่อนหลัง)
 ไวยกรณ์
[<modifiers>] type name [= value ];
public class Person {
private String id;
private String name;
public int number;
}
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
34
การนิยาม Instance Method
เป็ นส่ วนที่ใช้นิยามการทางานของ object (Operation/Behavior)
ไวยกรณ์
[<modifiers>] type name([ argument list ]){ คาสัง่ }
public class Person {
private String id;
private String name;
public int number;
public void setData(String aId, String aName){
id = aId;
name = aName;
}
}
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
35
ตัวอย่ าง
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
36
"main" static Method
class ที่จะสามารถใช้คาสัง่ java ในการรันได้ จะต้องมี method main
รูปแบบการประกาศ public static void main(String[ ] args)
ตัวอย่าง
public class Test {
public static void main(String[ ] args) {
System.out.println("This is a test. " );
}
}
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
37
คาถาม : class Person สามารถ RUN ได้ หรื อไม่ ?
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
38
"new" Keyword
ใช้สาหรับสร้าง object (instance) จาก class
 ใช้ขณะที่ประกาศตัวแปร (attributes) หรื อ ภายใน method ก็ได้
 เช่น new Person( ); เป็ นการสร้าง object ของ class Person
public class Test {
public static void main(String[ ] args) {
new Person( );
แบบไม่ ตั้งชื่ อตัวแปร
Person p = new Person( );
แบบมีการตั้งชื่ อตัวแปร
}
}
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
39
"new" Keyword
ใช้ new พร้ อมการประกาศ attribute
class ทั้งหมดสามารถนามาใช้สร้างเป็ นตัวแปรได้
class ก็คือ ชนิดข้อมูล (data type) แบบหนึ่ง
p1 และ p2 เป็ น attributes ของ Greeter
จะต้อง new Greeter ก่อนจึงจะเกิด p1,p2
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
40
"new" Keyword
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
41
static
static เป็ นการระบุวา่ ตัวแปร หรื อ method นั้นเป็ นของ class
ตัวแปร และ method ที่ไม่ใช่ static เป็ นของ instance
package test;
public class Person {
String id;
String name;
static int count=0;
}
Id และ name จะเป็ น instance variable
Count เป็ น static variable
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
42
static
public class TestPerson {
public static void main(String[] args) {
Person a = new Person();
Person b = new Person();
a.name = "Mr.A";
b.name = "Mr.B";
a.count = 5;
b.count = 10;
Person.count = 30;
System.out.printf("%s count = %d\n",a.name, a.count);
System.out.printf("%s count = %d\n",b.name, b.count);
}
}
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
43
การอ้ างถึงสมาชิก (member) ของ object
member ของ object คือ attribute และ method
เราจะใช้ เครื่ องหมายจุด (.) ในการอ้างถึงสมาชิก
เช่น p1.number อ้างถึง number ของ p1
p2.number หมายถึง number ของ p2 ซึ่งเป็ นคนละตัวกับของ p1
g.p1.number หมายถึง number ที่เป็ นของ p1 ของ g
สมาชิกที่เป็ น method เวลาเรี ยกใช้ตอ้ งมีวงเล็บ
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
44
Access Control
เราจะควบคุมการเข้าถึง สมาชิกใน Class โดยใช้ Modifier
public หมายถึง สมาชิกนั้นเปิ ดเผยให้เข้าถึงได้จาก class ภายนอก
อื่นทั้งหมด
private หมายถึง สมาชิกนั้นไม่อนุญาตให้เข้าถึงจาก class ภายนอก
(default) ไม่ระบุ modifier หมายถึง อนุญาตให้เข้าถึงสมาชิกนั้น
เฉพาะ class ที่อยูใ่ น package เดียวกัน
เป็ นคุณสมบัติ "Encapsulation"
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
45
Encapsulation
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
46
การแสดงผลออก console (standard output)
คาสัง่ System.out.println( ) ขึ้นบรรทัดใหม่
คาสัง่ System.out.print( ) ไม่ข้ ึนบรรทัดใหม่
คาสัง่ System.out.printf(format,args..) แสดงผลกาหนดรู ปแบบ
System คือ class มาตรฐานของ Java
out เป็ น member ของ System (อ้างถึง standard output)
print,println เป็ น method ของ out
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
47
ตัวอย่ าง
Output:
The average of 34, 89 and 17 is 46.666666666666664
The average of 34, 89 and 17 is 46.666666666666664
เครื่ องหมาย + ใช้ ต่อข้ อความทีต่ ้ องการแสดงผลได้
34 + 89 เป็ นการบวกตัวเลข
"34" + "89" เป็ นการเชื่อมต่อข้อความ
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
48
ประโยค package
ใช้ในการจัดกลุ่มของ class
package <ชื่อ>[.<ชื่อย่อย] ;
ตัวอย่าง
package kku;
package kku.game.ox;
package kku.app.talk;
ในไฟล์ .java หนึ่งไฟล์จะระบุ package ได้เพียง 1 อัน
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
49
ประโยค import
ใช้เมื่อต้องการใช้งาน class ที่อยูต่ ่าง package
import package[.subpackage].classname;
import package[.subpackage].*;
ตัวอย่าง
import kku.*;
import kku.game.ox.Game1;
import kku.game.ox.*;
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
50
Directory Layout and Packages
เมื่อเรา compile ไฟล์ class จะถูกเก็บแยกลงใน directory ตามชื่อ
package
C:\Kku\
game\
app\
2 มิ.ย 2552
ox\
Game1.class
talk\
Talk.class
Client.class
โดย วชิราวุธ ธรรมวิเศษ
51
ตัวอย่ าง package
class Person อยูใ่ น package ch2.app จะต้องเก็บใน folder
<root folder>\ch2\app
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
52
การ import
ถ้า class Greeter ไม่มี package แต่ตอ้ งการใช้ class Person
ก็จะต้องมีการ import ch2.app.Person
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
53
การ Compile
สมมติวา่ root folder อยูท่ ี่ c:\322251\
การ compile ให้ใช้คาสัง่ javac ใน folder c:\322251
หรื อ compile class Greeter (javac จะตามไป compile class ที่ถูก
import ด้วย)
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
54
Compile-time Error และ Runtime Error
Compile-time Error
เป็ นข้อผิดพลาดที่เกิดเมื่อตัวแปลภาษา (Compiler) ไม่สามารถแปล
SoureCode ได้กจ็ ะแจ้งข้อผิดพลาดให้ทราบ
Runtime Error
เป็ นข้อผิดพลาดที่เกิดระหว่างการรันโปรแกรม ซึ่งตัว Java Virtual
Machine (JVM) จะแจ้งให้ทราบในระหว่างการรันโปรแกรม
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
55
การแก้ ไขข้ อผิดพลาด
1. เขียนทีละน้ อย
เขียนเสร็ จตามโครงสร้างไวยากรณ์แล้ว compile
ค่อยๆ เขียน code เพิ่มที่ละส่ วน และ compile
อย่าเขียน code ยาวๆ ในคราวเดียว
2. แก้ปัญหาทีล่ ะข้ อ
เมื่อพบ Error ที่ถูกแจ้งออกมาให้ เริ่ มแก้ไขปัญหาจากข้อบนสุ ดก่อน
อ่านคาอธิบายว่าผิดที่ไฟล์ไหน บรรทัดอะไร
โดยให้สนใจเฉพาะ Error ในไฟล์ที่เราเป็ นคนเขียน Code เองก่อน
2 มิ.ย 2552
โดย วชิราวุธ ธรรมวิเศษ
56
การใช้ Eclipse ในการเรียนภาษา Java
Eclipse หรื อ Java IDE อื่นๆ จะมีความสามารถในการแนะนา
ให้ฝึกสังเกต และ ทาตามคาแนะนา ที่ได้รับ
Eclipse จะทาการ Compile โปรแกรม
ตลอดเวลาระหว่างที่เรากาลังพิมพ์ Code
เมื่อพบว่าเราเขียนโปรแกรมผิด
Eclipse จะแสดงคาแนะนา
วิธีการแก้ไขที่เป็ นไปได้ท้ งั หมด
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
57
Comment และ หมายเหตุในโปรแกรม
การเขียนหมายเหตุ เขียนไว้ในส่ วนใดของไฟล์กไ็ ด้ compiler จะไม่แปล
ประโยคที่เป็ น comment
•แบบ 1 บรรทัด ใช้ เครื่ องหมาย // เช่น
// This is comment
•แบบหลายบรรทัด ใช้ เครื่ องหมาย /* */ เช่น
/* This is My First Program
In Java.. */
•แบบใช้เป็ นเอกสารประกอบ (Document Comment) ใช้
/** */
java จะมีเครื่ องมือคือ JavaDoc ที่ช่วยสร้างเอกสารอธิ บายโปรแกรม โดย
ใช้ขอ้ มูลจาก Comment
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
58
Eclipse และ Comment
เขียน comment ใน class
24 พฤษภาคม 2560
โดย วชิราวุธ ธรรมวิเศษ
59
Related documents