Danh mục tài liệu

Bài giảng Lập trình hướng đối tượng: Bài 3, 4 - Phạm Thị Bích Vân

Số trang: 43      Loại file: pptx      Dung lượng: 519.64 KB      Lượt xem: 19      Lượt tải: 0    
Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài 3, 4 cung cấp kiến thức về lớp và đối tượng. Những nội dung chính trình bày trong bài này gồm: Tạo các lớp, cách đóng gói các thành phần vào lớp, thực thi các hàm của lớp, sử dụng hàm private và dữ liệu public, sử dụng các toán tử định phạm vi truy cập đối với các biến và hàm, khai báo static, tìm hiểu con trỏ this, đa hình.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Bài 3, 4 - Phạm Thị Bích VânBài3:Lớpvàđốitượng Lớp(class)• Lớplàkháiniệmtrungtâmcủalậptrìnhhướngđốitượng.Làsự mởrộngcủastructtrongC.• Lớplàkháiniệmtrừutượng,đểbiểudiễncácđốitượng.Làmột kiểudữliệudongườidùngđịnhnghĩa. ▫ Lớpđưaramiêutảchocácđốitượng. ▫ Lớpcungcấpmộtcáchthuậntiệnđểnhómcácdữliệuvàcáchàm xửlýtrêndữliệuđó. ▫ Khitạoramộtđốitượnglàthểhiệncủalớp.Khiđótựđộngtạora cáctrườngcóliênquan.• Lớpchínhlàmộtkiểudữliệudongườidùngđịnhnghĩa. Sosánhgiữaclassvàstruct• Structvàclassđềulàkiểudữliệudongườidùngđịnhnghĩa(đềuchứa cácbiếnvàhàm).• StructlàkiểudữliệuthamtrịđượclưutrongStack.Trongkhilớplà kiểudữliệuthamchiếuđượclưutrongheap.• Structkhônghỗtrợkếthừa,lớpcóhỗtrợkếthừa.• Structphùhợpvớicáccấutrúcdữliệunhỏ.Lớpphùhợpvớicáccấu trúcdữliệuphứctạp.• Structđượckhởitạokhôngcầntừkhóanew.Khởitạolớpcầntừkhóa new.• Khistructđượckhởitạovớitừkhóanew,khiđómộtconstructor(hàm khởidựng)đượcgọiđểkhởitạocáctrườngtrongcấutrúc.• Khistructđượckhởitạokhôngdùngtừkhóanewthìkhôngcó constructorđượcgọi,dovậyngườidùngcầnkhởitạotấtcảcáctrường trướckhisửdụng. Nộidung• Tạocáclớp.• Cáchđónggóicácthànhphầnvàolớp.• Thựcthicáchàmcủalớp.• Sửdụnghàmprivatevàdữliệupublic• Sửdụngcáctoántửđịnhphạmvitruycậpđốivớicácbiến vàhàm.• Khaibáostatic• Tìmhiểucontrỏthis.• Đahình Khaibáomộtclass• Khaibáo. class { [quyềntruyxuất:] //khaibáocácthànhphầndữliệucủalớp [quyềntruyxuất:] //khaibáocácthànhphầnhàmcủalớp }; Khaibáomộtclass[quyềntruyxuất:] § Làkhảnăngtruyxuấtthànhphầndữliệu § Ngầmđịnhlàprivate private:trongphạmvilớpđó public:ởmọinơinếuđốitượngtồntại protected:phạmvilớpđóvàcáclớpconkếthừa Chúý:Cácthuộctínhthànhviêncủastructcũngcóthểđượcthiếtlậplà private,publichoặcprotected. KhaibáomộtclassStudent aSophomore;aSophomore.idNum = 7645; Error! By default, all members of acoutKhaibáomộtclass Access modifierĐónggóicácthànhphầncủamộtlớp Khaibáothànhphần § Dữliệu: Tươngtựnhưkhaibáobiến ; Kiểudữliệucóthểlàkiểucơbảnhoặckiểudongườidùngđịnh nghĩa Chúý:khôngđượckhởitạogiátrịbanđầu 9/20ĐónggóicácthànhphầncủamộtlớpKhaibáothànhphần § Hàmthànhphần Cách1:Khaibáotronglớpvàđịnhnghĩangoàilớp tênlớp::([đốisô]) { // } Cách2:địnhnghĩangaytronglớp 10/20ĐónggóicácthànhphầncủamộtlớpĐónggóicácthànhphầncủamộtlớp VídụVídụ1: Xâydựngcấutrúcdữliệumôtảsinhviên: Dữliệu:họtên,ngàysinh,giớitính,Điểmtoán,lý, hóa,ĐtbPhươngthức:nhập,tínhđtb,inLớpsinhviên VídụVídụ2Xâydựngcấutrúcdữliệumôtảcáchóađơn:Dữliệu:mãvậttư,tênvậttư,loạiphiếu,ngàylập,khốilượng,đơngiá,thànhtiền…Phươngthức:nhập,tínhthànhtiền,inLớpcáchóađơn VídụVídụ3Xâydựngcấutrúcdữliệumôtảcácphânsố:Dữliệu:tửsố,mẫusốPhươngthức:nhập,tốigiản,inLớpcácphânsố KhaibáođốitượngCúpháp:;Vídụ:khaibáo2đốitượngsinhviên SVsv1,sv2;Khiđósv1,sv2làhaiđốitượngsinhviên Truyxuấtđốitượng.; Vídụ:truyxuấthọtênvàngàysinhcủasv sv1.ht; sv2.ns; Nếulàcontrỏ:>; Hàmkhởitạo(constructor)• Hàmkhởitạolàmộtphươngthứcđặcbiêtcủalớp.• Hàmkhởitạođượcthựcthimỗikhikhởitạomộtđốitượng.• Chúý: • Têncủahàmkhởitạophảitrùngvớitênlớp. • Khôngcókhaibáokiểuchohàmtạo. • Hàmtạocóthểcóthamsốhoặckhôngcóthamsố. • Cóthểnạpchồngnhiềuhàmtạo. HàmkhởitạoKhaibáo:([dsthamsố]);Địnhnghĩangoàilớp:::([dsthamsố]){//thânhàm}Dùnghàmtạođểkhởigáncácgiátrị thuộctínhchođốitượng ClassDiem { intx; inty; Diem(intx,inty); }; Diem::Diem(intx,inty) { this>x=x; this>y=y; } intmain() { ...