Trường Đại hc Công ngh Lp trình hướng đối tượng. HKI 2010-2011
Khoa Công ngh Thông tin Bài tp thc hành 13
1
Lp trình tng quát
Câu 1.
Cài kiu d liu tng quát Pair<T> (xem bài ging). B sung thêm phương thc
toString() để phc v vic in ra màn hình. Viết lp TestPair vi hàm main() th nghim
Pair<T>. Th dùng Pair<String>, Pair<int>, Pair(Integer).
Câu 2.
Viết lp ArrayAlg cung cp các phương thc tng quát sau đây để x lý d liu mng:
a. printArray(T[] a): in các phn t ca mng a ra màn hình. Viết hàm main để test
phương thc này.
b. printArray(T[] a, start, end): in các phn t a[start]….a[end-1] ra màn hình. Nếu các
giá tr start và end không hp l hoc start >= end, phương thc cn ném ngoi l
InvalidSubscriptException. Nếu không, phương thc cn tr v s phn t được in. Dùng
hàm main để test vi các loi mng cha s nguyên, s thc, String.
c. maxTwo(T[]): tìm hai phn t có giá tr cao nht trong mng T, tr v kết qu đặt trong
mt đối tượng Pair<T>.
Câu 3.
Sa lp MyList (bài thc hành tun trước) thành lp tng quát vi các phương thc cơ
bn như trong sơ đồ bên dưới (lưu ý, sơ đồ dưới là phiên bn ca bài thc hành tun
trước, nó không liên quan đến lp tng quát). Viết hàm main() th nghim vi
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