Android Studio, Yeni Sınıf Oluştur iletişim kutusu ve dosya şablonlarıyla aşağıdaki yeni sınıf ve türleri hızlıca oluşturmanıza yardımcı olur:
- Java sınıfları
- Tanım listesi ve tekil sınıflar
- Arayüz ve ek açıklama türleri
Yeni Sınıf Oluştur iletişim kutusu alanlarını doldurup Tamam'ı tıkladığınızda Android Studio, paket beyanı, gerekli içe aktarma işlemleri, başlık ve sınıf veya tür beyanı da dahil olmak üzere iskelet kod içeren bir .java
dosyası oluşturur. Ardından, kodunuzu bu dosyaya ekleyebilirsiniz.
Dosya şablonları, Android Studio'nun iskelet kodunu nasıl oluşturduğunu belirtir. Android Studio ile sağlanan dosya şablonlarını olduğu gibi kullanabilir veya geliştirme sürecinize uyacak şekilde özelleştirebilirsiniz.
Dosya şablonlarını görüntüleme ve özelleştirme
Android Studio, Yeni Sınıf Oluştur iletişim kutusuyla yeni Java sınıflarının ve türlerinin nasıl oluşturulduğunu belirleyen dosya şablonları sağlar. Bu şablonları özelleştirebilirsiniz.
Android Studio dosya şablonları, Velocity Şablon Dili (VTL) kodu ve bu ek seçenekleri işleyen değişkenler içerir. Yeni Sınıf Oluştur iletişim kutusu; DescriptionType, Sınıf, Enum, Interface ve Singleton dosya şablonlarını kullanır.
Şablonları görüntülemek, özelleştirmeleri bulmak ve şablonları değiştirmek için aşağıdaki adımları uygulayın:
Aşağıdakilerden birini yapın:
- Windows veya Linux için Dosya > Ayarlar > Düzenleyici > Dosya ve Kod Şablonları > Dosyalar'ı seçin.
- macOS için Android Studio > Tercihler > Düzenleyici > Dosya ve Kod Şablonları > Dosyalar'ı seçin.
Şablon listesinde dahili şablon adları kalın yazıyla gösterilir. Özelleştirilmiş şablon adları mavi gibi bir vurgu renginde gösterilir.
Dosya şablonlarını gerektiği gibi özelleştirin.
Yeni Sınıf Oluştur iletişim kutusu alanlarını kullanmak istiyorsanız değişikliklerinizin Android Studio dosya şablon koduna uyduğundan emin olun.
VTL dahil dosya şablonları hakkında daha fazla bilgi için Dosya ve Kod Şablonları ile Dosya ve Kod Şablonları İletişim Kutusu'na bakın.
Java sınıfı veya türü oluşturma
Android Studio, dosya şablonlarına dayalı yeni Java sınıfları, listeleme ve tekil sınıflar, arayüz ve ek açıklama türleri oluşturmanıza yardımcı olur.
Yeni bir Java sınıfı veya türü oluşturmak için şu adımları izleyin:
- Proje penceresinde bir Java dosyasını veya klasörünü sağ tıklayın ve Yeni > Java Sınıfı'nı seçin.
- Yeni Sınıf Oluştur iletişim kutusundaki alanları doldurun:
- Ad - Yeni sınıfın veya türün adı. Java ad koşullarına uygun olmalıdır. Dosya adı uzantısı yazmayın.
- Tür: Sınıf veya tür kategorisini seçin.
- Superclass: Yeni sınıfınızın devraldığı sınıf. Paket ve sınıf adını veya yalnızca sınıf adını yazıp açılır listedeki bir öğeyi çift tıklayarak otomatik tamamlama özelliğini kullanabilirsiniz.
- Arayüzler: Yeni sınıf veya türün uyguladığı bir veya daha fazla arayüz. Birden fazla arayüz virgülle ve ardından isteğe bağlı bir boşlukla ayrılmalıdır. Paket ve arayüz adını veya yalnızca arayüz adını yazıp açılır listedeki bir öğeyi çift tıklayarak otomatik tamamlama özelliğini kullanabilirsiniz.
- Paket: Sınıfın veya türün bulunduğu paket. Varsayılan ayar otomatik olarak alanda görünür. Alana bir paket adı yazarsanız paket tanımlayıcısının var olmayan kısımları kırmızıyla vurgulanır. Bu durumda, Android Studio siz Tamam'ı tıkladıktan sonra paketi oluşturur. Bu alan bir değer içermelidir. Aksi takdirde Java dosyası bir
package
ifadesi içermez ve sınıf veya tür projedeki bir pakete yerleştirilmez. - Görünürlük: Sınıf veya türün tüm sınıflar tarafından mı yoksa yalnızca kendi paketindeki sınıflar tarafından mı görüleceğini seçin.
- Değiştiriciler: Sınıf için Soyut veya Nihai değiştiriciyi ya da hiçbirini seçin.
- Yedekleri Seç iletişim kutusunu göster: Sınıf Türü için Tamam'ı tıkladıktan sonra Yedekleri Seç/Uygula iletişim kutusunu açmak üzere bu seçeneği işaretleyin. Bu iletişim kutusunda, geçersiz kılmak veya uygulamak istediğiniz yöntemleri seçebilirsiniz. Android Studio bu yöntemler için iskelet kod oluşturur.
- Tamam'ı tıklayın.
Alternatif olarak, Proje penceresinde bir Java dosyası veya klasörü seçin ya da Kod Düzenleyici'de bir Java dosyasını tıklayın. Ardından Dosya > Yeni > Java Sınıfı'nı seçin.
Seçtiğiniz öğe, yeni sınıf veya tür için varsayılan paketi belirler.
Otomatik tamamlama yalnızca ilk arayüz adı için çalışır. Virgül ve ardından gelen arayüz adı bir ipucu hatası oluştursa da oluşturulan kodu etkilemediği için hatayı yoksayabilirsiniz.
Varsayılan ayar, Yeni Sınıf Oluştur iletişim kutusunu nasıl başlattığınıza bağlıdır. İlk olarak Proje penceresinde bir Java dosyası veya klasörü seçtiyseniz varsayılan olarak seçtiğiniz öğenin paketi kullanılır. Kod Düzenleyici'de ilk kez bir Java dosyasını tıkladıysanız varsayılan olarak bu dosyayı içeren paket kullanılır.
Tür için geçerli olmayan tüm alanlar gizlenir.
Android Studio, değiştirebileceğiniz iskelet kod içeren bir Java dosyası oluşturur. Dosya, Kod Düzenleyici'de açılır.
Not: File (Dosya) > New (Yeni) > Singleton veya File (Dosya) > New (Yeni) > Java Class (Java Sınıfı) seçeneklerini belirleyerek bir singleton sınıfı oluşturabilirsiniz. İkinci teknik daha fazla seçenek sunar.
Android Studio dosya şablonları
Bu bölümde, VTL komut dosyası dilinde yazılmış Android Studio dosya şablonu kodu ve ardından değişkenlerin tanımları listelenmektedir. Yeni Sınıf Oluştur iletişim kutusunda sağladığınız değerler, şablondaki değişken değerler olur.
#if (${VISIBILITY}
ile başlayan satırların, açık küme parantezine ({
) kadar uzadığını unutmayın.
NotlarType dosya şablonu
#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 { }
Sınıf dosyası şablonu
#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 dosya şablonu
#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 { }
Arayüz dosyası şablonu
#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 { }
Tekil dosya şablonu
#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}() { } }
Dosya şablonu değişkenleri
Android Studio, dosya şablonu değişkenlerini oluşturulan Java dosyasındaki değerlerle değiştirir. Değerleri Yeni Sınıf Oluştur iletişim kutusuna girersiniz. Şablonda kullanabileceğiniz aşağıdaki değişkenler vardır:
IMPORT_BLOCK
: Herhangi bir üst sınıfı veya arayüzü desteklemek için gerekli olan Javaimport
ifadelerinin yeni satırla ayrılmış listesi ya da boş bir dize (""
). Örneğin, yalnızcaRunnable
arayüzünü uygular ve hiçbir şeyi genişletmezseniz bu değişken"import java.lang.Runnable;\n"
olur.Runnable
arayüzünü uygular veActivity
sınıfını genişletirseniz kod"import android.app.Activity;\nimportjava.lang.Runnable;\n"
olur.VISIBILITY
: Sınıfın herkese açık olup olmayacağı.PUBLIC
veyaPACKAGE_PRIVATE
değerine sahip olabilir.SUPERCLASS
: Tek bir sınıf adı veya boş. Varsa yeni sınıf adından sonra birextends ${SUPERCLASS}
ifadesi olur.INTERFACES
: Arayüzlerin virgülle ayrılmış listesi veya boş. Varsa üst sınıftan sonra veya üst sınıf yoksa sınıf adından sonra birimplements ${INTERFACES}
yan tümcesi bulunur. Arayüzler ve ek açıklama türleri için arayüzlerdeextends
anahtar kelimesi bulunur.ABSTRACT
: Sınıfın soyut olup olmayacağını belirtir.TRUE
veyaFALSE
değerine sahip olabilir.FINAL
: Sınıfın nihai olup olmayacağı.TRUE
veyaFALSE
değerine sahip olabilir.