Thắc mắc lớp nặc danh Java

Mình đang tìm hiểu lớp nặc danh (anonymous class) trong Java
Ban đầu mình khởi tạo đối tượng từ lớp ẩn danh Runnable thì không lỗi gì nhưng sau khi đổi tên thành Amer thì lại bị bug. Mong các bạn giải thích chi tiết về lớp ẩn danh một cách dễ hiểu nhất. Thanks

Bạn đang tạo 1 anonymous class implement 1 interface có sẵn là Runnable, chứ bản thân Runnable không phải lớp ẩn danh.
Khi bạn rename Runnable thành Amer, thì bạn đang có 1 lớp ẩn danh extend/implement từ Amer và lớp Amer không tồn tại -> lỗi.

3 Likes

Thanks bạn. Sau khi đọc cmt bạn thì mình hiểu Java có sẵn 1 interface Runnable và anonymous class đang implements interface này. Rất dễ hiểu

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?