สมาชิกแบบ static และค่าคงที่ของคลาส
แบ่งปันข้อมูลและตัวช่วยในระดับคลาส
สมาชิกแบบ static และค่าคงที่ของคลาส เป็นบทเรียน Dart Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Dart Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Dart Academy มีบทเรียนทั้งหมด 4 บทเรียน
ใช้ร่วมกัน ไม่ใช่แยกตามอินสแตนซ์
สมาชิกส่วนใหญ่เป็นของออบเจ็กต์แต่ละตัว แต่บางสมาชิกเป็นของคลาสเอง สมาชิกเหล่านั้นเรียกว่าสมาชิกแบบสแตติก ซึ่งทุกออบเจ็กต์ใช้ร่วมกัน
ฟิลด์แบบสแตติก
ทำเครื่องหมายฟิลด์เป็นสแตติก แล้วฟิลด์นั้นจะมีเพียงหนึ่งชุดสำหรับทั้งคลาส ไม่ใช่หนึ่งชุดต่อหนึ่งอินสแตนซ์ ออบเจ็กต์ทั้งหมดจะเห็นค่าเดียวกัน
class Dog {
static int count = 0;
}การเข้าถึงสมาชิกแบบสแตติก
เข้าถึงสมาชิกแบบสแตติกผ่านชื่อคลาส ไม่ใช่ผ่านอินสแตนซ์ คุณไม่จำเป็นต้องสร้างออบเจ็กต์เพื่อใช้งานสมาชิกนี้
Dog.count = 5;
print(Dog.count);การนับอินสแตนซ์
การใช้งานทั่วไปของฟิลด์แบบสแตติกคือทำเป็นตัวนับร่วม ออบเจ็กต์ใหม่แต่ละตัวสามารถเพิ่มค่าตัวนับเพื่อดูว่ามีออบเจ็กต์อยู่กี่ตัว
Dog() {
count++;
}เมธอดแบบสแตติก
เมธอดแบบสแตติกเป็นของคลาสเช่นกัน เมธอดนี้ไม่มี this และไม่สามารถเข้าถึงฟิลด์ของอินสแตนซ์ได้ แต่เข้าถึงฟิลด์แบบสแตติกได้
static int square(int n) => n * n;การเรียกใช้เมธอดแบบสแตติก
เรียกใช้เมธอดแบบสแตติกผ่านชื่อคลาส เมธอดนี้ทำงานเหมือนฟังก์ชันตัวช่วยที่จัดกลุ่มไว้ภายใต้คลาสของคุณ
var r = MathUtil.square(4); // 16ค่าคงที่ของคลาส
ใช้ static และ const ร่วมกันเพื่อสร้างค่าคงที่ที่ใช้ร่วมกัน ค่านี้จะถูกคำนวณขณะคอมไพล์และเหมือนกันตลอดทั้งคลาส
static const double pi = 3.14159;การใช้ค่าคงที่ของคลาส
อ่านค่าคงที่ของคลาสผ่านชื่อคลาสได้เช่นเดียวกับฟิลด์แบบสแตติก เหมาะสำหรับค่าการตั้งค่าที่ไม่เปลี่ยนแปลง
print(Circle.pi);สมาชิกแบบสแตติกมองไม่เห็นอินสแตนซ์
สมาชิกแบบสแตติกทำงานโดยไม่มีออบเจ็กต์ จึงไม่มี this การพยายามอ่านฟิลด์ของอินสแตนซ์จากสมาชิกนี้จะทำให้เกิดข้อผิดพลาด
static void show() {
// print(name); // error
}เมื่อใดควรเลือกใช้สแตติก
เลือกใช้สแตติกเมื่อข้อมูลหรือพฤติกรรมนั้นเป็นของชนิดข้อมูลโดยรวม ไม่ใช่ของออบเจ็กต์ใดออบเจ็กต์หนึ่งที่คุณสร้าง
ตัวช่วยแบบสแตติกช่วยจัดระเบียบ
การจัดกลุ่มฟังก์ชันตัวช่วยที่เกี่ยวข้องเป็นเมธอดแบบสแตติกช่วยให้เป็นระเบียบภายใต้ชื่อคลาสเดียว แทนที่จะเป็นฟังก์ชันแยกกระจัดกระจาย 🧰
ตรวจสอบความเข้าใจอย่างรวดเร็ว
หากต้องการตัวนับหนึ่งตัวที่ใช้ร่วมกันในออบเจ็กต์ทุกตัวของคลาส คุณจะใช้สิ่งใด
ทบทวน: สแตติกและค่าคงที่
คุณได้เรียนรู้ว่าสมาชิกแบบสแตติกเป็นของคลาส ไม่มี this และ static const ใช้กำหนดค่าคงที่ร่วมกันที่คำนวณขณะคอมไพล์ 🎉
เรียนรู้ Dart ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “สมาชิกแบบ static และค่าคงที่ของคลาส” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “สมาชิกแบบ static และค่าคงที่ของคลาส” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Dart Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Dart Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “สมาชิกแบบ static และค่าคงที่ของคลาส”
แบ่งปันข้อมูลและตัวช่วยในระดับคลาส คุณปฏิบัติ Dart Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Dart Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Dart Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “สมาชิกแบบ static และค่าคงที่ของคลาส” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Dart Academy นี้ได้ไหม
ได้ บทเรียน Dart Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- กำหนดคลาสพร้อมฟิลด์
- เมธอดของอินสแตนซ์และ this
- ตัวอ่านและตัวกำหนดค่า
- สมาชิกแบบ static และค่าคงที่ของคลาส