Tôi đang cố gắng tái cấu trúc lớp mà tôi có thành 2 lớp. Thật không may, chức năng lớp trích xuất của eclipse dường như chỉ hỗ trợ các biến thực sự không hữu ích lắm. Có cách nào để trích xuất các phương pháp hoặc có một plugin nào không?Có cách nào để trích xuất một lớp với các phương thức trong nhật thực không?
Trả lời
Một giải pháp khác là CTRL C - CTRL V lớp học của bạn vào nhau, và bắt đầu loại bỏ những gì bạn không muốn ...
Bạn có thể chọn nhiều yếu tố trong giao diện phác thảo của lớp mới và chọn xóa.
Thô lỗ nhưng hiệu quả.
Việc tái cấu trúc "Extract Superclass" hữu ích hơn nhiều cho việc này. Nó sẽ cho phép bạn chọn các thành viên và các phương pháp bạn muốn, và sau đó sử dụng "Thêm yêu cầu" để thêm bất kỳ thành viên của lớp được yêu cầu để thực hiện các phương pháp bạn đã chọn làm việc.
ahh man. Tôi thực sự muốn có một lựa chọn tốt hơn. Điều đó đòi hỏi nhiều công việc hơn, mặc dù tốt hơn không có gì tôi giả sử –
Ngay bây giờ, tôi đã phải dùng đến cách sử dụng "lớp sao chép và xóa các phương pháp" như mô tả ở trên hoặc sử dụng Extract Lớp IntelliJ, mà không di chuyển cả hai phương pháp và các lớp học, mặc dù buggily.
Tôi hy vọng những người khác sẽ bỏ phiếu để sửa lỗi https://bugs.eclipse.org/bugs/show_bug.cgi?id=312347. Tôi thực sự muốn Eclipse có một lớp trích xuất đầy đủ chức năng.
Trong Eclipse 3.7.1 có một tùy chọn để di chuyển các phương thức và trường ra khỏi một lớp. Để làm như vậy:
- Đảm bảo lớp đích tồn tại (lớp trống là tốt, miễn là nó tồn tại trong dự án).
- Trong lớp nguồn, chọn các phương pháp mà bạn muốn loại bỏ (quan điểm đề cương hoạt động tuyệt vời cho việc này), nhấp chuột phải vào việc lựa chọn, và chọn Move
- Chọn lớp đích trong danh sách thả xuống/Duyệt
Các thành viên của bạn hiện đã được trích xuất. Khắc phục mọi sự cố hiển thị (Nguồn> Tạo Getters và Setters rất hữu ích cho việc này) và bạn đã sẵn sàng.
Eclipse (Luna 4.4.0) hiện có "Phương thức trích xuất ..." dưới dạng tùy chọn trong trình đơn ngữ cảnh Refactor.
Đã bị xóa? Tôi sử dụng 4.6.3 Neon và tôi thấy không có phương pháp trích xuất dưới mục trình đơn Refactor. – AvrDragon
- 1. Có cách nào để ẩn các phương thức một phần trong các lớp con không?
- 2. Với nhật thực, cách ẩn các phương thức siêu lớp trong Hỗ trợ nội dung?
- 3. tên phương thức trích xuất từ biểu thức linq
- 4. Làm cách nào để gọi một phương thức lớp dẫn xuất từ lớp cơ sở?
- 5. Phương pháp trích xuất với tiếp tục
- 6. Trích xuất tên phương thức từ cây biểu thức?
- 7. Làm cách nào để giả lập các phương thức tĩnh trong một lớp với easymock?
- 8. Làm cách nào để xuất phương thức S3 để nó có sẵn trong không gian tên?
- 9. Có cách nào để nghe thực thi phương thức của lớp khác không?
- 10. Làm cách nào để tạo một nhóm các phương thức/thuộc tính trong một lớp?
- 11. Có cách nào trong C# để ghi đè lên một phương thức lớp với một phương pháp mở rộng?
- 12. Tạo danh sách các phương thức của một lớp với các kiểu phương thức
- 13. Làm cách nào để thêm phương thức với trình trang trí vào một lớp trong python?
- 14. Làm cách nào để có được tên phương thức với tên không gian và tên lớp?
- 15. Trích xuất các chuỗi từ các lớp Java
- 16. phương thức gọi lớp php từ phương thức tĩnh bên trong cùng một lớp nhưng không được thực hiện
- 17. Làm cách nào để bắt buộc lớp dẫn xuất gọi phương thức siêu? (Giống như Android)
- 18. Phương thức giao diện Java Phương pháp: Mỗi lớp có thực hiện một giao diện không?
- 19. Phần tử trích xuất không có thuộc tính lớp học
- 20. Có thể ghi đè lên một phương thức tĩnh trong lớp dẫn xuất không?
- 21. Làm thế nào để có được đường dẫn của một lớp dẫn xuất từ một phương thức kế thừa?
- 22. truy cập phương thức của lớp cơ sở với đối tượng của lớp dẫn xuất có phương thức cùng tên
- 23. Trong Java, làm cách nào để gọi phương thức của lớp cơ sở từ phương thức ghi đè trong một lớp dẫn xuất?
- 24. C#: Làm thế nào để gọi một phương thức tĩnh của một lớp cơ sở từ một phương thức tĩnh của một lớp dẫn xuất?
- 25. Làm cách nào để xử lý các lớp với các phương thức tĩnh bằng Ninject?
- 26. Có cách nào để theo dõi/theo dõi và đăng nhập tất cả các phương thức, theo tên lớp và phương thức, trong một phiên gỡ lỗi không?
- 27. Làm thế nào tôi có thể buộc các lớp kế thừa để thực hiện một phương thức tĩnh trong C#?
- 28. Thực tiễn không tốt cho một lớp học chỉ có các trường và phương thức tĩnh?
- 29. Trong sơ đồ lớp, nên các lớp thực hiện một giao diện có tên phương thức lặp lại không?
- 30. Có Ruby tương đương với trích xuất của PHP không?
Ahh ý tưởng tuyệt vời để sử dụng chế độ xem phác thảo. Tôi đã sử dụng dán bản sao nhưng điều này sẽ giúp rất nhiều –