tôi có lớp học như:Làm thế nào để bọc lớp trong java và lưu giao diện?
MyClass extends MyAbstractClass implement myInterface1, myInterface2,...
tôi cần tạo lớp mới với trường bổ sung:
MyType1 field1;
MyType2 field2;
.......
Có vẻ như là đúng tạo lớp mới sẽ quấn MyClass như:
MyWrapClass {
MyClass myClass=new MyClass(...);
MyType1 field1;
MyType2 field2;
.....
Nhưng MyWrapClass được sử dụng dưới dạng myInterface1 hoặc myInterface2!
Vì vậy, câu hỏi là: tôi có nên khai báo tất cả các phương thức cần thiết cho giao diện myInterface1, myInterface2 trong MyWrapClass không? Hoặc tồn tại một cách khác? Cảm ơn.
Nếu bạn cần tạo một lớp học với trường mới thì bạn phải mở rộng lớp gốc. Có người nói với tôi rằng tốt hơn là tạo một biến Giao diện thay vì của một lớp và đó là vì bạn có thể thêm các phương thức vào một giao diện với việc thay đổi mã của toàn bộ lớp và mọi lớp sử dụng một thể hiện của lớp đó . Điều này tôi đã có thể có được một câu trả lời tốt cho nhưng nó có thể giúp đỡ với việc mở rộng các lớp học và thêm các phương pháp mới mà bạn đang muốn làm. –