รายวิชา 232302 การเขียนโปรแกรม 2 ·...

27
รายวิชา 232302 การเขียนโปรแกรม 2 อ.อติโรจน์ วงษ์วัชรศักดิ คณะบริหารศาสตร์ สาขาวิชาคอมพิวเตอร์ธุรกิจ หน่วยที่ 1 แนะนาภาษาจาวา http://jaydaymaster.wordpress.com

Upload: others

Post on 22-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

รายวชา 232302การเขยนโปรแกรม 2

อ .อ ตโรจน วงษว ชรศก ดคณะบรหารศาสตร สาขาวชาคอมพว เตอ ร ธร กจ

หนวยท 1 แนะน าภาษาจาวาhttp://jaydaymaster.wordpress.com

Page 2: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

วตถประสงค1. เพอใหผเรยน มความร ทกษะ เกยวกบการเขยนโปรแกรมภาษาจาวา2. เรยนรโครงสรางของโปรแกรมจาวา วธก าหนดขอมลในรปแบบตางๆ การใชค าสงตาง ๆ

การรบและแสดงผลขอมล โครงสรางควบคมการท างาน (Control Structures)3. เพอศกษาขอมล คาคงท ตวแปร และการสรางฟงกชนในภาษาจาวา4. เพอใหนกศกษาสามารถน าความรทไดไปพฒนาและเขยนโปรแกรมเพอน าไปปฏบตจรง

ได

2

Page 3: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

หนวยท 1 แนะน าภาษาจาวาประวตของภาษาจาวาขอดของภาษาจาวาจาวาแพลตฟอรมการคอมไพลและรนโปรแกรมภาษาจาวาโปรแกรม HelloWorld ในแบบตวอกษรและแบบกราฟกส

3

Page 4: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ประวตของภาษาจาวาภาษาโอค• เรมตนขนในปค.ศ. 1990• แพททรก นอทน (Pattrick Naughton) จะลาออกจากซน• เจมส กอสลง (James Gosling) ผใหก าเนดภาษาจาวา• กรนทม

- ยคถดจากคอมพวเตอรสวนบคคล (personal computer) กคอ คอมพวเตอรในอปกรณอเลกทรอนกส (consumer electronics)• ดค

4

Page 5: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ประวตของภาษาจาวาภาษาจาวา• มารค แอนดรสเซน กบ Mosaic และเวบ• บล จอย (Bill Joy) แจกจายตวพฒนาภาษา• นอทนพฒนาเวบเบราเซอรทสนบสนนภาษาจาวา โปรแกรมดงกลาวมชอวา HotJava• Netscape Navigator• 23 มกราคม ค.ศ. 1996 ซนไดออก JDK 1.0

5

Page 6: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ขอดของภาษาจาวา• ท างานบนเวบเบราเซอรได • ความปลอดภยสง • สนบสนนงานหลายระดบ • สามารถท างานบนเครองคอมพวเตอรตางระบบได • ภาษาจาวาเปนภาษาเชงวตถ• ความทนสมย • ความเรยบงาย

6

Page 7: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ขอดของภาษาจาวา• กลไกในการคนพนทในหนวยความจ าอตโนมต (garbage collection)• มคลาสและอนเตอรเฟซใหใชเยอะมาก

- 794 interfaces- 2485 classes

• ฟร

7

Page 8: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

จาวาแพลตฟอรมแพลตฟอรม (platform) • ระบบทโปรแกรมอาศยท างาน• Hardware• Software

8

Page 9: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

จาวาแพลตฟอรมจาวาแพลตฟอรมJava 2 Platform, Standard Edition (J2SE)

- จาวาแอพพลเคชน (Java application) - แอพเพลต (Java applet)

Java 2 Platform, Enterprise Edition (J2EE)- โปรแกรมแบบมลตเทยร (multitiered) ส าหรบการพฒนาโปรแกรมในระดบองคกร

Java 2 Platform, Micro Edition (J2ME)- สนคาอเลกโทรนกส เชน โทรศพทมอถอ พดเอ (personal digital assistant) และกลองเคเบลทว (TV set-top box

9

Page 10: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

การคอมไพลและรนโปรแกรมภาษาจาวาชดพฒนาภาษาจาวา (Java Development Kit - JDK)

- จาวาคอมไพเลอร (javac.exe)

- สภาพแวดลอมการรนโปรแกรมจาวา (Java Runtime Environment - JRE) (java.exe)

Download http://java.sun.com

10

Page 11: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรมทใชเขยนตนฉบบโปรแกรม

Notepadมาพรอมกบ Windows

J-Labhttp://www.cp.eng.chula.ac.th/~somchai/JLab/

Netbeanshttp://www.netbeans.org/

Eclipsehttp://www.eclipse.org/

11

Page 12: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

Notepad

12

Page 13: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

J-Lab

13

Page 14: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

Netbeans

14

Page 15: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

Eclipse

15

Page 16: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld ในแบบตวอกษรและแบบกราฟกส

โปรแกรม HellowWorldพมพค าวา Hello, World! ขนบนหนาจอคอมพวเตอร

16

Page 17: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

การเปดโปรแกรม cmd

17

1

2

3

Page 18: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

คอมไพลโปรแกรม

18

Page 19: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld

public class HelloWorld{

}

19

Page 20: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld

public class HelloWorld{

public static void main(String[] args) {

}}

20

Page 21: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld

public class HelloWorld{

public static void main(String[] args) {

System.out.println("Hello, World!"); }

}

21

Page 22: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld แบบกราฟก

22

Page 23: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

โปรแกรม HelloWorld แบบกราฟก

import java.awt.*;import javax.swing.*;public class HelloGraphicsWorld {

public static void main(String[] args) {JFrame frame = new JFrame() {

public void paint(Graphics g) {g.drawString("Hello, World!", 110, 150);g.drawOval(100, 130, 90, 30);

}

};

frame.setSize(300, 300);frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);frame.setVisible(true);

}}

23

Page 24: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ค าอธบายในโปรแกรม

คอมเมนตบรรทดเดยว// print the word hello คอมเมนตทเปนยอหนา/*

This program will print the word hello

*/ 24

Page 25: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

ค าอธบายในโปรแกรม

คอมเมนตทเปนยอหนาส าหรบการสรางเอกสารดวยโปรแกรม javadoc/**

*/

25

Page 26: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

สรป

• โปรแกรมในจาวาแพลตฟอรมมาตรฐานมอยสองประเภทคอ แอพพลเคชน และ แอพเพลท

• จาวาแอพพลเคชนสามารถท างานไดเหมอนกบโปรแกรมทวไป มนสามารถท างานบนคอมพวเตอรตางรนตางระบบปฏบตการได เพราะวามนท างานอยบนโปรแกรมเครองจกรเสมอน

• จาวาแอพเพลตสามารถท างานบนเวบเพจได มนสามารถท างานบนคอมพวเตอรตางรนตางระบบปฏบตการได ขอเพยงแคมโปรแกรมเวบเบราเซอรทสนบสนนภาษาจาวาตดตงอยบนระบบปฏบตการนน

26

Page 27: รายวิชา 232302 การเขียนโปรแกรม 2 · วัตถุประสงค์ 1. เพื่อให้ผูเ้รียน มีความรู้ทกัษะ

สรป

• ซอรสโคดโปรแกรมจาวาอยในแฟมทมนามสกล java• โปรแกรมทใชคอมไพลภาษาจาวาชอ javac• ผลการคอมไพลจะไดแฟมทมนามสกล class• ไฟลนามสกล class สามารถท างานใน JRE ได• ใชโปรแกรม java รนไฟล .class ทมเมธอด main()• การพมพขอความใชค าสง System.out.println("ขอความทตองการพมพ")

27