ݺߣ

ݺߣShare a Scribd company logo
By IamUser773
เคยสงสัยกันบ้างไหมครับว่าทาไมเวลาที่เราสร้าง Activity ซักตัวนึงทาไมต้อง
extends AppCompatActivity
และมันต่างยังไงกันยังไงกับการ extends Activity
เริ่มต้นคาถามแรก การ extends คืออะไร?
การ extends ก็คือการที่เราสามารถที่จะสืบทอด
คุณสมบัติของ class ที่เป็นคลาสแม่ของเรามายังคลาสลูก
นั่นเอง พูดแบบนี้คงไม่เห็นภาพใช่ไหมครับ งั้นไปดู
ภาพประกอบกันเลย
สมมุติว่าที่ class แม่ของผมได้ทาการ
สร้าง มอเตอร์ไซไว้หนึ่งคันเวลาผมจะ
สร้างclass ใหม่ผมก็ไม่ต้องมานั่งสร้าง
มอเตอร์ไซทุกครั้งที่ผมสร้างclass ใหม่
แต่ผมสามารถนามอเตอร์ไซที่ผมสร้าง
ไว้แล้วมาใช้ได้เลย
โดยผมสามารถที่จะนามอเตอร์ไซที่เรียก
มาจากclassแม่มาแต่งเพิ่มก็ได้เช่น
เปลี่ยนล้อใหม่,ทาท่อใหม่ หรือปรับแต่ง
เครื่องใหม่ก็ได้ โดยแนวคิดของการ
extends ก็จะคล้ายๆแบบนี้ครับ
แล้วการ extends Activity คืออะไรล่ะ?
มันก็คือเรียกใช้ Activity Lifecycle เพื่อใช้ในการสร้าง
Activity นั่นเองยกตัวอย่างเช่น method onCreate() ที่
ใช้สาหรับสร้างActivity หรือ onDestroy() ที่ใช้สาหรับ
ทาลายActivity มันก็คือclassที่ทางandroid มีไว้ให้เรา
สามารถเรียกใช้ได้นั่นเอง โดยเมื่อเราต้องการเรียกใช้
class เหล่านั้นเราก็สามารถ extends Activity เพื่อนา
class เหล่านั้นมาใช้ได้เลย
แล้วการ extends AppCompatActivity คืออะไรล่ะ?
AppCompatActivity ถูกสร้างมาเพื่อให้android ที่
version ต่ากว่า21 สามารถใช้Theme และ Toolbar
แบบใหม่ได้นั่นเอง(material design) โดยเจ้า
AppCompat ก็ถูกปรับแต่งมาจาก FragmentActivity
อีกทีนึง แต่ทั่งหมดก็มาจะคลาส Activity นั่นเอง
Activity
<-
FragmentActivity
<-
AppCompatActivity
โดยแนวคิดการใช้งานต่างๆก็ยังเหมือนเดิม
เพียงแต่ถูกปรับแต่งเพื่อให้เข้ากันได้กับ
Android เวอร์ชั่นใหม่ๆ
เข้าใจแล้วใช่ไหมครับ ^^

More Related Content

extends AppCompatActivity คืออะไร