33
แนะนําภาษาจาวา 15/02/62 เขียนโปรแกรม Java เบื ้องต้น 1

แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

แนะนาภาษาจาวา

15/02/62 เขยนโปรแกรม Java เบองตน 1

Page 2: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

หวขอ

• ประวตของภาษาจาวา

• ขอดของภาษาจาวา

• จาวาแพลตฟอรม

• การคอมไพลและรนโปรแกรมภาษาจาวา

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

แบบกราฟกส 15/02/62 เขยนโปรแกรม Java เบองตน 2

Page 3: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ประวตของภาษาจาวา

15/02/62 เขยนโปรแกรม Java เบองตน 3

Page 4: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ภาษาโอค

• เรมตนขนในปค.ศ. 1990

• แพททรก นอทน (Pattrick Naughton) จะลาออกจากซน

• เจมส กอสลง (James Gosling) ผใหกาเนดภาษาจาวา

• กรนทม – ยคถดจากคอมพวเตอรสวนบคคล (personal computer) กคอ

คอมพวเตอรในอปกรณอเลกโทรนกส (consumer electronics)

• ดค

15/02/62 เขยนโปรแกรม Java เบองตน 4

Page 5: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ภาษาจาวา

• มารค แอนดรสเซน กบ Mosaic และเวบ

• บล จอย (Bill Joy) แจกจายตวพฒนาภาษา

• นอทนพฒนาเวบเบราเซอรทสนบสนนภาษาจาวา

โปรแกรมดงกลาวมชอวา HotJava

• Netscape Navigator

• 23 มกราคม ค.ศ. 1996 ซนไดออก JDK 1.0

15/02/62 เขยนโปรแกรม Java เบองตน 5

Page 6: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ขอดของภาษาจาวา

15/02/62 เขยนโปรแกรม Java เบองตน 6

Page 7: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ขอดของภาษาจาวา

• ทางานบนเวบเบราเซอรได

• ความปลอดภยสง

• สนบสนนงานหลายระดบ

15/02/62 เขยนโปรแกรม Java เบองตน 7

Page 8: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ขอดของภาษาจาวา

• สามารถทางานบนเครองคอมพวเตอร

ตางระบบได

• ภาษาจาวาเปนภาษาเชงวตถ

• ความทนสมย

• ความเรยบงาย 15/02/62 เขยนโปรแกรม Java เบองตน 8

Page 9: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ขอดของภาษาจาวา

• กลไกในการคนพนทในหนวยความจา

อตโนมต (garbage collection)

• มคลาสและอนเตอรเฟซใหใชเยอะ

มาก

–794 interfaces

–2485 classes

15/02/62 เขยนโปรแกรม Java เบองตน 9

Page 10: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

จาวาแพลตฟอรม

15/02/62 เขยนโปรแกรม Java เบองตน 10

Page 11: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

แพลตฟอรม (platform)

• ระบบทโปรแกรมอาศยทางาน

• Hardware

• Software

15/02/62 เขยนโปรแกรม Java เบองตน 11

Page 12: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

จาวาแพลตฟอรม

• 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

15/02/62 เขยนโปรแกรม Java เบองตน 12

Page 13: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

การคอมไพลและรน

โปรแกรมภาษาจาวา

15/02/62 เขยนโปรแกรม Java เบองตน 13

Page 14: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

ชดพฒนาภาษาจาวา (JDK)

• ชดพฒนาภาษาจาวา (Java Development Kit - JDK)

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

– สภาพแวดลอมการรนโปรแกรมจาวา (Java Runtime

Environment - JRE) (java.exe)

• Download http://java.sun.com

15/02/62 เขยนโปรแกรม Java เบองตน 14

Page 15: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

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

• Notepad

–มาพรอมกบ Windows

• J-Lab – http://www.cp.eng.chula.ac.th/~somchai/JLab/

• Netbeans

–http://www.netbeans.org/

• Eclipse

–http://www.eclipse.org/ 15/02/62 เขยนโปรแกรม Java เบองตน 15

Page 16: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

Notepad

15/02/62 เขยนโปรแกรม Java เบองตน 16

Page 17: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

J-Lab

15/02/62 เขยนโปรแกรม Java เบองตน 17

Page 18: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

Netbeans

15/02/62 เขยนโปรแกรม Java เบองตน 18

Page 19: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

Eclipse

15/02/62 เขยนโปรแกรม Java เบองตน 19

Page 20: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม HelloWorld ใน

แบบตวอกษรและแบบ

กราฟกส

15/02/62 เขยนโปรแกรม Java เบองตน 20

Page 21: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม HelloWorld

• พมพคาวา Hello, World! ขนบน

หนาจอคอมพวเตอร

15/02/62 เขยนโปรแกรม Java เบองตน 21

Page 22: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

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

15/02/62 เขยนโปรแกรม Java เบองตน 22

1

2

3

Page 23: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

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

15/02/62 เขยนโปรแกรม Java เบองตน 23

Page 24: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม HelloWorld

public class HelloWorld

{

}

15/02/62 เขยนโปรแกรม Java เบองตน 24

Page 25: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม HelloWorld

public class HelloWorld

{

public static void main(String[] args)

{

}

}

15/02/62 เขยนโปรแกรม Java เบองตน 25

Page 26: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม HelloWorld

public class HelloWorld

{

public static void main(String[] args)

{

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

}

}

15/02/62 เขยนโปรแกรม Java เบองตน 26

Page 27: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

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

15/02/62 เขยนโปรแกรม Java เบองตน 27

Page 28: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

โปรแกรม 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);

}

}

15/02/62 เขยนโปรแกรม Java เบองตน 28

Page 29: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

คาอธบายในโปรแกรม • คอมเมนตบรรทดเดยว

// print the word hello

• คอมเมนตทเปนยอหนา

/*

This program

will print

the word hello

15/02/62 เขยนโปรแกรม Java เบองตน 29

Page 30: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

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

• คอมเมนตทเปนยอหนาสาหรบการ

สรางเอกสารดวยโปรแกรม javadoc

/**

*/

15/02/62 เขยนโปรแกรม Java เบองตน 30

Page 31: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

สรป

15/02/62 เขยนโปรแกรม Java เบองตน 31

Page 32: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

สรป

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

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

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

15/02/62 เขยนโปรแกรม Java เบองตน 32

Page 33: แนะนําภาษาจาวา · 2019-02-15 · • การคอมไพล์และรันโปรแกรมภาษาจาวา • โปรแกรม

สรป

• ซอรสโคดโปรแกรมจาวาอยในแฟมทมนามสกล java

• โปรแกรมทใชคอมไพลภาษาจาวาชอ javac

• ผลการคอมไพลจะไดแฟมทมนามสกล class

• ไฟลนามสกล class สามารถทางานใน JRE ได

• ใชโปรแกรม java รนไฟล .class ทมเมธอด main()

• การพมพขอความใชคาสง System.out.println("ขอความทตองการพมพ")

15/02/62 เขยนโปรแกรม Java เบองตน 33