Mengubah Nama Metode

Anotasi ObjectiveCName

Anda dapat menganotasi metode Java apa pun dengan @ObjectiveCName untuk mengubah nama terjemahan metode itu dan metode apa pun yang menggantikannya. Contoh:

@ObjectiveCName("setTimeWithHours:minutes:seconds:")
public void setTime(int hours, int minutes, int seconds) {
  ...
}

diterjemahkan sebagai:

- (void)setTimeWithHours:(jint)hours
                 minutes:(jint)minutes
                 seconds:(jint)seconds;

File Pemetaan

Nama metode dapat diubah menggunakan tanda --mapping yang mengambil file properti dengan pemetaan yang akan digunakan. Setiap pemetaan metode didefinisikan dengan tanda tangan metode Java lengkap untuk kunci tersebut, dan nilai pemilih Objective-C. Misalnya, baris untuk memetakan Object.equals() ke NSObject.isEqual: adalah:

java.lang.Object.equals(Ljava/lang/Object;)Z = isEqual:

Deklarasi di sebelah kiri adalah tanda tangan metode lengkap, seperti yang ditetapkan oleh Java Virtual Machine Spesifikasi. Kanan tangan terdiri dari pemilih iOS (yaitu apa yang akan Anda teruskan ke @selector()). Metode dan pemetaannya harus memiliki jumlah parameter yang sama.

Sebagai contoh lain, baris ini setara dengan contoh di bagian sebelumnya:

pkg.ClassName.setTime(III)V = setTimeWithHours:minutes:seconds:

File pemetaan tambahan dapat ditentukan pada command line, menggunakan opsi --mapping.