تغییر نام روش ها

ObjectiveCName Annotation

برای تغییر نام ترجمه شده آن متد و هر روشی که آن را لغو می کند، می توانید هر روش جاوا را با @ObjectiveCName حاشیه نویسی کنید. به عنوان مثال:

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

ترجمه شده است:

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

فایل نقشه برداری

نام روش ها را می توان با استفاده از پرچم --mapping تغییر داد، که یک فایل خصوصیات با نگاشت ها را برای استفاده می گیرد. نگاشت هر روش با امضای کامل متد جاوا برای کلید و مقدار انتخابگر Objective-C تعریف می شود. برای مثال، خط نگاشت Object.equals() به NSObject.isEqual: است:

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

اعلان دست چپ امضای روش کامل است، همانطور که توسط مشخصات ماشین مجازی جاوا تعریف شده است . تعریف دست راست شامل انتخابگر iOS است (یعنی آنچه را که به @selector() ارسال می کنید). متد و نگاشت آن باید تعداد پارامترهای یکسانی داشته باشد.

به عنوان مثال دیگر، این خط معادل مثال در بخش قبل است:

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

فایل های نقشه برداری اضافی را می توان در خط فرمان با استفاده از گزینه --mapping مشخص کرد.