Tải bản đầy đủ (.pdf) (1 trang)

Bài thực hành số 13 - Lập trình tổng quát doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (43.56 KB, 1 trang )

Trường Đại học Công nghệ Lập trình hướng đối tượng. HKI 2010-2011
Khoa Công nghệ Thông tin Bài tập thực hành 13
1

Lp trình tng quát

Câu 1.
Cài kiểu dữ liệu tổng quát Pair<T> (xem bài giảng). Bổ sung thêm phương thức
toString() để phục vụ việc in ra màn hình. Viết lớp TestPair với hàm main() thử nghiệm
Pair<T>. Thử dùng Pair<String>, Pair<int>, Pair(Integer).

Câu 2.
Viết lớp ArrayAlg cung cấp các phương thức tổng quát sau đây để xử lý dữ liệu mảng:
a. printArray(T[] a): in các phần tử của mảng a ra màn hình. Viết hàm main để test
phương thức này.
b. printArray(T[] a, start, end): in các phần tử a[start]….a[end-1] ra màn hình. Nếu các
giá trị start và end không hợp lệ hoặc start >= end, phương thức cần ném ngoại lệ
InvalidSubscriptException. Nếu không, phương thức cần trả về số phần tử được in. Dùng
hàm main để test với các loại mảng chứa số nguyên, số thực, String.
c. maxTwo(T[]): tìm hai phần tử có giá trị cao nhất trong mảng T, trả về kết quả đặt trong
một đối tượng Pair<T>.

Câu 3.

Sửa lớp MyList (bài thực hành tuần trước) thành lớp tổng quát với các phương thức cơ
bản như trong sơ đồ bên dưới (lưu ý, sơ đồ dưới là phiên bản của bài thực hành tuần
trước, nó không liên quan đến lớp tổng quát). Viết hàm main() thử nghiệm với
MyList<String>, MyList<Animal>, MyList<? extends Animal>






















+ Node(Item, Node)
+ data: Item
+ next: Node
Node
+ MyList ()
+ append(Item)
+ appendList(MyList)
- Node: start
- Node: end
MyList
+ clone(): Item
+ toString(): String

"Interface"
Item
+ NumeralItem(int)
- int: value
NumeralItem
+ StringItem(String)
- String: value
StringItem

×