Android เทียบกับ Java
Java เป็นหนึ่งในภาษาโปรแกรมเชิงวัตถุที่ได้รับความนิยมมากที่สุดในโลก Java ถูกใช้อย่างมากสำหรับซอฟต์แวร์และการพัฒนาเว็บ เมื่อเร็ว ๆ นี้ Java ได้กลายเป็นภาษายอดนิยมสำหรับแอปพลิเคชันบนมือถือเช่นกัน Android เป็นแพลตฟอร์มที่ใช้โทรศัพท์มือถือที่พัฒนาโดย Google การพัฒนา Android นั้นใช้จาวาเป็นส่วนใหญ่ ไลบรารี Java ส่วนใหญ่มีอยู่ในแพลตฟอร์ม Android แต่มีไลบรารีอื่น ๆ (ที่ไม่ใช่ Java) อยู่ใน Android (สำหรับอินเทอร์เฟซผู้ใช้ ฯลฯ) เช่นกัน
จาวา
Java เป็นหนึ่งในภาษาการเขียนโปรแกรมเชิงวัตถุ (และตามคลาส) ที่ใช้กันอย่างแพร่หลายมากที่สุดซึ่งใช้สำหรับการพัฒนาซอฟต์แวร์เพื่อการพัฒนาเว็บในปัจจุบันเป็นวัตถุประสงค์ทั่วไปและภาษาการเขียนโปรแกรมพร้อมกัน เดิมได้รับการพัฒนาโดย Sun Microsystems ในปี 1995 James Gosling เป็นบิดาของภาษาการเขียนโปรแกรม Java ขณะนี้ Oracle Corporation เป็นเจ้าของ Java (หลังจากซื้อ Sun Microsystems เมื่อเร็วๆ นี้) Java Standard Edition 6 เป็นรุ่นเสถียรในปัจจุบัน Java เป็นภาษาที่พิมพ์ได้ดีซึ่งสนับสนุนแพลตฟอร์มต่างๆ ตั้งแต่ Windows ถึง UNIX Java ได้รับอนุญาตภายใต้ GNU General Public License ไวยากรณ์ของ Java คล้ายกับ C และ C++ มาก ไฟล์ต้นฉบับ Java มีนามสกุล.java หลังจากคอมไพล์ซอร์สไฟล์ Java โดยใช้คอมไพเลอร์ javac จะสร้างไฟล์.class (ประกอบด้วย Java bytecode) ไฟล์ bytecode เหล่านี้สามารถตีความได้โดยใช้ JVM (Java Virtual Machine) เนื่องจาก JVM สามารถทำงานบนแพลตฟอร์มใดก็ได้ Java จึงถูกกล่าวถึงว่าเป็นหลายแพลตฟอร์ม (ข้ามแพลตฟอร์ม) และพกพาได้สูง โดยทั่วไป ผู้ใช้ปลายทางจะใช้ JRE (Java runtime Environment) เพื่อเรียกใช้ Java bytecode (หรือ Java Applets บนเว็บเบราว์เซอร์) นักพัฒนาซอฟต์แวร์ใช้ Java Development Kit (JDK) สำหรับการพัฒนาแอปพลิเคชันนี่คือซูเปอร์เซ็ตของ JRE ซึ่งรวมถึงคอมไพเลอร์และดีบักเกอร์ คุณลักษณะที่ดีของ Java คือการรวบรวมขยะอัตโนมัติ โดยที่วัตถุที่ไม่ต้องการอีกต่อไปจะถูกลบออกจากหน่วยความจำโดยอัตโนมัติ
Android
Android เป็นแพลตฟอร์มโทรศัพท์มือถือที่พัฒนาโดย Google รองรับไลบรารี Java 5.0 ส่วนใหญ่ใน Android ดังนั้นจึงอาจกล่าวได้ว่าการพัฒนา Android นั้นใช้จาวาเป็นหลัก ไลบรารี Java จำนวนมากที่ไม่รองรับอาจมีการแทนที่ที่ดีกว่า (ไลบรารีอื่นที่คล้ายคลึงกัน) หรือไม่จำเป็น (เช่น ไลบรารีสำหรับการพิมพ์ ฯลฯ) ไม่รองรับไลบรารี เช่น java.awt และ java.swing เนื่องจาก Android มีไลบรารีอื่นๆ สำหรับอินเทอร์เฟซผู้ใช้ Android SDK รองรับไลบรารีของบุคคลที่สามอื่น ๆ เช่น org.blues (รองรับ Bluetooth) ในที่สุด โค้ด Android จะถูกคอมไพล์ใน Dalvik opcodes Davilk เป็นเครื่องเสมือนพิเศษที่ปรับให้เหมาะกับอุปกรณ์มือถือที่มีทรัพยากรจำกัด เช่น พลังงาน, CPU และหน่วยความจำ
Android กับ Java ต่างกันอย่างไร
Java เป็นภาษาการเขียนโปรแกรม ในขณะที่ Android เป็นแพลตฟอร์มโทรศัพท์มือถือ การพัฒนา Android นั้นใช้จาวา (โดยส่วนใหญ่) เนื่องจาก Android รองรับไลบรารี Java ส่วนใหญ่ อย่างไรก็ตาม มีความแตกต่างที่สำคัญ แอปพลิเคชัน Android ไม่มีหน้าที่หลักต่างจาก Java พวกเขามีฟังก์ชั่น onCrete, onResume, onPause และ onDestroy ที่นักพัฒนาควรเขียนทับ โค้ด Java คอมไพล์เป็น Java bytecode ในขณะที่โค้ด Android คอมไพล์ใน Davilk opcode