Tìm kiếm
Latest topics
Vấn đề đau đầu đặt ra khi 1 class implements method từ 2 interface ?
Trang 1 trong tổng số 1 trang
Vấn đề đau đầu đặt ra khi 1 class implements method từ 2 interface ?
Vấn đề là như thế này :
- Mình có 2 interface là myInt và myFloat,cả 2 interface này có 1 method cùng
tên là getValue()
- Mình có thêm 1 class myType implements từ 2 interface trên
Vấn đề đặt ra là : khi method trong 2 interface trên có cùng tên,cùng số đối số trong method thì class myType sẽ implement như thế nào?
Đây là phần code minh hoạ :
2 interface có method cùng tên,cùng số đối số:
Đây là class myType implements từ 2 interface trên :
- Mình có 2 interface là myInt và myFloat,cả 2 interface này có 1 method cùng
tên là getValue()
- Mình có thêm 1 class myType implements từ 2 interface trên
Vấn đề đặt ra là : khi method trong 2 interface trên có cùng tên,cùng số đối số trong method thì class myType sẽ implement như thế nào?
Đây là phần code minh hoạ :
2 interface có method cùng tên,cùng số đối số:
- Code:
interface myFloat {
public float getValue();
}
}
interface myInt{
public int getValue();
}
}
Đây là class myType implements từ 2 interface trên :
- Code:
public class myType implements myInt,myFloat{
public static void main(String args[]) {
System.out.println("hi");
}
}
baotrung- Trưởng Lão
- Tổng số bài gửi : 225
Reputation : 4
Join date : 13/01/2010
Age : 34
Re: Vấn đề đau đầu đặt ra khi 1 class implements method từ 2 interface ?
Câu trả lời là không thể làm được. Mình có 2 giải pháp sau:
- Bạn có thể sửa tên phương thức của cả 2 Interface cho khác nhau.
VD: getFloatValue() và getIntValue().
- Bạn cũng có thể đổi kiểu dữ liệu trả về của 2 phương thức cho giống nhau.
VD: public Object getValue();
- Bạn có thể sửa tên phương thức của cả 2 Interface cho khác nhau.
VD: getFloatValue() và getIntValue().
- Bạn cũng có thể đổi kiểu dữ liệu trả về của 2 phương thức cho giống nhau.
VD: public Object getValue();
baotrung- Trưởng Lão
- Tổng số bài gửi : 225
Reputation : 4
Join date : 13/01/2010
Age : 34
Re: Vấn đề đau đầu đặt ra khi 1 class implements method từ 2 interface ?
Giải pháp số 3 như sau:
- Code:
public class MyClass {
public static MyFloat myFloat=new MyFloat() {
@Override
public float getValue() {
return 0;
}
};
public static MyInt myInt=new MyInt() {
@Override
public int getValue() {
return 0;
}
};
}
baotrung- Trưởng Lão
- Tổng số bài gửi : 225
Reputation : 4
Join date : 13/01/2010
Age : 34
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
|
|
Tue Feb 07, 2012 1:53 pm by onlink
» Vietpon! Mua sản phẩm chất lượng, giá tốt.
Wed Dec 07, 2011 1:53 pm by onlink
» Học tiếng Nhật - Top Globis
Wed Dec 07, 2011 1:44 pm by onlink
» Học tiếng Nhật - Top Globis
Wed Dec 07, 2011 1:32 pm by onlink
» Học tiếng Nhật - Top Globis
Wed Sep 21, 2011 2:21 pm by onlink
» Học tiếng Nhật - Top Globis
Wed Aug 10, 2011 2:25 pm by onlink
» Khai giảng lớp đàm thoại sơ trung cấp tại Top Globis
Wed Jun 15, 2011 11:24 am by onlink
» Tiếng Nhật online xu thế mới của thời đại- Top Globis
Wed Jun 15, 2011 11:22 am by onlink
» PHẢN XẠ NGẪU NHIÊN LIÊN TỤC-p2 Học tiếng Nhật mới
Tue Mar 08, 2011 5:51 pm by onlink