JavaScript is required

Cho class như sau: 1: public interface Comparable { 2: int compareTo(Object other); 3: } 4: class Employee implements Comparable { 5: public int compareTo(Object other) { 6: Employee other = (Employee) otherObject; 7: return 0; 8: } 9: } Chương trình trên sai ở dòng nào"

A.

1

B.

2, 4

C.

5

D.

Không sai ở dòng nào cả

Trả lời:

Đáp án đúng: A


Chương trình sai ở dòng 6.

Trong dòng 6, biến other đã được khai báo ở dòng 5, việc khai báo lại biến other trong cùng một scope sẽ gây ra lỗi biên dịch. Hơn nữa, tên biến otherObject không được định nghĩa.

Để sửa lỗi, cần bỏ khai báo lại biến other và sử dụng đúng tên biến đã được truyền vào (ví dụ: otherObject nếu đó là tên tham số dự định):

class Employee implements Comparable {    public int compareTo(Object otherObject) {        Employee other = (Employee) otherObject; // Sửa thành other = (Employee) otherObject;        return 0;    }}

Câu hỏi liên quan