fbpx
วิกิพีเดีย

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

จาวา (อังกฤษ: Java programming language) เป็นภาษาโปรแกรมเชิงวัตถุ (อังกฤษ: Object Oriented Programming) พัฒนาโดย เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่ ซัน ไมโครซิสเต็มส์ ภาษาจาวาถูกพัฒนาขึ้นในปี พ.ศ. 2534 (ค.ศ. 1991) โดยเป็นส่วนหนึ่งของ โครงการกรีน (the Green Project) และสำเร็จออกสู่สาธารณะในปี พ.ศ. 2538 (ค.ศ. 1995) ซึ่งภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัส (C++) โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C) แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง แต่ว่ามีปัญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใช้ชื่อ "จาวา" ซึ่งเป็นชื่อกาแฟแทน

และแม้ว่าจะมีชื่อคล้ายกัน แต่ภาษาจาวาไม่มีความเกี่ยวข้องใด ๆ กับภาษาจาวาสคริปต์ (JavaScript) ปัจจุบันมาตรฐานของภาษาจาวาดูแลโดย Java Community Process ซึ่งเป็นกระบวนการอย่างเป็นทางการ ที่อนุญาตให้ผู้ที่สนใจเข้าร่วมกำหนดความสามารถในจาวาแพลตฟอร์มได้

จุดมุ่งหมาย

จุดมุ่งหมายหลัก 4 ประการ ในการพัฒนาจาวา คือ

  1. ใช้ภาษาโปรแกรมเชิงวัตถุ
  2. ไม่ขึ้นกับแพลตฟอร์ม (สถาปัตยกรรม และ ระบบปฏิบัติการ)
  3. เหมาะกับการใช้ในระบบเครือข่าย พร้อมมีไลบรารีสนับสนุน
  4. เรียกใช้งานจากระยะไกลได้อย่างปลอดภัย

จาวาแพลตฟอร์ม และ ภาษาจาวา

เนื่องจากชื่อที่เหมือนกัน และการเรียกขานที่มักจะพูดถึงพร้อมกันบ่อยๆ ทำให้คนทั่วไป มักสับสนว่า ภาษาจาวา และ จาวาแพลตฟอร์ม เป็นสิ่งเดียวกัน

ในความเป็นจริงนั้น ทั้งสองสิ่ง แม้จะทำงานเสริมกัน แต่ก็เป็นสิ่งที่แยกออกจากกัน

โดย ภาษาจาวานั้น คือภาษาสำหรับใช้เขียนโปรแกรมภาษาหนึ่ง ดังที่ได้อธิบายไปข้างต้น ส่วน จาวาแพลตฟอร์มนั้น คือสภาพแวดล้อมสำหรับการใช้งานโปรแกรมจาวา โดยมีองค์ประกอบหลักคือ จาวาเวอร์ชวลแมชีน (Java virtual machine) และ ไลบรารีมาตรฐานจาวา (Java standard library)

โปรแกรมที่ทำงานบนจาวาแพลตฟอร์มนั้น ไม่จำเป็นจะต้องสร้างด้วยภาษาจาวา เช่น อาจจะใช้ ภาษาไพทอน (Python) หรือ ภาษาอื่นๆ ก็ได้

ส่วนภาษาจาวานั้น ก็สามารถนำไปใช้พัฒนาโปรแกรมสำหรับแพลตฟอร์มอื่นได้เช่นเดียวกัน เช่น คอมไพเลอร์ gcj สามารถคอมไพล์โปรแกรมที่เขียนด้วยภาษาจาวา ให้ทำงานได้ โดยไม่ต้องใช้ จาวาเวอร์ชวลแมชีน

ประวัติ

รุ่นต่าง ๆ ของภาษาจาวา

  • 1.0 (ค.ศ. 1996) — ออกครั้งแรกสุด
  • 1.1 (ค.ศ. 1997) — ปรับปรุงครั้งใหญ่ โดยเพิ่ม inner class
  • 1.2 (4 ธันวาคม, ค.ศ. 1998) — รหัส Playground ด้านจาวาแพลตฟอร์มได้รับการเปลี่ยนแปลงครั้งใหญ่ใน API และ JVM (API สำคัญที่เพิ่มมาคือ Java Collections Framework และ Swing; ส่วนใน JVM เพิ่ม JIT compiler) แต่ตัวภาษาจาวานั้น เปลี่ยนแปลงเพียงเล็กน้อย (เพิ่มคีย์เวิร์ด strictfp) และทั้งหมดถูกเรียกชื่อใหม่ว่า "จาวา 2" แต่ระบบเลขรุ่นยังไม่เปลี่ยนแปลง
  • 1.3 (8 พฤษภาคม, ค.ศ. 2000) — รหัส Kestrel แก้ไขเล็กน้อย
  • 1.4 (13 กุมภาพันธ์, ค.ศ. 2002) — รหัส Merlin เป็นรุ่นที่ถูกใช้งานมากที่สุดในปัจจุบัน (ขณะที่เขียน ค.ศ. 2005)
  • 5.0 (29 กันยายน, ค.ศ. 2004) — รหัส Tiger (เดิมทีนับเป็น 1.5) เพิ่มคุณสมบัติใหม่ในภาษาจาวา เช่น Annotations ซึ่งเป็นที่ถกเถียงกันว่านำมาจากภาษาซีชาร์ป ของบริษัทไมโครซอฟท์, Enumerations, Varargs, Enhanced for loop, Autoboxing, และที่สำคัญคือ Generics
  • 6.0 (11 ธันวาคม, ค.ศ. 2006) [1] — รหัส Mustang 2007-06-18 ที่ เวย์แบ็กแมชชีน เป็นรุ่นในการพัฒนาของ Java SDK 6.0 ที่ออกมาให้ทดลองใช้ในเดือนพฤศจิกายน ค.ศ. 2004
  • 7.0 — รหัส Dolphin กำลังพัฒนา [2]
  • 8.0เริ่มใช้แล้ว

ตัวอย่าง

// ประกาศ class public class MyClass { // ประกาศ Method ชื่อ main เพราะ java จะเรียกหา Method main เป็น Method แรก public static void main(String[] args) { System.out.println("Hello World!"); // แสดงข้อความว่า Hello World! System.out.println(5+3);//นำ 5+3 แล้วแสดงออกทางหน้าจอ } } 

ซอฟต์แวร์ที่เกี่ยวข้อง

รายชื่อของซอฟต์แวร์เสรีที่เกี่ยวข้องกับจาวา

คอมไพเลอร์และเวอร์ชวลแมชีน

  • JDK คอมไพเลอร์มาตรฐานของซัน ไมโครซิสเต็มส์
  • GCJ คอมไพเลอร์ภาษาจาวาของโครงการ GCC หรือ GNU Compiler Collection
  • Jikes คอมไพเลอร์ที่เดิมพัฒนาโดยไอบีเอ็ม
  • GNU Classpath ชุดไลบรารีสำหรับจาวาแพลตฟอร์ม โอเพนซอร์ส
  • Kaffe
  • SableVM
  • IKVM คอมไพเลอร์ภาษาจาวาบน .NET แพลตฟอร์ม
  • SuperWaba
  • JRockit JDK พัฒนาโดย บีอีเอ ซิสเต็มส์

สภาพแวดล้อมสำหรับการพัฒนา (IDE)

  • BlueJ เป็น IDE ที่เหมาะกับการศึกษา โดยเน้นที่แนวคิดเรื่องการเขียนโปรแกรมเชิงวัตถุ
  • ฺBorland JBuilder
  • Eclipse โอเพนซอร์ส
  • IntelliJ IDEA
  • JDeveloper ของบริษัทออราเคิล
  • JEdit (เป็นเอดิเตอร์ แต่สามารถติดตั้งปลั๊กอินเพื่อเพิ่มความสามารถด้าน IDE ได้)
  • JLab ของภาควิชาวิศวกรรมคอมพิวเตอร์ จุฬาลงกรณ์มหาวิทยาลัย ฟรีและเล็กเหมาะกับการศึกษา ดูรายละเอียดเพิ่มเติ่มที่ http://www.cp.eng.chula.ac.th/~somchai/JLab/
  • NetBeans โอเพนซอร์ส
  • Rational Application Developer ของไอบีเอ็ม
  • Sun Java Studio ของซัน ไมโครซิสเต็มส์
  • ฺVisual Age ของไอบีเอ็ม (ปัจจุบันเลิกพัฒนาแล้ว ถูกแทนที่ด้วย Rational Application Developer)
  • ฺVisual Cafe' ของบริษัท Symantec
  • WebSphere Studio Application Developer ของไอบีเอ็ม ปัจจุบันถูกแทนที่ด้วย Rational Application Developer

บทความที่เกี่ยวข้อง

  • RTSJ เรียลไทม์สเปคซิฟิเคชั่นสำหรับJava

แหล่งข้อมูลอื่น

  • java.com ข้อมูลจาวา สำหรับผู้ใช้งานทั่วไป
  • java.sun.com ข้อมูลจาวา สำหรับนักพัฒนา

จาวา, ภาษาโปรแกรม, จาวา, งกฤษ, java, programming, language, เป, นภาษาโปรแกรมเช, งว, ตถ, งกฤษ, object, oriented, programming, ฒนาโดย, เจมส, กอสล, และว, ศวกรคนอ, นๆ, ไมโครซ, สเต, มส, ภาษาจาวาถ, กพ, ฒนาข, นในป, 2534, 1991, โดยเป, นส, วนหน, งของ, โครงการกร, green,. cawa xngkvs Java programming language epnphasaopraekrmechingwtthu xngkvs Object Oriented Programming phthnaody ecms kxsling aelawiswkrkhnxun thi sn imokhrsisetms phasacawathukphthnakhuninpi ph s 2534 kh s 1991 odyepnswnhnungkhxng okhrngkarkrin the Green Project aelasaercxxksusatharnainpi ph s 2538 kh s 1995 sungphasanimicudprasngkhephuxichaethnphasasiphlsphls C odyrupaebbthiephimetimkhunkhlaykbphasaxxbecktthifsi Objective C aetedimphasanieriykwa phasaoxk Oak sungtngchuxtamtnoxkiklthithangankhxng ecms kxsling aetwamipyhathanglikhsiththi cungepliynipichchux cawa sungepnchuxkaaefaethnaelaaemwacamichuxkhlaykn aetphasacawaimmikhwamekiywkhxngid kbphasacawaskhript JavaScript pccubnmatrthankhxngphasacawaduaelody Java Community Process sungepnkrabwnkarxyangepnthangkar thixnuyatihphuthisnicekharwmkahndkhwamsamarthincawaaephltfxrmid enuxha 1 cudmunghmay 2 cawaaephltfxrm aela phasacawa 3 prawti 3 1 runtang khxngphasacawa 4 twxyang 5 sxftaewrthiekiywkhxng 5 1 khxmiphelxraelaewxrchwlaemchin 5 2 sphaphaewdlxmsahrbkarphthna IDE 6 bthkhwamthiekiywkhxng 7 aehlngkhxmulxuncudmunghmay aekikhcudmunghmayhlk 4 prakar inkarphthnacawa khux ichphasaopraekrmechingwtthu imkhunkbaephltfxrm sthaptykrrm aela rabbptibtikar ehmaakbkarichinrabbekhruxkhay phrxmmiilbrarisnbsnun eriykichngancakrayaiklidxyangplxdphycawaaephltfxrm aela phasacawa aekikhenuxngcakchuxthiehmuxnkn aelakareriykkhanthimkcaphudthungphrxmknbxy thaihkhnthwip mksbsnwa phasacawa aela cawaaephltfxrm epnsingediywkninkhwamepncringnn thngsxngsing aemcathanganesrimkn aetkepnsingthiaeykxxkcakknody phasacawann khuxphasasahrbichekhiynopraekrmphasahnung dngthiidxthibayipkhangtn swn cawaaephltfxrmnn khuxsphaphaewdlxmsahrbkarichnganopraekrmcawa odymixngkhprakxbhlkkhux cawaewxrchwlaemchin Java virtual machine aela ilbrarimatrthancawa Java standard library opraekrmthithanganbncawaaephltfxrmnn imcaepncatxngsrangdwyphasacawa echn xaccaich phasaiphthxn Python hrux phasaxun kidswnphasacawann ksamarthnaipichphthnaopraekrmsahrbaephltfxrmxunidechnediywkn echn khxmiphelxr gcj samarthkhxmiphlopraekrmthiekhiyndwyphasacawa ihthanganid odyimtxngich cawaewxrchwlaemchinprawti aekikhruntang khxngphasacawa aekikh 1 0 kh s 1996 xxkkhrngaerksud 1 1 kh s 1997 prbprungkhrngihy odyephim inner class 1 2 4 thnwakhm kh s 1998 rhs Playground dancawaaephltfxrmidrbkarepliynaeplngkhrngihyin API aela JVM API sakhythiephimmakhux Java Collections Framework aela Swing swnin JVM ephim JIT compiler aettwphasacawann epliynaeplngephiyngelknxy ephimkhiyewird strictfp aelathnghmdthukeriykchuxihmwa cawa 2 aetrabbelkhrunyngimepliynaeplng 1 3 8 phvsphakhm kh s 2000 rhs Kestrel aekikhelknxy 1 4 13 kumphaphnth kh s 2002 rhs Merlin epnrunthithukichnganmakthisudinpccubn khnathiekhiyn kh s 2005 5 0 29 knyayn kh s 2004 rhs Tiger edimthinbepn 1 5 ephimkhunsmbtiihminphasacawa echn Annotations sungepnthithkethiyngknwanamacakphasasicharp khxngbristhimokhrsxfth Enumerations Varargs Enhanced for loop Autoboxing aelathisakhykhux Generics 6 0 11 thnwakhm kh s 2006 1 rhs Mustang Archived 2007 06 18 thi ewyaebkaemchchin epnruninkarphthnakhxng Java SDK 6 0 thixxkmaihthdlxngichineduxnphvscikayn kh s 2004 7 0 rhs Dolphin kalngphthna 2 8 0erimichaelwtwxyang aekikh prakas class public class MyClass prakas Method chux main ephraa java caeriykha Method main epn Method aerk public static void main String args System out println Hello World aesdngkhxkhwamwa Hello World System out println 5 3 na 5 3 aelwaesdngxxkthanghnacx sxftaewrthiekiywkhxng aekikhraychuxkhxngsxftaewresrithiekiywkhxngkbcawa khxmiphelxraelaewxrchwlaemchin aekikh JDK khxmiphelxrmatrthankhxngsn imokhrsisetms GCJ khxmiphelxrphasacawakhxngokhrngkar GCC hrux GNU Compiler Collection Jikes khxmiphelxrthiedimphthnaodyixbiexm GNU Classpath chudilbrarisahrbcawaaephltfxrm oxephnsxrs Kaffe SableVM IKVM khxmiphelxrphasacawabn NET aephltfxrm SuperWaba JRockit JDK phthnaody bixiex sisetmssphaphaewdlxmsahrbkarphthna IDE aekikh BlueJ epn IDE thiehmaakbkarsuksa odyennthiaenwkhideruxngkarekhiynopraekrmechingwtthu Borland JBuilder Eclipse oxephnsxrs IntelliJ IDEA JDeveloper khxngbristhxxraekhil JEdit epnexdietxr aetsamarthtidtngplkxinephuxephimkhwamsamarthdan IDE id JLab khxngphakhwichawiswkrrmkhxmphiwetxr culalngkrnmhawithyaly friaelaelkehmaakbkarsuksa duraylaexiydephimetimthi http www cp eng chula ac th somchai JLab NetBeans oxephnsxrs Rational Application Developer khxngixbiexm Sun Java Studio khxngsn imokhrsisetms Visual Age khxngixbiexm pccubnelikphthnaaelw thukaethnthidwy Rational Application Developer Visual Cafe khxngbristh Symantec WebSphere Studio Application Developer khxngixbiexm pccubnthukaethnthidwy Rational Application Developerbthkhwamthiekiywkhxng aekikhRTSJ eriylithmsepkhsifiekhchnsahrbJavaaehlngkhxmulxun aekikhjava com khxmulcawa sahrbphuichnganthwip java sun com khxmulcawa sahrbnkphthnaekhathungcak https th wikipedia org w index php title cawa phasaopraekrm amp oldid 9563832, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม