2015-03-10 14 views
6

tôi đang tìm kiếm thông qua một codebase cũ và tôi thấy một phương pháp mà chỉ gọi mẹ:Phương pháp ghi đè chỉ gọi phương thức gốc - hữu ích?

@Override 
public void select(Object item) { 
    super.select(item); 
} 

Nên có bất kỳ trường hợp sử dụng cho một phương pháp như vậy? Đối với tôi có vẻ như tôi chỉ có thể loại bỏ nó.

+0

Ứng dụng của bạn sẽ bị ảnh hưởng nếu bạn xóa phương thức này. NẾU câu trả lời là không, sau đó loại bỏ nó. Đừng quá kỹ sư hoặc thiết kế quá mức. – CKing

+2

Công cụ sửa đổi truy cập của phương thức siêu lớp cũng có công khai không? – Pshemo

+0

@Pshemo: có phương thức siêu lớp cũng công khai. – jhyot

Trả lời

7

Loại bỏ nó sẽ làm cho hầu như không có sự khác biệt. Bạn sẽ thấy một sự khác biệt khi sử dụng sự phản chiếu và tìm kiếm phương thức select trên đối tượng. Nếu bạn yêu cầu sự phản chiếu không nhìn vào lớp cơ sở của đối tượng, nó sẽ không tìm ra phương thức sau khi bạn xóa nó.

5

Có, phương pháp này có thể bị xóa mà không thay đổi logic mã của bạn.

Có thể nó đã từng có một triển khai khác đã bị xóa hoặc được cho là có triển khai khác không bao giờ được viết.

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