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.
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 memodifikasi template, ikuti langkah-langkah berikut:
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.
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 berikut:
- Di jendela Project, klik kanan file atau folder Java, lalu pilih New > Java Class.
- 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.
- 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. - 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 keduanya.
- 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.
- Klik OK.
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.
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.
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.
Setiap kolom yang tidak diterapkan pada Kind akan disembunyikan.
Android Studio membuat file Java dengan kode kerangka yang bisa dimodifikasi. File tersebut akan dibuka di Code Editor.
Catatan: Anda bisa membuat class singleton dengan memilih File > New > Singleton atau File > New > Java Class; teknik yang terakhir disebut ini 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 pernyataanimport
Java yang dibatasi baris baru yang diperlukan untuk mendukung superclass atau antarmuka apa pun, atau string kosong (""
). Contohnya, jika Anda hanya mengimplementasikan antarmukaRunnable
dan tidak memperluas apa pun, variabel ini akan menjadi"import java.lang.Runnable;\n"
. Jika Anda mengimplementasikan antarmukaRunnable
dan memperluas classActivity
, variabel akan menjadi"import android.app.Activity;\nimportjava.lang.Runnable;\n"
.VISIBILITY
- Apakah class akan memiliki akses publik atau tidak. Class dapat memiliki nilaiPUBLIC
atauPACKAGE_PRIVATE
.SUPERCLASS
- Nama class tunggal, atau kosong. Jika ada, klausaextends ${SUPERCLASS}
akan muncul setelah nama class baru.INTERFACES
- Daftar antarmuka yang dipisahkan koma, atau kosong. Jika ada, klausaimplements ${INTERFACES}
akan muncul setelah superclass, atau setelah nama class jika tidak ada superclass. Untuk antarmuka dan jenis anotasi, antarmuka memiliki kata kunciextends
.ABSTRACT
- Apakah class harus abstrak atau tidak. Class dapat memiliki nilaiTRUE
atauFALSE
.FINAL
- Apakah class harus final atau tidak. Class dapat memiliki nilaiTRUE
atauFALSE
.