1. Trang chủ
  2. » Kỹ Năng Mềm

Nhap mon Lap trinh Huong doi tuong

30 16 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 30
Dung lượng 1,02 MB

Nội dung

Một hành động cần có của một đối tượng hoặc thực thể khi được biểu thị trong một lớp được gọi là một phương thức.. - VD: các phương thức của sinh viên: Viết lý lịch,.[r]

(1)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Sự khác giửa lập trình hướng đối tượng lập trình cấu trúc (truyền

thống):

- POP- Procedure Oriented Programming: Lập trình hướng thủ tục

-Data structure(CTDL) + Algorithm(Thuật

toán) = Program(chương trình)

CTDL Thuật

tốn Chương trình

+ =

(2)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Diễn đạt “thiếu tự nhiên” Có học sinh x

“Viết lý lịch cho học sinh x”

“x ơi, viết lý lịch em”

Diễn đạt tự nhiên hơn?

“x ơi, viết lý lịch em”

VietLyLich(x);

x.VietLyLich();

(3)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Khó mơ tả quan hệ phức tạp giới tự nhiên Biểu diễn dạng cấu trúc “phức tạp”

không phải dễ dàng nhiều người

Quan hệ liệu biểu diễn cấu trúc lồng pointer 

(4)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Bảo mật giới hạn truy xuất đến liệu

struct STUDENT { char Name[21]; int Age;

int Score; };

void main()

{STUDENT x = { “Hoa”, 19, 5}; x.Age=1000;

(5)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Cần phương pháp lập trình khác giúp giải nhược điểm này.

(6)

Diễn đạt hướng đối tượng

Thí dụ 1: Xét hai diễn đạt:

• Nhân viên văn phòng viết lý lịch cho sinh viên “Hồng” 

ViếtLýLịch(Hồng);

• Hồng ơi, viết lý lịch em.Hồng.ViếtLýLịch();

Theo bạn, tình với thực tế? Thí dụ 2: Xét hai diễn đạt:

• Tính tổng mảng a có n phần tử  Tổng(a,n); • Mảng a ơi, tình tổng em:  a.Tổng();

(7)

Diễn đạt hướng đối tượng

Diễn đạt tác vụ theo hướng thủ tục :

TênTácVụ(ĐốiTượngDữLiệu); Tổng(a,n);

Diễn đạt tác vụ theo hướng đối tượng :

ĐốiTượngDữLiệu.TênTácVụ(); a.Tổng();

Xem liệu đối tượng làm chương trình

(8)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

II CÁC KHÁI NIỆM HƯỚNG ĐỐI TƯỢNG CƠ BẢN

Đối tượng-Object Lớp-Class

Tính thừa kế- Inheritance

(9)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Đối tượng - Object:

Một đối tượng khái niệm nội dung có biên định nghĩa có liên

quan đến vấn đề mà ta giải

- Các thuộc tính: Tính chất/đặc tính riêng. - Các hành động: Các hành động

đối tượng

Tam giác

(10)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Lớp - Class:

Một lớp cách gom nhóm đối tượng có tính chất, cách ứng xử (hành động) mối quan hệ chung

(11)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Tính chất/thuộc tính lớp:

Một đặc tính cần có đối tượng

hoặc thực thể biểu thị lớp gọi tính chất

-VD: thuộc tính sinh viên: MSV, Họ tên,

Ngày sinh, Lớp học, Điểm TB,…

(12)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Phương thức/hành động lớp:

Một hành động cần có đối tượng thực thể biểu thị lớp gọi một phương thức

-VD: phương thức sinh viên: Viết lý lịch,

đăng ký môn học, học,…

(13)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

(14)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

TÍNH THỪA KẾ

Thừa kế tính chất cho phép dùng lại một lớp có để xây dựng lớp mới.

Lớp cha: Là lớp từ lớp khác thừa kế tính chất.

(15)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

Đơn thừa kế: Là tiến trình tạo lớp từ lớp có

Đa thừa kế: Là tiến trình tạo lớp từ hai hay nhiều lớp có

NGƯỜI

Sinh viên Nhân viên

ĐỘNG VẬT Cơn

trùng Có vú Bị sát

(16)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN LỚP VÀ CẤU TRÚC CỦA LỚP

class <Tên lớp>{ private:

<Kiểu liệu> <thuộc tính>; …

<Kiểu trả về> <phương thức>; public:

<Kiểu liệu> <thuộc tính>; …

(17)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN LỚP VÀ CẤU TRÚC CỦA LỚP

Ví dụ:

class Date{ private:

int month, day, year; public:

void set(int,int,int); void print();

};

PHÂN TÍCH VÀ THIẾT KẾ LỚP

(18)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

CÁC THÀNH VIÊN RIÊNG VÀ CHUNG CỦA LỚP

Dữ liệu hàm Dữ liệu hàm LỚP

RIÊNG CHUNG

Không thể truy cập từ lớp bên

(19)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

CÁC THÀNH VIÊN RIÊNG VÀ CHUNG CỦA LỚP

# include <iostream.h>

class diem // khai báo lớp điểm

{

private : int x; int y; public :

void khoitao(int, int); void hien();

};

void diem :: khoitao(int h, int t) { x=h; y=t ; }

void diem :: hien()

(20)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

HÀM THÀNH VIÊN

-Một thông điệp cho đối tượng tương ứng với

lệnh gọi hàm

- Các thông điệp có tham số khơng.

- Để đáp lại thông điệp, đối tượng thi hành

phương thức, tương ứng thân thủ tục

- Một phương thức hàm nằm lớp.

- Trong lập trình hướng đối tượng ta gửi thơng điệp thay

vì gọi hàm <đối tượng>.<thông điệp>

- Một hàm khai báo dạng thành viên

(21)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

HÀM THÀNH VIÊN

-Các hàm thành viên thường nằm phần chung

lớp

- Các hàm, phương thức lớp phải định

nghĩa trước dùng

- Phần khai báo phải có gía trị trả đối số

nó (nếu có)

- Các hàm thành viên không trùng tên với

(22)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

SỬ DỤNG LỚP

class exampleclass{

private:

object_data is an integer; public:

member_function1(parameter1, parameter2, …) { assign value to object_data }

member_funtion2() { display data } };

void main()

{ exampleclass object1, object2;

object1.member_function1(200); object1.member_function2();

object2.member_function1(350);

(23)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

SỬ DỤNG LỚP – Định nghĩa đối tượng

Exampleclass object1, object2;

-Lớp Exampleclass không tạo đối tượng hết, mô tả

đối tượng tạo có dạng

- Định nghĩa đối tượng tương tự định nghĩa

một biến

- Khi định nghĩa đối tượng khơng gian

chừa riêng cho nhớ

(24)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

SỬ DỤNG HÀM – Gọi hàm thành viên

-Để liên lạc với đối tượng, ta gọi hàm thành viên

của chúng

object1.member_function1(200); object1.member_function2();

-Một hàm thành viên gọi để tác động lên đối tượng cụ thể

- Cú pháp truy cập hàm thành viên:

<tên đối tượng>.<tên hàm thành viên>()

- Truy cập liệu thành viên lớp:

(25)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

SỬ DỤNG HÀM – Truyền trả đối tượng

-Việc truyền trả đối tượng

truyền trả kiểu liệu cho hàm.

- Việc truyền trả liệu không thật

(26)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

CÁC NGÔN NGỮ HƯỚNG ĐỐI TƯỢNG

-C++ -JAVA

-VISUAL BASIC -VISUAL C#

(27)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

BÀI TẬP TRÊN LỚP

1 - Phân tích lớp hinhchunhat (Hình chữ nhật) - Khai báo lớp hinhchunhat

- Viết hàm main khai thác lớp hinhchunhat + Tạo hinhchunhat A

+ Nhập thơng tin cho hình A + In thơng tin hình A

(28)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

BÀI TẬP TRÊN LỚP

2 Xây dựng lớp Ccircle (Hình trịn) - Dữ liệu thành viên: bán kính R

- Hàm thành viên:

+ Nhập bán kính hình trịn + In bán kính hìn trịn

+ Tính chu vi hình trịn

+ Tính diện tích hình tròn

(29)

CHƯƠNG I: CÁC KHÁI NIỆM CĂN BẢN

BÀI TẬP TRÊN LỚP

3 Xây dựng lớp CAccount

- Dữ liệu thành viên: Tên, Mã số tài khoản, Tiền

-Hàm thành viên:

+ Nhập thông tin cho tài khoản + In thông tin cho tai khoản

+ Lấy thông tin số tiền tài khoản Viết hàm main để khai thác lớp

(30)

• Một đối tượng sách hệ thống quản lý thư viện có thuộc tính:

• - Tên sách

• - Tổng số sách

• - Số sách cho mượn

• Xây dựng lớp CSach với thuộc tính tên phương thức sau:

• - Phương thức nhập liệu cho đối tượng từ bàn phím Các thơng tin

cần nhập tên sách, tổng số sách, số cho mượn

• - Phương thức in thơng tin đối tượng hình

• - Phương thức tính số sách lại thư viện (tổng số - số

cho mượn)

• Trên số lớp xây dựng, viết chương trình thực cơng

việc:

• - Nhập danh sách sách với số lượng sách

nhập từ bàn phím

• - In hình sách có thư viện (Số sách lại

Ngày đăng: 24/04/2021, 15:12