2010-10-19 11 views
22

Tôi biết tôi có thể tạo bộ định tuyến và getters cho các trường trong menu nguồn Eclipse, nhưng tôi rất ngạc nhiên khi nó không cung cấp thay thế các trình truy cập trực tiếp với các cuộc gọi đến các phương thức mới được tạo ra.Eclipse JDT: Có một phép tái cấu trúc để thay thế các truy cập trường trực tiếp bằng các phương thức setter/getter?

Có ai biết cách thực hiện việc tìm kiếm và thay thế thủ công này không?

Cảm ơn!

Trả lời

30

Có một cách. Tập trung vào thuộc tính, nhấp chuột phải. Chọn "Refactor" -> "Encapsulate Field".

(Edited giải thích tại sao nó hoạt động, mặc dù tiêu đề của trình đơn nào không bao hàm nó)

Các "Encapsulate Field" hộp thoại hộp sẽ tạo getters/setters cho bạn nếu chúng không tồn tại, sẽ thay đổi truy cập trường để đi qua getters/setters. Hộp thoại sẽ tự động phát hiện các getters/setters hiện có, vì vậy, đối với các yêu cầu mà bạn đã đề cập, điều đó sẽ thực hiện thủ thuật.

+0

Cảm ơn bạn rất nhiều; nó hoạt động rất đẹp! Tôi thực sự cần phải đọc qua tài liệu về tái cấu trúc JDT. –

+0

Đây là một câu trả lời hay khác cho câu hỏi: http://stackoverflow.com/a/21597844/2875073 – Jonn

Các vấn đề liên quan