Membuat class atau jenis Java

Dengan dialog Create New Class dan template file, Android Studio membantu Anda membuat class dan jenis baru berikut ini dengan cepat:

  • Class Java
  • Class enumeration dan singleton
  • Jenis antarmuka dan anotasi

Setelah mengisi kolom dialog Create New Class dan mengklik OK, Android Studio akan membuat file .java yang berisi kode kerangka, termasuk pernyataan paket, impor apa pun yang diperlukan, header, dan deklarasi class atau jenis. Selanjutnya, Anda bisa menambahkan kode ke file ini.

Template file menentukan cara Android Studio menghasilkan kode kerangka. Anda bisa menggunakan template file yang disediakan dengan Android Studio apa adanya, atau menyesuaikannya dengan proses pengembangan Anda.

Menampilkan dan menyesuaikan template file

Android Studio menyediakan template file yang menentukan cara pembuatan class dan jenis Java baru dengan dialog Create New Class. Anda dapat menyesuaikan template ini.

Dialog Create New Class.

Gambar 1. Dialog Create New Class.

Template file Android Studio mencakup kode Velocity Template Language (VTL) dan variabel yang menangani opsi tambahan ini. Dialog Create New Class menggunakan template file AnnotationType, Class, Enum, Interface, dan Singleton.

Untuk menampilkan template, menemukan penyesuaian, dan mengubah template, ikuti langkah-langkah berikut:

  1. Lakukan salah satu hal berikut:

    • Untuk Windows atau Linux, pilih File > Settings > Editor > File and Code Templates > Files.
    • Untuk macOS, pilih Android Studio > Preferences > Editor > File and Code Templates > Files.

    Dalam daftar template, nama template internal ditulis menggunakan font tebal. Nama template yang disesuaikan ditampilkan dalam warna sorotan, seperti biru.

  2. Sesuaikan template file sesuai kebutuhan.

    Jika Anda ingin menggunakan kolom dialog Create New Class, pastikan perubahan Anda sesuai dengan Kode template file Android Studio.

Untuk mengetahui informasi selengkapnya tentang template file, termasuk VTL, baca Template File dan Kode dan Dialog Template File dan Kode.

Membuat class atau jenis Java

Android Studio membantu Anda membuat class Java baru; class enumeration dan singleton; serta jenis antarmuka dan anotasi berdasarkan template file.

Untuk membuat class atau jenis Java baru, ikuti langkah-langkah ini:

  1. Di jendela Project, klik kanan file atau folder Java, lalu pilih New > Java Class.
  2. Atau, pilih file atau folder Java di jendela Project, atau klik file Java di Code Editor. Lalu, pilih File > New > Java Class.

    Item yang Anda pilih menentukan paket default untuk class atau jenis baru.

  3. Dalam dialog Create New Class, isi kolom:
    • Name - Nama class atau jenis baru. Nama ini harus memenuhi persyaratan nama Java. Jangan masukkan ekstensi nama file.
    • Kind - Pilih kategori class atau jenis.
    • Superclass - Class tempat class baru Anda berasal. Anda dapat memasukkan nama class dan paket, atau hanya nama class, lalu mengklik dua kali item dalam menu drop-down untuk otomatis melengkapinya.
    • Interface(s) - Satu atau beberapa antarmuka yang diterapkan oleh class atau jenis baru. Beberapa antarmuka harus dipisahkan dengan koma dan diikuti oleh spasi opsional. Anda dapat memasukkan nama antarmuka dan paket, atau hanya nama antarmuka, lalu mengklik dua kali item dalam menu drop-down untuk otomatis melengkapinya.
    • Pelengkapan otomatis hanya berfungsi untuk nama antarmuka pertama. Perhatikan bahwa meskipun koma dan nama antarmuka berikut bisa memunculkan error tooltip, Anda dapat mengabaikannya karena tidak memengaruhi kode yang dibuat.

    • Package - Paket tempat class atau jenis akan berada. Nilai default akan otomatis muncul dalam kolom. Jika Anda memasukkan nama paket pada kolom tersebut, setiap bagian ID paket yang tidak ada akan disorot merah. Dalam hal ini, Android Studio akan membuat paket setelah Anda mengklik OK. Kolom ini harus berisi nilai; jika tidak, file Java tidak akan menyertakan pernyataan package, dan class atau jenis tidak akan ditempatkan dalam paket pada project.
    • Defaultnya bergantung pada cara Anda meluncurkan dialog Create New Class. Jika Anda pertama kali memilih file atau folder Java di jendela Project, defaultnya adalah paket untuk item yang Anda pilih. Jika Anda pertama kali mengklik file Java di Code Editor, defaultnya adalah paket yang berisi file ini.

    • Visibility - Pilih apakah class atau jenis akan terlihat oleh semua class, atau hanya untuk yang ada dalam paketnya sendiri.
    • Modifiers - Pilih pengubah Abstract atau Final untuk Class, atau tidak sama sekali.
    • Show Select Overrides Dialog - Untuk Kind Class, centang opsi ini untuk membuka dialog Select Methods to Override/Implement setelah mengklik OK. Dalam dialog ini, Anda dapat memilih metode yang ingin diganti atau diimplementasikan, dan Android Studio akan membuat kode kerangka untuk metode ini.

    Setiap kolom yang tidak diterapkan pada Kind akan disembunyikan.

  4. Klik OK.
  5. Android Studio membuat file Java dengan kode kerangka yang bisa dimodifikasi. File tersebut akan dibuka di Code Editor.

Catatan: Anda dapat membuat class singleton dengan memilih File > New > Singleton atau File > New > Java Class; teknik yang terakhir menawarkan lebih banyak opsi.

Template file Android Studio

Bagian ini mencantumkan kode template file Android Studio yang ditulis dalam bahasa skrip VTL, yang diikuti oleh definisi variabel. Nilai-nilai yang Anda berikan dalam dialog Create New Class menjadi nilai variabel dalam template tersebut. Perhatikan bahwa baris yang dimulai dengan #if (${VISIBILITY} akan meluas sampai ke kurung kurawal ({ ).

Template file 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 {
}

Template file class

#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 {
}

Template file 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 {
}

Template file antarmuka

#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 {
}

Template file 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}() {
    }
}

Variabel template file

Android Studio menggantikan variabel template file dengan nilai di file Java yang dihasilkan. Anda memasukkan nilai-nilai dalam dialog Create New Class. Template ini memiliki variabel berikut yang bisa Anda gunakan:

  • IMPORT_BLOCK - Daftar pernyataan import Java yang dibatasi baris baru yang diperlukan untuk mendukung superclass atau antarmuka apa pun, atau string kosong (""). Contohnya, jika Anda hanya mengimplementasikan antarmuka Runnable dan tidak memperluas apa pun, variabel ini akan menjadi "import java.lang.Runnable;\n". Jika Anda mengimplementasikan antarmuka Runnable dan memperluas class Activity, variabel akan menjadi "import android.app.Activity;\nimportjava.lang.Runnable;\n".
  • VISIBILITY - Apakah class akan memiliki akses publik atau tidak. Class dapat memiliki nilai PUBLIC atau PACKAGE_PRIVATE.
  • SUPERCLASS - Nama class tunggal, atau kosong. Jika ada, klausa extends ${SUPERCLASS} akan muncul setelah nama class baru.
  • INTERFACES - Daftar antarmuka yang dipisahkan koma, atau kosong. Jika ada, klausa implements ${INTERFACES} akan muncul setelah superclass, atau setelah nama class jika tidak ada superclass. Untuk antarmuka dan jenis anotasi, antarmuka memiliki kata kunci extends.
  • ABSTRACT - Apakah class harus abstrak atau tidak. Class dapat memiliki nilai TRUE atau FALSE.
  • FINAL - Apakah class harus final atau tidak. Class dapat memiliki nilai TRUE atau FALSE.