สร้างคลาสหรือประเภท Java

กล่องโต้ตอบสร้างคลาสใหม่และเทมเพลตไฟล์ของ Android Studio ช่วยให้คุณสร้างคลาสและประเภทใหม่ๆ ต่อไปนี้ได้อย่างรวดเร็ว

  • คลาส Java
  • คลาสการแจงนับและคลาส Singleton
  • ประเภทอินเทอร์เฟซและคำอธิบายประกอบ

หลังจากกรอกข้อมูลในช่องของกล่องโต้ตอบสร้างคลาสใหม่และคลิกตกลงแล้ว Android Studio จะสร้าง.javaไฟล์ที่มี โค้ดโครงสร้าง ซึ่งรวมถึงคำสั่งแพ็กเกจ การนำเข้าที่จำเป็น ส่วนหัว และการประกาศคลาสหรือประเภท จากนั้นคุณจะเพิ่มโค้ดลงในไฟล์นี้ได้

เทมเพลตไฟล์จะระบุวิธีที่ Android Studio สร้างโค้ดโครงร่าง คุณสามารถใช้เทมเพลตไฟล์ที่มาพร้อมกับ Android Studio ตามที่เป็นอยู่ หรือปรับแต่งให้เหมาะกับกระบวนการพัฒนาของคุณก็ได้

การดูและปรับแต่งเทมเพลตไฟล์

Android Studio มีเทมเพลตไฟล์ที่กำหนดวิธีสร้างคลาสและประเภท Java ใหม่ด้วยกล่องโต้ตอบสร้างคลาสใหม่ คุณ ปรับแต่งเทมเพลตเหล่านี้ได้

กล่องโต้ตอบสร้างชั้นเรียนใหม่

รูปที่ 1 กล่องโต้ตอบสร้างชั้นเรียนใหม่

เทมเพลตไฟล์ Android Studio มีโค้ด Velocity Template Language (VTL) และตัวแปรที่จัดการตัวเลือกเพิ่มเติมเหล่านี้ กล่องโต้ตอบสร้างคลาสใหม่ใช้เทมเพลตไฟล์ AnnotationType, Class, Enum, Interface และ Singleton

หากต้องการดูเทมเพลต ค้นหาการปรับแต่ง และแก้ไขเทมเพลต ให้ทำตามขั้นตอนต่อไปนี้

  1. ทำสิ่งใดสิ่งหนึ่งต่อไปนี้

    • สำหรับ Windows หรือ Linux ให้เลือกไฟล์ > การตั้งค่า > เอดิเตอร์ > เทมเพลตไฟล์และโค้ด > ไฟล์
    • สำหรับ macOS ให้เลือก Android Studio > ค่ากำหนด > เอดิเตอร์ > เทมเพลตไฟล์และโค้ด > ไฟล์

    ในรายการเทมเพลต ชื่อเทมเพลตภายในจะอยู่ในรูปแบบตัวหนา ชื่อเทมเพลตที่กำหนดเองจะ แสดงในสีไฮไลต์ เช่น สีน้ำเงิน

  2. ปรับแต่งเทมเพลตไฟล์ตามต้องการ

    หากต้องการใช้ช่องในกล่องโต้ตอบสร้างคลาสใหม่ ให้ตรวจสอบว่าการเปลี่ยนแปลงเป็นไปตามโค้ดเทมเพลตไฟล์ Android Studio

ดูข้อมูลเพิ่มเติมเกี่ยวกับเทมเพลตไฟล์ รวมถึง VTL ได้ที่เทมเพลต ไฟล์และโค้ดและกล่องโต้ตอบเทมเพลต ไฟล์และโค้ด

การสร้างคลาสหรือประเภท Java

Android Studio ช่วยคุณสร้างคลาส Java ใหม่ การแจงนับและคลาส Singleton รวมถึงประเภทอินเทอร์เฟซและคำอธิบายประกอบตามเทมเพลตไฟล์

หากต้องการสร้างคลาสหรือประเภท Java ใหม่ ให้ทำตามขั้นตอนต่อไปนี้

  1. ในหน้าต่างโปรเจ็กต์ ให้คลิกขวาที่ไฟล์หรือโฟลเดอร์ Java แล้วเลือกใหม่ > คลาส Java
  2. หรือจะเลือกไฟล์หรือโฟลเดอร์ Java ในหน้าต่างโปรเจ็กต์ หรือคลิกในไฟล์ Java ในโปรแกรมแก้ไขโค้ดก็ได้ จากนั้นเลือกไฟล์ > ใหม่ > คลาส Java

    รายการที่คุณเลือกจะเป็นตัวกำหนดแพ็กเกจเริ่มต้นสำหรับชั้นเรียนหรือประเภทใหม่

  3. ในกล่องโต้ตอบสร้างชั้นเรียนใหม่ ให้กรอกข้อมูลในช่องต่อไปนี้
    • ชื่อ - ชื่อของชั้นเรียนหรือประเภทใหม่ ต้องเป็นไปตาม ข้อกำหนดชื่อ Java อย่าพิมพ์นามสกุลไฟล์
    • ประเภท - เลือกหมวดหมู่ของชั้นเรียนหรือประเภท
    • Superclass - ชั้นเรียนที่ชั้นเรียนใหม่ของคุณรับค่ามาจาก คุณสามารถพิมพ์ชื่อแพ็กเกจและชื่อคลาส หรือพิมพ์เฉพาะชื่อคลาส แล้วดับเบิลคลิกรายการในรายการแบบเลื่อนลงเพื่อเติมข้อความอัตโนมัติ
    • อินเทอร์เฟซ - อินเทอร์เฟซอย่างน้อย 1 รายการที่คลาสหรือประเภทใหม่ ใช้ หากมีหลายอินเทอร์เฟซ ให้คั่นด้วยคอมมาแล้วตามด้วย ช่องว่าง (ไม่บังคับ) คุณสามารถพิมพ์ชื่อแพ็กเกจและอินเทอร์เฟซ หรือพิมพ์เฉพาะชื่ออินเทอร์เฟซ แล้วดับเบิลคลิกรายการในรายการแบบเลื่อนลงเพื่อเติมข้อความอัตโนมัติได้
    • การเติมข้อความอัตโนมัติจะใช้ได้กับชื่ออินเทอร์เฟซแรกเท่านั้น โปรดทราบว่าแม้ว่า เครื่องหมายคอมมาและชื่ออินเทอร์เฟซที่ตามมาอาจทำให้เกิดข้อผิดพลาดในเคล็ดลับเครื่องมือ แต่คุณก็ ไม่ต้องสนใจข้อผิดพลาดดังกล่าวเนื่องจากไม่มีผลต่อโค้ดที่สร้างขึ้น

    • แพ็กเกจ - แพ็กเกจที่คลาสหรือประเภทจะอยู่ในนั้น ค่าเริ่มต้นจะปรากฏในช่องโดยอัตโนมัติ หากคุณพิมพ์ชื่อแพ็กเกจ ในช่อง ระบบจะไฮไลต์ส่วนใดก็ตามของตัวระบุแพ็กเกจที่ไม่มีอยู่เป็นสีแดง ในกรณีนี้ Android Studio จะสร้างแพ็กเกจหลังจากที่คุณคลิกตกลง ฟิลด์นี้ต้องมีค่า ไม่เช่นนั้นไฟล์ Java จะไม่มีคำสั่ง package และระบบจะไม่วางคลาสหรือประเภท ไว้ในแพ็กเกจในโปรเจ็กต์
    • โดยค่าเริ่มต้นจะขึ้นอยู่กับวิธีที่คุณ เปิดกล่องโต้ตอบสร้างชั้นเรียนใหม่ หากคุณเลือกไฟล์หรือโฟลเดอร์ Java ในหน้าต่างโปรเจ็กต์ก่อน ค่าเริ่มต้นจะเป็น แพ็กเกจสำหรับรายการที่คุณเลือก หากคุณคลิกในไฟล์ Java ในตัวแก้ไขโค้ดก่อน ค่าเริ่มต้นจะเป็นแพ็กเกจที่มีไฟล์นี้

    • ระดับการแชร์ - เลือกว่าจะให้ชั้นเรียนหรือประเภทดังกล่าวแสดงต่อ ทุกชั้นเรียน หรือเฉพาะชั้นเรียนในแพ็กเกจของชั้นเรียนนั้น
    • ตัวแก้ไข - เลือกตัวแก้ไข Abstract หรือ Final สำหรับ Class หรือไม่เลือกเลย
    • แสดงกล่องโต้ตอบเลือกการลบล้าง - สำหรับประเภท ของคลาส ให้เลือกตัวเลือกนี้เพื่อเปิดเลือก วิธีการลบล้าง/ใช้กล่องโต้ตอบหลังจากคลิกตกลง ในกล่องโต้ตอบนี้ คุณสามารถเลือกเมธอดที่ต้องการลบล้างหรือ ใช้ และ Android Studio จะสร้างโค้ดโครงร่างสำหรับเมธอดเหล่านี้

    ระบบจะซ่อนช่องที่ไม่มีผลกับประเภท

  4. คลิกตกลง
  5. Android Studio จะสร้างไฟล์ Java ที่มีโค้ดโครงร่างซึ่งคุณสามารถแก้ไขได้ ซึ่งจะ เปิดไฟล์ในตัวแก้ไขโค้ด

หมายเหตุ: คุณสร้างคลาส Singleton ได้โดยเลือก File > New > Singleton หรือ File > New > Java Class เทคนิคหลังมีตัวเลือกมากกว่า

เทมเพลตไฟล์ Android Studio

ส่วนนี้แสดงรายการโค้ดเทมเพลตไฟล์ Android Studio ที่เขียนด้วยภาษาสคริปต์ VTL ตามด้วย คำจำกัดความของตัวแปร ค่าที่คุณระบุในกล่องโต้ตอบสร้างชั้นเรียนใหม่จะกลายเป็นค่าตัวแปรในเทมเพลต โปรดทราบว่าบรรทัดที่ขึ้นต้นด้วย #if (${VISIBILITY} จะขยายไปจนถึงวงเล็บปีกกาเปิด ( { )

เทมเพลตไฟล์ AnnotationType

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end @interface ${NAME} #if (${INTERFACES} != "")extends ${INTERFACES} #end {
}

เทมเพลตไฟล์ชั้นเรียน

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end #if (${ABSTRACT} == "TRUE")abstract #end #if (${FINAL} == "TRUE")final #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end {
}

เทมเพลตไฟล์ Enum

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end {
}

เทมเพลตไฟล์อินเทอร์เฟซ

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end {
#end {
}

เทมเพลตไฟล์ Singleton

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end {
    private static final ${NAME} ourInstance = new ${NAME}();

    #if (${VISIBILITY} == "PUBLIC")public #end static ${NAME} getInstance() {
        return ourInstance;
    }

    private ${NAME}() {
    }
}

ตัวแปรเทมเพลตไฟล์

Android Studio จะแทนที่ตัวแปรเทมเพลตไฟล์ด้วยค่าในไฟล์ Java ที่สร้างขึ้น คุณป้อนค่าในกล่องโต้ตอบสร้างชั้นเรียนใหม่ เทมเพลตมีตัวแปรต่อไปนี้ที่คุณใช้ได้

  • IMPORT_BLOCK - รายการคำสั่ง Java import ที่คั่นด้วยบรรทัดใหม่ซึ่งจำเป็นต่อการรองรับคลาสแม่หรือ อินเทอร์เฟซ หรือสตริงว่าง ("") เช่น หากคุณใช้เฉพาะอินเทอร์เฟซ Runnable และไม่ได้ขยายอะไร ตัวแปรนี้จะเป็น "import java.lang.Runnable;\n" หากคุณใช้ Runnable อินเทอร์เฟซและขยายคลาส Activity ระบบจะ "import android.app.Activity;\nimportjava.lang.Runnable;\n"
  • VISIBILITY - ไม่ว่าชั้นเรียนจะมีสิทธิ์เข้าถึงแบบสาธารณะหรือไม่ก็ตาม โดยมีค่าเป็น PUBLIC หรือ PACKAGE_PRIVATE ได้
  • SUPERCLASS - ชื่อชั้นเรียนเดียวหรือว่างเปล่า หากมี จะมีextends ${SUPERCLASS}ข้อความหลังชื่อชั้นเรียนใหม่
  • INTERFACES - รายการอินเทอร์เฟซที่คั่นด้วยคอมมา หรือว่าง หากมี อยู่ จะมีข้อความimplements ${INTERFACES}หลังจาก คลาสหลัก หรือหลังจากชื่อคลาสหากไม่มีคลาสหลัก สําหรับอินเทอร์เฟซและ ประเภทคําอธิบายประกอบ อินเทอร์เฟซจะมีคีย์เวิร์ด extends
  • ABSTRACT - ระบุว่าคลาสควรเป็นคลาส Abstract หรือไม่ โดยมีค่าเป็น TRUE หรือ FALSE ได้
  • FINAL - ควรรวมชั้นเรียนหรือไม่ โดยมีค่าเป็น TRUE หรือ FALSE ได้