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

Lớp và phương thức trừu tượng

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 (627.77 KB, 2 trang )

Đ tài 4. L p và ph ng th c tr u t ngề ớ ươ ứ ừ ượ
I. Khái ni m l p tr u t ngệ ớ ừ ượ
Nh ng khái ni m tr u t ng trong th gi i th c đ c cài đ t trong ch ng trình nhữ ệ ừ ượ ế ớ ự ượ ặ ươ ư
là các l p tr u t ng. Chúng th ng làm c s đ giúp ta có đ c các đ nh nghĩa c th h n:ớ ừ ượ ườ ơ ở ể ượ ị ụ ể ơ
Ví d :ụ
Các con trâu là đ ng v t b n chân đ c nuôi ph c v cày b a.ộ ậ ố ượ ụ ụ ừ
Các con h là đ ng v t b n chân s ng trong các khu r ng.ổ ộ ậ ố ố ừ
Các con mèo là đ ng v t b n chân hay b t chu t.ộ ậ ố ắ ộ
…….
Trong các đ nh nghĩa trên, m t khái ni m chung c n đ c làm rõ là “đ ng v t b nị ộ ệ ầ ượ ộ ậ ố
chân”. Đ cho các đ nh nghĩa này thêm sáng t , ta c n m t đ nh nghĩa v “đ ng v t b n chân”ể ị ỏ ầ ộ ị ề ộ ậ ố
Đ ng v t b n chân là đ ng v t có b n chân đ di chuy n.ộ ậ ố ộ ậ ố ể ể
Đ n đây ta l i b t g p m t khái ni m tr u t ng h n là “đ ng v t” v.v…và có r tế ạ ắ ặ ộ ệ ừ ượ ơ ộ ậ ấ
nhi u khái ni m dùng đ n khái ni m này nh đ ng v t ăn c , đ ng v t ăn th t, đ ng v t bòề ệ ế ệ ư ộ ậ ỏ ộ ậ ị ộ ậ
sát,….
Trong l p trình cũng v y, nh ng l p đ i t ng sinh ra ch đ cho các l p khác k th aậ ậ ữ ớ ố ượ ỉ ể ớ ế ừ
g i là các l p tr u t ng. Chúng th c s không có m t bi u hi n nào (ho c n u ta b t bu cọ ớ ừ ượ ự ự ộ ể ệ ặ ế ắ ộ
chúng có bi u hi n thì bi u hi n đó cũng không có ý nghĩa trong ph m vi đang xét.)ể ệ ể ệ ạ
II. Cài đ t l p và ph ng th c tr u t ng trong Javaặ ớ ươ ứ ừ ượ
Khai báo: L p tr u t ng đ c khai báo nh l p thông th ng nh ng có thêm t khóaớ ừ ượ ượ ư ớ ườ ư ừ
abstract. Ví d :ụ
abstract class People
{
private int NamSinh;
private String HoTen;
public People(int ns, String ht)
{
NamSinh= ns;
HoTen = ht;
}
public String getHoTen()


{
return HoTen;
}
abstract String toString();
}
Ta th y r ng m t l p tr u t ng th c s là m t l p v i đ y đ các thành ph n, khôngấ ằ ộ ớ ừ ượ ự ự ộ ớ ớ ầ ủ ầ
gi ng nh interface.ố ư
Gi s trong ch ng trình có các đ i t ng SinhVien, GiaoVien. Các đ i t ng nàyả ử ươ ố ượ ố ượ
đ u có m t ph ng th c toString đ tr v m t chu i bao g m toàn b thông tin v chúng.ề ộ ươ ứ ể ả ề ộ ỗ ồ ộ ề
Đây là tình hu ng s d ng phố ử ụ ương th c tr u t ng m t cách hi u qu .ứ ừ ượ ộ ệ ả
abstract String toString();
67
Chú ý là các ph ng th c tr u t ng không có ph n thân.ươ ứ ừ ượ ầ
L p SinhVien k th a t People đ c cài đ t nh sau:ớ ế ừ ừ ượ ặ ư
public class SinhVien extends People
{
private String Lop;
private double DiemTongKet;
// Ph ng th c kh i t oươ ứ ở ạ
public SinhVien(int ns,String ht,String l,double dtk)
{
//Dùng ph ng th c kh i t o c a l p chaươ ứ ở ạ ủ ớ
super(ns,ht);
Lop = l;
DiemTongKet=dtk;
}
// Cài đ t ph ng th c toStringặ ươ ứ
public String toString()
{
return String.valueOf(NamSinh) + String.valueOf(DiemTongKet) + HoTen;

}
}
Khi m t ph ng th c đ c khai báo là abstract thì l p ch a nó cũng ph i là m t l pộ ươ ứ ượ ớ ứ ả ộ ớ
abstract. Khi s d ng ph ng th c abstract cho m t l p thì nh t thi t ph i có m t l p khác kử ụ ươ ứ ộ ớ ấ ế ả ộ ớ ế
th a và khai báo cài đ t ch ng thì m i có tác d ng. Khi k th a m t l p có ch a ph ng th cừ ặ ồ ớ ụ ế ừ ộ ớ ứ ươ ứ
tr u t ng thì ph ng th c đó b t bu c ph i đ c cài đ t.ừ ượ ươ ứ ắ ộ ả ượ ặ
Bài t pậ
1. Trong h th ng qu n lý b nh nhân b nh vi n có 2 lo i b nh nhân là n i trú vàệ ố ả ệ ở ệ ệ ạ ệ ộ
ngo i trú trong đó b nh nhân n i trú có tính ti n gi ng n m. Xây d ng m t l p BenhNhanạ ệ ộ ề ườ ằ ự ộ ớ
tr u t ng có các thu c tính nh h và tên, ti n đi u tr , có ph ng th c tính ti n ph i thanhừ ượ ộ ư ọ ề ề ị ươ ứ ề ả
toán b ng ti n đi u tr c ng v i ti n gi ng n m. Sau đó xây d ng hai l p BenhNhanNoiTruằ ề ề ị ộ ớ ề ườ ằ ự ớ
và BenhNhanNgoaiTru k th a l p BenhNhan. (G i ý: Ph ng th c TinhTien l p BenhNhanế ừ ớ ợ ươ ứ ơ ớ
khai báo tr u t ng sau đó đ c khai báo ch ng t i các l p th a k ).ừ ượ ượ ồ ạ ớ ừ ế
3. M t nhà máy s ch a ph ng ti n v n chuy n có các lo i xe ô tô thu c nhi u hàngộ ử ữ ươ ệ ậ ể ạ ộ ề
khác nhau nh Honda, Toyota, Mishubishi, Mercedec, Ford, Kia. M i hãng ô tô l i có nhi uư ỗ ạ ề
ki u khác nhau nh 2 ch , 4 ch , 7 ch , 12 ch và 24 ch . Ngoài ra, nhà máy còn nh n b oể ư ỗ ỗ ỗ ỗ ỗ ậ ả
d ng cho các lo i xe mô tô tay ga và xe s . Nhà máy có các ch đ khuy n m i và b o hànhưỡ ạ ố ế ộ ế ạ ả
khác nhau tùy theo xe c a t ng hãng.ủ ừ
a. Hãy xây d ng m t l p PHUONG_TIEN tr u t ng có ph ng th c tr u t ng làự ộ ớ ừ ượ ươ ứ ừ ượ
Xac_Dinh_Gia() trong đó vi c tính giá s a cho m t ph ng ti n b ng giá c a nhà máy tr điệ ử ộ ươ ệ ằ ủ ừ
ti n khuy n m i.ề ế ạ
b. Hãy xây d ng m t giao di n trong đó có ph ng th c so sánh ph ng ti n theo tiêuự ộ ệ ươ ứ ươ ệ
chí giá s a.ử
c. Xây d ng ch ng trình nh p vào d li u cho 5 chi c xe c ô tô và mô tô và in ra mànự ươ ậ ữ ệ ế ả
hình theo th t tăng d n c a giá s a. ứ ự ầ ủ ử
68

×