Thay đổi tên phương thức

Chú thích ObjectiveCName

Bạn có thể chú thích bất kỳ phương thức Java nào bằng @ObjectiveCName để thay đổi tên đã dịch của phương thức đó và bất kỳ phương thức nào ghi đè phương thức đó. Ví dụ:

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

được dịch là:

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

Tệp ánh xạ

Bạn có thể thay đổi tên phương thức bằng cách sử dụng cờ --mapping. Cờ này sẽ lấy một tệp thuộc tính có các mục ánh xạ để sử dụng. Mỗi mục ánh xạ phương thức được xác định bằng chữ ký phương thức Java đầy đủ cho khoá và một giá trị bộ chọn Objective-C. Ví dụ: dòng để ánh xạ Object.equals() đến NSObject.isEqual: là:

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

Nội dung khai báo bên trái là chữ ký phương thức đầy đủ, như được Thông số kỹ thuật máy ảo Java xác định. Định nghĩa bên phải bao gồm bộ chọn iOS (tức là nội dung bạn sẽ chuyển đến @selector()). Phương thức và mục ánh xạ của phương thức phải có cùng số lượng tham số.

Một ví dụ khác, dòng này tương đương với ví dụ trong phần trước:

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

Bạn có thể chỉ định các tệp ánh xạ bổ sung trên dòng lệnh bằng cách sử dụng tuỳ chọn --mapping.