Java sınıfı veya türü oluşturma

Android Studio, Yeni Sınıf Oluştur iletişim kutusu ve dosya şablonlarıyla aşağıdaki yeni sınıfları ve türleri hızlı bir şekilde oluşturmanıza yardımcı olur:

  • Java sınıfları
  • Numaralandırma ve tekilleştirme sınıfları
  • Arayüz ve ek açıklama türleri

Yeni Sınıf Oluştur iletişim alanlarını doldurup Tamam'ı tıkladığınızda Android Studio paket ifadesi, gerekli içe aktarma işlemleri, üstbilgi ve sınıf veya tür bildirimi dahil olmak üzere iskelet kod içeren bir .java dosyası oluşturur. Sonra, kodunuzu bu dosyaya ekleyebilirsiniz.

Dosya şablonları, Android Studio'nun iskelet kodu nasıl oluşturacağını belirtir. Android Studio ile sağlanan dosya şablonlarını olduğu gibi kullanabilir veya geliştirme sürecinize uygun şekilde özelleştirebilirsiniz.

Dosya şablonlarını görüntüleme ve özelleştirme

Android Studio, yeni Java sınıflarının ve türlerinin Yeni Sınıf Oluştur iletişim kutusuyla nasıl oluşturulduğunu belirleyen dosya şablonları sunar. Bu şablonları özelleştirebilirsiniz.

Yeni Sınıf Oluştur iletişim kutusu.

1. Şekil. Yeni Sınıf Oluştur iletişim kutusunu açın.

Android Studio dosya şablonları, Hız Şablonu Dili (VTL) kodunu ve bu ek seçenekleri işleyen değişkenleri içerir. Create New Class iletişim kutusu AnnotationType, Class, Enum, Interface ve Singleton dosya şablonlarını kullanır.

Şablonları görüntülemek, özelleştirmeleri bulmak ve değiştirmek için şu adımları izleyin:

  1. 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ı tipindedir. Özelleştirilmiş şablon adları, mavi gibi bir vurgu renginde görüntülenir.

  2. Dosya şablonlarını gerektiği şekilde özelleştirin.

    Yeni Sınıf Oluştur iletişim alanlarını kullanmak istiyorsanız değişikliklerinizin Android Studio dosya şablonu koduyla uyumlu olduğundan emin olun.

VTL dahil olmak üzere dosya şablonları hakkında daha fazla bilgi için Dosya ve Kod Şablonları ve Dosya ve Kod Şablonları İletişim Kutusu'na bakın.

Java sınıfı veya türü oluşturma

Android Studio, yeni Java sınıfları, numaralandırma ve tekilleştirme sınıfları, ayrıca dosya şablonlarına dayanan 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ı uygulayın:

  1. Proje penceresinde, bir Java dosyasını veya klasörünü sağ tıklayın ve Yeni > Java Sınıfı'nı seçin.
  2. 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.

  3. Yeni Sınıf Oluştur iletişim kutusunda, alanları doldurun:
    • Ad: Yeni sınıfın veya türün adı. Java ad gereksinimlerine uymalıdır. Dosya adı uzantısı yazmayın.
    • Tür: Sınıfın veya türün kategorisini seçin.
    • Superclass: Yeni sınıfınızın devraldığı sınıf. Paketi ve sınıf adını veya yalnızca sınıf adını yazabilir ve ardından açılır listedeki bir öğeyi çift tıklayarak otomatik tamamlayabilirsiniz.
    • Arayüzler: Yeni sınıfın veya türün uyguladığı bir veya daha fazla arayüzdür. Birden çok arayüz, virgülle ve ardından isteğe bağlı bir boşlukla ayrılmalıdır. Paketi ve arayüz adını veya yalnızca arayüz adını yazabilir ve ardından, açılır listedeki bir öğeyi çift tıklayarak otomatik tamamlayabilirsiniz.
    • Otomatik tamamlama yalnızca ilk arayüz adı için çalışır. Virgül ve aşağıdaki arayüz adı ipucu hatası verebilir, ancak oluşturulan kodu etkilemediği için hatayı yok sayabilirsiniz.

    • Paket: Sınıfın veya türün bulunacağı paket. Varsayılan değer, alanda otomatik olarak görünür. Alana bir paket adı yazarsanız paket tanımlayıcısının mevcut olmayan kısımları kırmızıyla vurgulanır. Bu durumda Android Studio, paketi Tamam'ı tıklamanızdan sonra 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.
    • 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 değer, seçtiğiniz öğenin paketi olur. İlk olarak Kod Düzenleyici'de bir Java dosyasını tıkladıysanız varsayılan değer, bu dosyayı içeren pakettir.

    • Görünürlük: Sınıfın veya türün tüm sınıflara mı yoksa yalnızca kendi paketindekilere mi gösterileceğini seçin.
    • Değiştiriciler - Bir Sınıf için Özet veya Son değiştiricisini seçin ya da hiçbirini seçmeyin.
    • Geçersiz Kılmaları Seçme İletişimini Göster - Sınıf Tür için Tamam'ı tıkladıktan sonra Geçersiz Kılma/Uygulanacak Yöntemleri Seçin iletişim kutusunu açmak için 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.

    Tür için geçerli olmayan alanlar gizlenir.

  4. Tamam'ı tıklayın.
  5. Android Studio, üzerinde değişiklik yapabileceğiniz iskelet kodu içeren bir Java dosyası oluşturur. Dosya, Kod Düzenleyici'de açılır.

Not: File (Dosya) > New (Yeni) > Singleton (Tekli) veya File (Dosya) > New > Java Class'ı (Yeni) > Java Class (Java Sınıfı) seçerek bir tekil sınıf oluşturabilirsiniz. İkinci teknik daha fazla seçenek sunar.

Android Studio dosya şablonları

Bu bölümde, VTL kodlama dilinde yazılmış Android Studio dosya şablon 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ğerleri olur. #if (${VISIBILITY} ile başlayan satırların, açık küme parantezine ({) kadar uzandığını unutmayın.

Notlar Türü 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 {
}

Sıralama 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 {
}

Singleton 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 girebilirsiniz. Şablonda aşağıdaki değişkenleri kullanabilirsiniz:

  • IMPORT_BLOCK: Herhangi bir süper sınıfı veya arayüzü ya da boş dizeyi ("") desteklemek için gereken Javaimport ifadelerinin yeni satırla ayrılmış listesi. Örneğin, yalnızca Runnable 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 ve Activity sınıfını genişletirseniz öğe "import android.app.Activity;\nimportjava.lang.Runnable;\n" olur.
  • VISIBILITY: Sınıfın herkese açık olup olmayacağı. PUBLIC veya PACKAGE_PRIVATE değerine sahip olabilir.
  • SUPERCLASS - Tek bir sınıf adı veya boş. Mevcutsa yeni sınıf adından sonra extends ${SUPERCLASS} ifadesi bulunacaktır.
  • INTERFACES - Arayüzlerin virgülle ayrılmış listesi veya boş. Varsa üst sınıftan sonra implements ${INTERFACES} veya süper sınıf yoksa sınıf adından sonra implements ${INTERFACES} ifadesini görürsünüz. Arayüzler ve ek açıklama türlerinde ise arayüzlerde extends anahtar kelimesi bulunur.
  • ABSTRACT - Sınıfın soyut olup olmadığı. Bu, TRUE veya FALSE değerine sahip olabilir.
  • FINAL - Sınıfın nihai olup olmadığı. Bu, TRUE veya FALSE değerine sahip olabilir.