การสร้างส่วนติดต่อกับผู้ใช้แบบกราฟฟิก ในภาษาjava

Java Foundation Class
ระบบปฏิบัติการส่วนใหญ่จะมีส่วนติดต่อกับผู้ใช้เป็นแบบกราฟฟิก (Graphical User Interface  เรียกย่อว่า GUI) ทั้งนี้เนื่องจากใช้งานง่ายกว่า
ภาษาจาวาจะสนับสนุนการพัฒนาโปรแกรม GUI ที่สามารถใช้งานได้หลายแพลตฟอร์ม โดยจะใช้ชุดคำสั่งเดียวกัน
Java Foundation Class (JFC) ประกอบด้วยแพคเก็จต่างๆดังนี้
     -Abstract Window Toolkit (AWT)
     -Swing
     -Java 2D
     -Accessibility
     -Drag and Drop
รูปแสดงส่วนประกอบที่สำคัญของ JFC
รูปแสดงส่วนประกอบที่สำคัญของ JFC
AWT
แพคเก็จ AWT ประกอบด้วยคลาสต่างๆที่เป็นประเภทส่วนประกอบกราฟฟิก (graphical component) เพื่อนำไปใช้ในการพัฒนาโปรแกรม GUI 
แพคเก็จ  AWT จะช่วยในการสร้างโปรแกรม GUI ประเภท look and feel ที่ขึ้นอยู่กับแพลตฟอร์มที่ใช้งาน
ภาษาจาวาได้กำหนดแพคเก็จ AWT ขึ้นไว้ตั้งแต่โปรแกรมจาวาเวอร์ชั่นแรก (JDK 1.0) โดยอยู่ในแพคเก็จที่ชื่อ java.awt
แพคเก็จ AWT จะประกอบไปด้วยคลาสและอินเตอร์เฟสต่างๆเพื่อใช้ในการพัฒนาโปรแกรม GUI
ในแพจเก็จ java.awt มีคลาสและอินเตอร์เฟสที่สำคัญดังนี้ 
      -คลาสComponent  การเขียนโปรแกรม GUI นั้นจะเป็นการสร้างออปเจ็คต่างๆที่เป็นออปเจ็คของคลาสที่เป็นส่วนประกอบกราฟฟิก  คลาสที่เป็นส่วนประกอบกราฟฟิกจะสืบทอดมาจากคลาสที่ชื่อ Component  คลาสที่เป็น subclass ของคลาส Component จะแบ่งเป็นสองกลุ่มคือ
      1.คลาสที่เป็นคลาสประเภท Container เป็นคลาสที่ใช้ในการใส่ส่วนประกอบกราฟฟิกต่างๆ
      2.คลาสที่เป็นส่วนประกอบกราฟฟิกอื่นๆ อาทิเช่น Button,Choice และ List เป็นต้น
      -คลาสContainer   โปรแกรม GUI จะต้องมีการสร้างออปเจ็คของคลาสประเภท Container อย่างน้อยหนึ่งออปเจ็คขึ้นมาก่อน เพื่อใช้ในการใส่ออปเจ็คของคลาสที่เป็นส่วนประกอบกราฟฟิกอื่นๆ  คลาสประเภท Container ที่อยู่ในแพคเก็จ AWT มีดังนี้
       1.Frame
       2.Panel
       3.Dialog
       4.Applet
คลาสประเภท Container เป็นคลาสที่สืบทอดมาจากคลาสที่ชื่อ Component
      -LayoutManager  (อินเตอร์เฟส)
      -Graphics
      -Color
      -Font
      -AWTEvent
รูปแสดงส่วนประกอบที่สำคัญของ AWT
รูปแสดงส่วนประกอบที่สำคัญของ AWT