You are on page 1of 34

Câ u 1

a. Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa chỉ,
giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. Định nghĩa class Student kế thừ a từ Person, có thêm cá c thuộ c tính: mã


sinh viên, email, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. Thiết kế cá c phương thứ c cho phép nhậ p cá c thô ng tin sinh viên như định
nghĩa ở trên.

d. Khi ngườ i dù ng Thêm sinh viên thì chương trình khở i tạ o đố i tượ ng sinh
viên vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i dù ng nhậ p và hiển thị thô ng
tin lên mà n hình console.

e. Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin và o
file sinhvien.dat, sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n
thiết.

Câu 2

a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class NhanVien kế thừ a từ Person, có thêm cá c thuộ c


tính: phò ng ban (nhậ n 1 trong cá c giá trị: Thiết bị, nhâ n sự , R&D, Kinh doanh), hệ
số lương, thâ m niên, lương cơ bả n và cá c phương thứ c khở i tạ o, tính lương thự c
lĩnh, hiển thị thô ng tin cá nhâ n Trong đó : lương thự c lĩnh = Lương cơ bả n * hệ số
(1 + thâ m niên/100)

c. Thiết kế cá c phương thứ c cho phép nhậ p cá c thô ng tin nhâ n viên như định
nghĩa ở trên.

d. Khi ngườ i dù ng Thêm nhâ n viên thì chương trình khở i tạ o đố i tượ ng nhâ n
viên vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i dù ng nhậ p và hiển thị thô ng
tin lên mà n hình console.

e. Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin và o
file nhanvien.dat, sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu
cầ n thiết.

Câ u 3
a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class NhanVien kế thừ a từ Person, có thêm cá c thuộ c


tính: phò ng ban, hệ số lương, thâ m niên, lương cơ bả n và cá c phương thứ c khở i
tạ o, tính lương thự c lĩnh, hiển thị thô ng tin cá nhâ n

Trong đó : lương thự c lĩnh = Lương cơ bả n * hệ số (1 + thâ m niên/100)

c. (3 điểm) Hã y đọ c file nhanvien.dat gồ m danh sá ch cá c nhâ n viên vớ i định


dạ ng lưu trữ như sau: mỗ i nhâ n viên đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n
cá ch bở i ký tự “$”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng nhâ n
viên (arraylist)

d. (3 điểm) Hiển thị danhs sá ch trên console, sinh viên tự tạ o file


nhanvien.dat và bổ sung menu chứ c nă ng nếu cầ n thiết.

Câ u 4

a. Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa chỉ,
giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. Định nghĩa class Student kế thừ a từ Person, có thêm cá c thuộ c tính: mã


sinh viên, email, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. Hã y đọ c file sinhvien.dat gồ m danh sá ch cá c Sinh viên vớ i định dạ ng lưu


trữ như sau: mỗ i Sinh viên đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n cá ch bở i
ký tự “$”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng Sinh viên
(arraylist).

d. Hiển thị danh sá ch trên console, sinh viên tự tạ o file nhanvien.dat và bổ


sung menu chứ c nă ng nếu cầ n thiết.

Câ u 5

a. Hã y định nghĩa class Sinhvien vớ i cá c thuộ c tính: mã sinh viên, họ tên,


ngà y sinh, giớ i tính, điểm trung bình và cá c phương thứ c khở i tạ o, hiển thị thô ng
tin.

b. Định nghĩa class SinhvienHTTT kế thừ a từ sinhvien, có thêm thuộ c tính:


họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.
c. Định nghĩa class SinhvienUTT kế thừ a từ Sinhvien, có thêm thuộ c tính:
đơn vị, lương và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu sinh viên từ bà n phím. Sinh
viên UTT thì lưu dữ liệu và o file svutt.dat, sinh viên HTTT thì lưu dữ liệu và o file
svhttt.dat, sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n thiết.

Câu 6

1. Hã y định nghĩa class Word vớ i cá c thuộ c tính: id, en(từ tiếng anh), vn(nghĩa
tiếng việt) và cá c phương thứ c khở i tạ o, hiển thị thô ng tin, cá c phương thứ c
getters/setters.

2. Định nghĩa class Dictionary cho phép

a. Khở i tạ o mộ t danh sá ch (> 10 từ ), có thể tự khở i tạ o hoặ c nhậ p dữ liệu

b. (3 điểm) Tạ o mộ t phương thứ c tìm kiếm, thự c hiện tìm kiếm mộ t từ trong
từ điển (sử dụ ng thuậ t toá n tìm nhị phâ n, tìm tuầ n tự đượ c ½ số điểm). Nếu tìm
thấ y thì hiển thị nghĩa tiếng việt lên mà n hình console, trá i lạ i thự c hiện theo câ u
2.c

c. (2 điểm) Bổ sung mộ t từ và o từ điển nếu từ đó chưa có trong từ điển, sinh


viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n thiết.

Chú ý: cá c từ trong danh sá ch phả i đú ng thứ tự từ điển (theo từ tiếng anh)

Câ u 7

a) Hã y định nghĩa class Thí sinh vớ i cá c thuộ c tính: họ tên, ngà y sinh, địa chỉ
và cá c phương thứ c khở i tạ o, nhậ p và in thô ng tin

b) Định nghĩa class Thí sinh khố i A kế thừ a từ Thí sinh, có thêm cá c thuộ c
tính: điểm toá n, lý, hó a và cá c phương thứ c khở i tạ o, nhậ p, in thô ng tin

c) Định nghĩa class Thí sinh khố i C kế thừ a từ Thí sinh, có thêm cá c thuộ c
tính: điểm vă n, sử , địa và cá c phương thứ c khở i tạ o, nhậ p, in thô ng tin.

d) (2 điểm) Thiết kế cá c phương thứ c thự c hiện nhậ p danh sá ch n thí sinh củ a
cả 2 khố i A, C từ bà n phím.

e) (1.5 điểm) In danh sá ch thí sinh trú ng tuyển (tổ ng điểm > 20) ra mà n hình.
f) (1.5 điểm) Ghi toà n bộ thô ng tin thí sinh củ a 3 khố i và o file thisinh.txt, sinh
viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n thiết.

Câ u 8

a. Định nghĩa class Number vớ i cá c thuộ c tính: value, min, max và cá c phương
thứ c khở i tạ o, nhậ p và kiểm tra nguyên tố củ a giá trị value.

b. Thiết kế phương thứ c cho phép nhậ p thô ng tin Number.

c. Nếu ngườ i dù ng tạ o mớ i đố i tượ ng Number thì hã y khở i tạ o đố i tượ ng


Number (có kiểm tra điều kiện nhậ p min < value < max, bắ t cá c lỗ i exception).

d. Nếu ngườ i dù ng muố n Lưu trữ thì hã y lưu thô ng tin và o file gồ m value, min,
max nếu value là số nguyên tố , sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c
nă ng nếu cầ n thiết.

Câu 9

Hã y định nghĩa class Book gồ m cá c thuộ c tính id, authors, title, category
(nhậ n 1 trong cá c giá trị: tạ p chí, KHXH, KHTN, luậ n vă n) và cá c phương thứ c
khở i tạ o, cá c getters/setters.

a. Hã y thiết kế phương thứ c cho phép nhậ p thô ng tin để thêm sá ch

b. Nếu ngườ i dù ng Thêm sá ch thì thự c hiện khở i tạ o đố i tượ ng sá ch vớ i cá c


thuộ c tính lấ y từ bà n phím do ngườ i dù ng nhậ p, đồ ng thờ i lưu dữ liệu và o file
books.dat

c. Nếu ngườ i dù ng yêu cầ u xó a file thì hã y backup dữ liệu sang file khá c
trướ c khi xó a, sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n
thiết.

Câu 10

Hã y định nghĩa class Giangvien gồ m cá c thuộ c tính: họ tên, mã giả ng viên, địa chỉ,
giớ i tính, khoa (nhậ n 1 trong cá c giá trị: ĐTVT, CNTT, HTTT, CNM, CNPM) và cá c
phương thứ c khở i tạ o.

a. Hã y thiết kế cá c phương thứ c cho phép nhậ p thô ng tin giả ng viên
b. Nếu ngườ i dù ng Lưu trữ thì thự c hiện khở i tạ o đố i tượ ng sá ch vớ i cá c thuộ c
tính lấ y từ bà n phím do ngườ i dù ng nhậ p, đồ ng thờ i lưu dữ liệu và o file
giangvien.dat

c. Nếu ngườ i dù ng yêu cầ u xó a file thì hã y backup dữ liệu sang file khá c trướ c khi
xó a, sinh viên tự bắ t lỗ i đầ u và o và bổ sung menu chứ c nă ng nếu cầ n thiết.

Câu 11

1. Tạ o mộ t lớ p MyDate có 3 thuộ c tính ngà y, thá ng, nă m [ myDate(int date,


mouth, year) ]. Xâ y dự ng hai phương thứ c khở i tạ o (mộ t phương thứ c khô ng có
tham số và mộ t phương thứ c có tham số có kiểu là chính lớ p đó ). Tạ o mộ t
phưong thứ c nhậ p từ bà n phím và in ra mà n hình.

2. (1 điểm) Tạ o lớ p phâ n số PS có hai thuộ c tính là tử và mẫ u. Xâ y dự ng hai


hà m khở i tạ o có tham số khá c nhau. Xâ y dự ng cá c phương thứ c cộ ng, trừ , nhâ n,
chia phâ n số .

a. Hã y thiết kế phương thứ c cho phép nhậ p thô ng tin củ a hai phâ n số như đã
định nghĩa ở trên.

b. Nếu ngườ i dù ng chọ n chứ c nă ng Tính Tổ ng thì thự c hiện khở i tạ o đố i tượ ng
PS vớ i cá c thuộ c tính lấ y từ bà n phím do ngườ i dù ng nhậ p và hiện thị thô ng tin
lên mà n hình console

c. Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin và o file
phanso.dat

Câu 12

a. (1 điểm) Hã y định nghĩa class CanBo vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class KySu kế thừ a từ CanBo, có thêm cá c thuộ c tính: mã
ngạ ch, bậ c lương, hệ số lương và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin Kỹ sư như định nghĩa
ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm Kỹ sư thì chương trình khở i
tạ o đố i tượ ng KySu vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i dù ng nhậ p và
hiển thị thô ng tin lên mà n hình console.
e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin
và o file kysu.dat

Câu 13

a. (1 điểm) Hã y định nghĩa class CanBo vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class KySu kế thừ a từ CanBo, có thêm cá c thuộ c tính: mã
ngạ ch, bậ c lương, hệ số lương và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (3 điểm) Hã y đọ c file kysu.dat gồ m danh sá ch cá c Kỹ sư vớ i định dạ ng lưu trữ


như sau: mỗ i Kỹ sư đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n cá ch bở i ký tự
“#”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng KySu (arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 14

a. (1 điểm) Hã y định nghĩa class CanBo vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class ChuyenVien kế thừ a từ CanBo, có thêm cá c thuộ c


tính: mã ngạ ch, bậ c lương, hệ số lương và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin Chuyên viên như định
nghĩa ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm Chuyên viên thì chương trình
khở i tạ o đố i tượ ng ChuyenVien vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i
dù ng nhậ p và hiển thị thô ng tin lên mà n hình console.

e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin
và o file chuyenvien.dat

Câu 15

a. (1 điểm) Hã y định nghĩa class CanBo vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class ChuyenVien kế thừ a từ CanBo, có thêm cá c thuộ c


tính: mã ngạ ch, bậ c lương, hệ số lương và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.
c. (3 điểm) Hã y đọ c file chuyenvien.dat gồ m danh sá ch cá c Chuyên viên vớ i định
dạ ng lưu trữ như sau: mỗ i Chuyên viên đượ c lưu trên 1 dò ng, mỗ i thuộ c tính
phâ n cá ch bở i ký tự “$”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng
Chuyên viên (arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 16

a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class HocSinh kế thừ a từ Person, có thêm cá c thuộ c tính:
mã họ c sinh, lớ p, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin Họ c sinh như định
nghĩa ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm Họ c sinh thì chương trình khở i
tạ o đố i tượ ng HocSinh vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i dù ng
nhậ p và hiển thị thô ng tin lên mà n hình console.

e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin
và o file hocsinh.dat

Câu 17

a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class HocSinh kế thừ a từ Person, có thêm cá c thuộ c tính:
mã họ c sinh, lớ p, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (3 điểm) Hã y đọ c file hocsinh.dat gồ m danh sá ch cá c Họ c sinh vớ i định dạ ng


lưu trữ như sau: mỗ i Họ c sinh đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n cá ch
bở i ký tự “&”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng Họ c sinh
(arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 18
a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class CanBo kế thừ a từ Person, có thêm cá c thuộ c tính:
phò ng ban (nhậ n 1 trong cá c giá trị: Đà o tạ o, Tổ chứ c cá n bộ , Vă n phò ng khoa
CNTT), hệ số lương, lương cơ bả n, thưở ng, phạ t và cá c

phương thứ c khở i tạ o, tính lương thự c lĩnh, hiển thị thô ng tin cá nhâ n Trong đó :
lương thự c lĩnh = Lương cơ bả n * hệ số + thưở ng – phạ t

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin cá n bộ như định nghĩa
ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm cá n bộ thì chương trình khở i
tạ o đố i tượ ng CanBo vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i dù ng nhậ p
và hiển thị thô ng tin lên mà n hình console.

e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng tin
và o file canbo.dat

Câu 19

a. (1 điểm) Hã y định nghĩa class Person vớ i cá c thuộ c tính: Họ tên, ngà y sinh, địa
chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class CanBo kế thừ a từ Person, có thêm cá c thuộ c tính:
phò ng ban (nhậ n 1 trong cá c giá trị: Đà o tạ o, Tổ chứ c cá n bộ , Vă n phò ng khoa
CNTT), hệ số lương, lương cơ bả n, thưở ng, phạ t và cá c

phương thứ c khở i tạ o, tính lương thự c lĩnh, hiển thị thô ng tin cá nhâ n Trong đó :
lương thự c lĩnh = Lương cơ bả n * hệ số + thưở ng – phạ t

c. (3 điểm) Hã y đọ c file canbo.dat gồ m danh sá ch cá c Cá n bộ vớ i định dạ ng lưu


trữ như sau: mỗ i Cá n bộ đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n cá ch bở i ký
tự “*”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng Cá n bộ
(arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 20
a. (2 điểm) Hã y định nghĩa class Sinhvien vớ i cá c thuộ c tính: mã sinh viên, họ
tên, ngà y sinh, giớ i tính, điểm trung bình và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.

b. (1 điểm) Định nghĩa class SinhvienCNM kế thừ a từ sinhvien, có thêm thuộ c


tính: họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class SinhvienUTT kế thừ a từ Sinhvien, có thêm thuộ c


tính: đơn vị, lương và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu sinh viên. Sinh viên UTT thì
lưu dữ liệu và o file svutt.dat, sinh viên CNM thì lưu dữ liệu và o file svcnm.dat

Câu 21

a. (2 điểm) Hã y định nghĩa class Sinhvien vớ i cá c thuộ c tính: mã sinh viên, họ


tên, ngà y sinh, giớ i tính, điểm trung bình và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.

b. (1 điểm) Định nghĩa class SinhvienDTVT kế thừ a từ sinhvien, có thêm


thuộ c tính: họ c phí, khoa, và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class SinhvienCNTT kế thừ a từ Sinhvien, có thêm


thuộ c tính: họ c phí, khoa, và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu sinh viên. Sinh viên CNTT thì
lưu dữ liệu và o file svcntt.dat, sinh viên DTVT thì lưu dữ liệu và o file svdtvt.dat

Câu 22

a. (2 điểm) Hã y định nghĩa class HocVien vớ i cá c thuộ c tính: mã họ c viên, họ


tên, ngà y sinh, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class HocVienKT kế thừ a từ HocVien, có thêm thuộ c


tính: họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class HocVienTM kế thừ a từ HocVien, có thêm thuộ c


tính: họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu họ c viên. Họ c viên KT thì lưu
dữ liệu và o file hvkt.dat, họ c viên TM thì lưu dữ liệu và o file hvtm.dat

Câu 23
a. (2 điểm) Hã y định nghĩa class HocVien vớ i cá c thuộ c tính: mã họ c viên, họ
tên, ngà y sinh, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class HocVienOTO kế thừ a từ HocVien, có thêm thuộ c


tính: họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class HocVienCO kế thừ a từ HocVien, có thêm thuộ c


tính: họ c phí và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu họ c viên. Họ c viên OTO thì lưu
dữ liệu và o file hvoto.dat, họ c viên CO thì lưu dữ liệu và o file hvco.dat

Câu 24

a. (2 điểm) Hã y định nghĩa class GiangVien vớ i cá c thuộ c tính: mã giả ng viên,


họ tên, ngà y sinh, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class GiangVienHTTT kế thừ a từ GiangVien, có thêm


thuộ c tính: hệ số lương, thâ m niên, và phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class GiangVienTM kế thừ a từ GiangVien, có thêm


thuộ c tính: hệ số lương, thâ m niên và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu giả ng viên. Giả ng viên HTTT
thì lưu dữ liệu và o file gvhttt.dat, giả ng viên TM thì lưu dữ liệu và o file gvtm.dat

Câu 25

a. (2 điểm) Hã y định nghĩa class GiangVien vớ i cá c thuộ c tính: mã giả ng viên,


họ tên, ngà y sinh, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class GiangVienCM kế thừ a từ GiangVien, có thêm


thuộ c tính: hệ số lương, thâ m niên, và phương thứ c khở i tạ o, hiển thị thô ng tin.

c. (1 điểm) Định nghĩa class GiangVienHD kế thừ a từ GiangVien, có thêm


thuộ c tính: hệ số lương, thâ m niên và phương thứ c khở i tạ o, hiển thị thô ng tin.

d. Hã y tạ o cá c phương thứ c cho phép nhậ p dữ liệu giả ng viên. Giả ng viên CM thì
lưu dữ liệu và o file gvcm.dat, giả ng viên HD thì lưu dữ liệu và o file gvhd.dat

Câu 26

a. (1 điểm) Hã y định nghĩa class Nguoi vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.
b. (1 điểm) Định nghĩa class SinhVien kế thừ a từ Nguoi, có thêm cá c thuộ c
tính: mã sinh viên, email, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin sinh viên như định
nghĩa ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm sinh viên thì chương trình
khở i tạ o đố i tượ ng sinh viên vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i
dù ng nhậ p và hiển thị thô ng tin lên mà n hình console.

e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng
tin và o file sinhvien.dat

Câu 27

a. (1 điểm) Hã y định nghĩa class Nguoi vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class NhanVien kế thừ a từ Nguoi, có thêm cá c thuộ c


tính: phò ng ban (nhậ n 1 trong cá c giá trị: Thiết bị, nhâ n sự , R&D, Kinh doanh), hệ
số lương, thâ m niên, lương cơ bả n và cá c phương thứ c khở i tạ o, tính lương thự c
lĩnh, hiển thị thô ng tin cá nhâ n Trong đó : lương thự c lĩnh = Lương cơ bả n * hệ số
(1 + thâ m niên/100)

c. (2 điểm) Tạ o phương thứ c cho phép nhậ p cá c thô ng tin nhâ n viên như
định nghĩa ở trên.

d. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Thêm nhâ n viên thì chương trình
khở i tạ o đố i tượ ng nhâ n viên vớ i cá c giá trị thuộ c tính lấ y từ bà n phím ngườ i
dù ng nhậ p và hiển thị thô ng tin lên mà n hình console.

e. (2 điểm) Khi ngườ i dù ng chọ n chứ c nă ng Lưu dữ liệu thì ghi toà n bộ thô ng
tin và o file nhanvien.dat

Câu 28

a. (1 điểm) Hã y định nghĩa class Nguoi vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class NhanVien kế thừ a từ Person, có thêm cá c thuộ c


tính: phò ng ban, hệ số lương, thâ m niên, lương cơ bả n và cá c phương thứ c khở i
tạ o, tính lương thự c lĩnh, hiển thị thô ng tin cá nhâ n
Trong đó : lương thự c lĩnh = Lương cơ bả n * hệ số (1 + thâ m niên/100)

c.. (3 điểm) Hã y đọ c file nhanvien.dat gồ m danh sá ch cá c nhâ n viên vớ i định


dạ ng lưu trữ như sau: mỗ i nhâ n viên đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n
cá ch bở i ký tự “|”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng nhâ n
viên (arraylist)

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 29

a. (1 điểm) Hã y định nghĩa class Nguoi vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class SinhVien kế thừ a từ Nguoi, có thêm cá c thuộ c


tính: mã sinh viên, email, điểm tổ ng kết và cá c phương thứ c khở i tạ o, hiển thị
thô ng tin.

c. (3 điểm) Hã y đọ c file sinhvien.dat gồ m danh sá ch cá c Sinh viên vớ i định


dạ ng lưu trữ như sau: mỗ i Sinh viên đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n
cá ch bở i ký tự “#”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng Sinh
viên (arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 30

a. (1 điểm) Hã y định nghĩa class Nguoi vớ i cá c thuộ c tính: Họ tên, ngà y sinh,
địa chỉ, giớ i tính và cá c phương thứ c khở i tạ o, hiển thị thô ng tin.

b. (1 điểm) Định nghĩa class CanBa kế thừ a từ Nguoi, có thêm cá c thuộ c tính:
mã ngạ ch, bậ c lương, hệ số lương và cá c phương thứ c khở i tạ o, hiển thị thô ng
tin..
c. (3 điểm) Hã y đọ c file canbo.dat gồ m danh sá ch cá c cá n bộ vớ i định dạ ng
lưu trữ như sau: mỗ i cá n bộ đượ c lưu trên 1 dò ng, mỗ i thuộ c tính phâ n cá ch bở i
ký tự “-”. Dữ liệu đọ c đượ c lưu dướ i dạ ng mộ t mả ng cá c đố i tượ ng cá n bộ
(arraylist).

d. (3 điểm) Hiển thị danh sá ch trên trong mộ t table (hiển thị trên console chỉ
đượ c 1.5 điểm).

Câu 1Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Msg {

public Msg() {

System.out.println("Hello");

public void sayGoodbye() {

System.out.println("Goodbye");

class TestMsg extends Msg {

public TestMsg() {

super();

System.out.println("Hello Java");

public void sayGoodbye() {

System.out.println("Goodbye Java");

public class Demo {

public static void main(String args[]) {


Msg m1 = new Msg();

Msg m2 = new TestMsg();

m1.sayGoodbye();

m2.sayGoodbye();

Câ u 2

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Msg {

public Msg() {

System.out.println("Hello");

public void sayGoodbye() {

System.out.println("Goodbye");

class TestMsg extends Msg {

public void sayGoodbye() {

System.out.println("Goodbye Java");

public class Demo {

public static void main(String args[]) {

Msg m1 = new Msg();


Msg m2 = new TestMsg();

m1.sayGoodbye();

m2.sayGoodbye();

Câ u 3

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Msg {

public Msg() {

public Msg(String str) {

System.out.println("Hello" + str);

public void sayGoodbye() {

System.out.println("Goodbye");

class TestMsg extends Msg {

public TestMsg(String str) {

System.out.println("Hello" + str);

public void sayGoodbye() {

System.out.println("Goodbye Java");

}
}

public class Demo {

public static void main(String args[]) {

Msg m1 = new Msg("Mark");

Msg m2 = new TestMsg("Java");

m1.sayGoodbye();

m2.sayGoodbye();

Câu 4 Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau:

class Msg {

public Msg() {

System.out.println("Hello");

public void sayGoodbye() {

System.out.println("Goodbye");

class TestMsg extends Msg {

public void sayGoodbye() {

System.out.println("Goodbye Java");

public class Demo {

public static void main(String args[]) {


Msg m1 = new Msg("OOP");

TestMsg m2 = new Msg();

m1.sayGoodbye();

m2.sayGoodbye();

Câ u 5

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau:

interface Action{

public void drive(){};

public void stop(){};

class Vehicle implements Action{

private int id;

public void Vehicle(int id){

this.id = id;

System.out.println("Hello world");

public class Demo {

public static void main(String args[]){ Vehicle m = new Vehicle ();

Câ u 6

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau:


interface Action{

public void drive();

public void stop();

class Vehicle implements Action{

private int id;

public void Vehicle(int id){

this.id = id;

System.out.println("Hello world");

public void drive(){

System.out.println("I’m driving");

public class Demo {

public static void main(String args[]){

Vehicle m = new Vehicle (); m.drive();

m.stop();

Câ u 7

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

public class FileDemo{

public static void method1(File f1) { String contents[] = f1.list();

for (int i=0; i< contents.length; i++){ System.out.println(contents[i] + "\


n");
}

public static void main(String[] args){

method1 (new File("D:\\Documents\\utt"));

Câ u 8

Giả i thích ý nghĩa và chỉ ra lỗ i sai (giả i thích) trong đoạ n chương trình sau:

interface ActionListener{

actionPerformed(ActionEvent e);

class MyForm extends Frame implements ActionListener{

public MyForm(String title){

super(title);

setSize(300, 200);

setVisible(true);

Câu 9

Giả i thích ý nghĩa từ khó a super, toá n tử this và Hã y chỉ ra lỗ i sai củ a đoạ n
chương trình sau:

class ThiSinh{

private String name;

public ThiSinh(String name){

this.name = name;

}
}

class ThiSinhA extends ThiSinh{

double toan, ly, hoa;

public ThiSinhA(String name,double toan, double ly, double hoa){

super(name);

this.toan = toan;

this.ly = ly;

this.hoa = hoa;

public void display(){

System.out.println("Ho ten: " + this.name);

System.out.println("Tong diem: " + (this.toan +this.ly +


this.hoa));

Câu 10

Cho đoạ n chương trình sau:

public class Demo {

public static void main(String args[]) {

int value;

try{

value = Integer.parseInt(args[0]);

System.out.println(“value = “ + value);

catch(NumberFormatException ex){

ex.printStackTrace();
}

Hã y giả i thích ý nghĩa củ a try – catch trong đoạ n chương trình trên. Cho biết kết
quả nếu thự c thi chương trình trên nếu args[0] = “10” và trườ ng hợ p args[0] =
“A10”.

Câ u 11

Giả sử lớ p Shape và Point đượ c hiện thự c như ở dướ i. Phá t biểu

Point p = new Point(5,5);

sẽ in ra mà n hình nộ i dung gì? Giả i thích.

class Shape {

public Shape() {

draw();

public void draw() {

class Point extends Shape {

public void draw() {

System.out.println("(" + x + "," + y + ")");

Câu 12

Chương trình dướ i đâ y sẽ in ra mà n hình nộ i dung gì? Giả i thích.

class Base {
private void f() {

System.out.println("base f()");

public void show() {

f();

public class Derived extends Base {

public void f() {

System.out.println("derived f()");

public static void main(String[] args) {

Derived d = new Derived();

Base b = d;

b.show();

d.show();

Câu 13

Giả sử lớ p Person và phương thứ c main() đượ c cà i đặ t như sau

pubic class Person{

private String name;

public Person(String n){

name=n;

}
public void setName(String n){

name=n;

public void print(){

System.out.println(name);

public static void main(String[] args){

Person p1=new Person(“Nemo”);

Person p2=p1;

p1.setName(“Dory”);

p1.print();

p2.print();

Hã y cho biết nộ i dung gì sẽ đượ c in ra mà n hình. Giả i thích.

Câu 14 Chương trình dướ i đâ y sẽ in ra mà n hình nộ i dung gì? Giả i thích.

class Base {

private void f() {

System.out.println("base f()");

public void show() {

f();

public class Derived extends Base {


public void f() {

System.out.println("derived f()");

public static void main(String[] args) {

Derived d = new Derived();

Base b = d;

b.show();

d.show();

Câu 15

Giả sử lớ p Person và phương thứ c main() đượ c cà i đặ t như sau

pubic class Person{

private String name;

public Person(String n){

name=n;

public void setName(String n){

name=n;

public void print(){

System.out.println(name);

public static void main(String[] args){


Person p1=new Person(“Nemo”);

Person p2=p1;

p1.setName(“Dory”);

p1.print();

p2.print();

Hã y cho biết nộ i dung gì sẽ đượ c in ra mà n hình. Giả i thích.

Câu 16

Cho câ y kế thừ a như hình vẽ:

Giả sử có phương thứ c boolean compare(Shape s1, Shape s2). Gọ i


compare(c1,c2) vớ i c1, c2 là hai tham chiếu đến hai đố i tượ ng thuộ c lớ p Circle có
đượ c hay khô ng? Giả i thích.

Câu 17

Cho câ y kế thừ a như hình vẽ:


Cho ví dụ về chuyển kiểu lên và chuyển kiểu xuố ng vớ i cá c lớ p ở câ y thừ a kế
trên.

Câu 18

Cho câ y kế thừ a như hình vẽ:

Giả sử có phương thứ c show(Shape s) đượ c cà i đặ t và sử dụ ng như ở dướ i

void show(Shape s){

s.draw();
}

Shape c=new Circle();

show(c);

Phương thứ c draw() đượ c cà i đặ t trong lớ p nà o sẽ đượ c gọ i. Giả i thích.

Câ u 19

Giả sử lớ p Shape và Point đượ c hiện thự c như ở dướ i. Phá t biểu Point p =
new Point(5,5); sẽ in ra mà n hình nộ i dung gì? Giả i thích.

class Shape {

public Shape() {

draw();

public void draw() {}

class Point extends Shape {

protected int x, y;

public Point(int xx, int yy) {

x = xx; y = yy;

public void draw() {

System.out.println("(" + x + "," + y + ")");

Câ u 20
Định nghĩa 02 giao diện (interface) và 01 lớ p cà i đặ t cả 2 giao diện đấ y. Giả i
thích.

Câu 21

Cho ví dụ để phâ n biệt quan hệ is-a và has-a. Giả i thích.

Câu 22

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau. Giả i thích.

class MyDate {

int year, month, day;

public MyDate(int y, int m, int d) {

year = y; month = m; day = d;

public void copyTo(final MyDate d) {

d.year = year;

d.month = month;

d.day = day;

d = new MyDate(year, month, day);

...

Câu 23

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau. Giả i thích.

class Bike {

final int speedlimit = 90;//bien final

void run() {

speedlimit = 400;

}
public static void main(String args[]) {

Bike obj = new Bike();

obj.run();

Câu 24

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau. Giả i thích.

class Bike {

final void run() {

System.out.println("running");

class Honda extends Bike {

void run() {

System.out.println("Chay an toan voi 100kmph");

public static void main(String args[]) {

Honda honda = new Honda();

honda.run();

Câu 25

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau. Giả i thích.

final class Bike {


}

class Honda extends Bike {

void run() {

System.out.println("Chay an toan voi 100kmph");

public static void main(String args[]) {

Honda honda = new Honda();

honda.run();

Câu 26

Hã y chỉ ra lỗ i sai củ a đoạ n chương trình sau, giả i thích?

class Parent {

public void doSomething() {}

private int doSomething2() {

return 0;

class Child extends Parent {

protected void doSomething() {}

private void doSomething2() {}

Câu 27

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:
class Point {

protected int x, y;

public Point() {}

public Point(int xx, int yy) {

x = xx;

y = yy;

System.out.print(x+”,”+y);

class Circle extends Point {

protected int radius;

public Circle() {}

public static void main(String[] args){

Point p = new Point(10, 10);

Circle c1 = new Circle();

Câu 28

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Point {

protected int x, y;

public Point() {
System.out.println("Point constructor");

class Circle extends Point {

protected int radius;

public Circle() {

System.out.println("Circle constructor");

public static void main(String[] args){

Circle c = new Circle();

} Câu 29

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Shape {

public Shape() {

draw();

public void draw() {}

class Point extends Shape {

protected int x, y;

public Point(int xx, int yy) {

x = xx; y = yy;

public void draw() {


System.out.println("(" + x + "," + y + ")");

public static void main(String[] args){

Point p = new Point(10, 10);

p.draw();

Câu 30

Hã y cho biết kết quả (và lý do) củ a đoạ n chương trình sau:

class Base {

private void f() { System.out.println(”base f()”); }

public void show() { f(); }

public class Derived extends Base {

public void f() {

System.out.println(”derived f()”);

public static void main(String args[]) {

Derived d = new Derived();

Base b = d;

b.show();

d.show();

You might also like