1. Trang chủ
  2. » Ngoại Ngữ

mob1013-slide-7-ke-thua

22 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 546,75 KB

Nội dung

L P TRÌNH JAVA BÀI 7: K TH A M C TIÊU K t thúc h c b n có kh n ng N m v ng s phân c p th a k Tái s d ng l p s n có Bi t cách ghi è ph ng th c N m v ng l p ph ng th c tr u t ng S PHÂN C P TH A K Các l p Java t n t i m t h th ng th b c phân c p, g i th a k L p b c g i l p cha (super class) l p b c d i g i l p (sub class) Trong Java m t l p ch có m t l p cha nh t ( n th a k ) PHÂN C P TH A K class Bicycle{…} class MountainBike extends Bicycle{…} class RoadBike extends Bicycle{…} class TandemBike extends Bicycle{…} Hình Hình giác Hình Hình trịn DEMO Tam giác Hình vng Xây theo trúc TH A K M c ích c a th a k tái s d ng L p c phép s h u tài s n (tr ph ng th c) c a l p cha ng L p c phép s h u tài s n public ho c protected c a l p cha L p c ng c phép s h u tài s n m c nh {default} c a l p cha n u l p l p cha c nh ngh a gói L p khơng th truy c p thành viên private c a l p cha L p không k th a hàm t o c a l p cha K TH A ; NhanVien{ public String hoTen; protected luong; NhanVien(String hoTen void xuat(){…} private T N (){…} luong){…} } ; TruongPhong extends NhanVien{ trachNhiem; TruongPhong (String hoTen luong xuat(){ // Mã có tài } } A B C D T () T N trachNhiem){…} () DEMO H hóa ví slide S D NG SUPER Truy c p n thành viên c a l p cha b ng cách s d ng t khóa super Có th s d ng super g i hàm t o c a l p cha S } S super } } P C P super () S D NG SUPER ; NhanVien{ NhanVien(String hoTen xuat(){…} luong){…} } ; TruongPhong extends NhanVien{ trachNhiem; TruongPhong (String hoTen luong super(hoTen, luong); N trachNhiem } xuat(){ () S } } (trachNhiem) trachNhiem){ GHI È PH NG TH C (OVERRIDING) Overriding tr ng h p l p l p cha có ph ng th c cú pháp P C void method(){…} method(){…} } } L p Parent Child u có ph ng th c method() cú pháp nên method() Child s è lên method() Parent P C () M dù o có method() Parent Child () V N C A GHI È L p ghi è ph ng th c c a l p cha s che d u ph ng th c c a l p cha M c ích c a ghi è s a l i ph ng th c c a l p cha l p S d ng t khóa super truy c p n ph ng th c ã b ghi è c a l p cha  c t truy xu t c a ph ng th c l p ph i có cơng khai b ng ho c h n c t truy xu t c a ph ng th c l p cha NhanVien + hoTen + luong + T N () TruongPhong + trachNhiem + T N () LaoCong + soGioLamViec + T N () DEMO L NhanVien, T Lao cơng… tính theo cơng khác Ví nhân viên tháng, lao cơng , cịn có trách , L P TR U T L p tr u t ng l p có hành vi ch a xác nh rõ NG c Ví d 1: ã hình ch c ch n có di n tích chu vi nh ng ch a xác nh c cách tính mà ph i m t hình c th nh ch nh t, trịn, tam giác… m i có th xác nh cách tính Ví d 2: Sinh viên ch c ch n có i m trung bình nh ng ch a xác nh c cách tính nh th mà ph i sinh viên c a ngành m i bi t c mơn h c cơng th c tính i m c th V y l p hình l p sinh viên l p tr u t ng ph ng th c tính chu vi, di n tích tính i m ch a th c hi n c L P TR T Hình C Trịn Hình Sinh viên Tam giác Vng Sinh viên C , Trịn, Tam giác, Vng, SV IT, SV Biz NG SV Biz SV IT NH NGH A L P TR U T abstract abstract } S khóa NG MyClass{ MyMethod(); abstract abstract } SinhVien{ getDiemTB(); abstract abstract abstract } Hinh{ getChuVi(); getDienTich(); NH NGH A L P TR U T abstract S abstract NG SinhVien{ hoTen; getDiemTB(); } SinhVienIT extends SinhVien{ diemJava; diemCss; @Override getDiemTB(){ return (2 * diemJava + diemCss)/3; } SinhVienBiz extends SinhVien { keToan; marketting; H ; @Override getDiemTB(){ return (keToan + marketting + H )/3; } } } NH NGH A L P TR U T NG T khóa abstract c s d ng nh ngh a l p ph ng th c tr u t ng Ph ng th c tr u t ng ph ng th c khơng có ph n thân x lý c khai báo b ng t khóa abstract L p ch a ph ng th c tr u t ng l p ó ph i l p tr u t ng Trong l p tr u t ng có th nh ngh a ph ng th c c th ho c khai báo tr ng Không th s d ng new t o i t ng t l p tr u t ng DEMO H hóa mơ hình Hình TÍNH A HÌNH (POLYMORPHISM) Overriding th c hi n tính a hình l p trình h ng i t ng (m t hành vi c th hi n v i hình thái khác nhau) G i ph ng th c b ghi è c quy t nh lúc ch y ch ng trình (runtime) ch khơng ph i lúc biên d ch ch ng trình (compile time) TÍNH A HÌNH (POLYMORPHISM) C DongVat{ speak(){ S (“Woof”); } } abstract abstract } Meo extends DongVat{ speak(){ S (“Meo”); DongVat{ speak(); } } DongVat cho DongVat meo DongVat vit speak(); speak(); speak(); C Meo(); Vit(); Vit extends DongVat{ speak(){ S (“Quack”); } } T NG K T N I DUNG BÀI H C Th a k G i hàm t o c a l p cha S d ng super Ghi è ph ng th c L p ph ng th c tr u t ng

Ngày đăng: 11/10/2022, 13:16

HÌNH ẢNH LIÊN QUAN

Hình - mob1013-slide-7-ke-thua
nh (Trang 5)
Hình - mob1013-slide-7-ke-thua
nh (Trang 15)
H hóa mơ hình - mob1013-slide-7-ke-thua
h óa mơ hình (Trang 19)
Overriding th c h in tín ha hình trong lp trình - mob1013-slide-7-ke-thua
verriding th c h in tín ha hình trong lp trình (Trang 20)
TÍN HA HÌNH (POLYMORPHISM) - mob1013-slide-7-ke-thua
TÍN HA HÌNH (POLYMORPHISM) (Trang 21)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w