1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình hướng đối tượng Chương 4 Trường Đại học Ngoại ngữ Tin học

30 324 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 136,84 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Lập trình hướng đối tượng Chương 4 Properties cung cấp cho người học các kiến thức Lý do dùng properties, tạo properties, auto – Implemented properties, object Initializer. Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

Click to edit Master subtitle style

PROPERTIES

Khoa Công nghệ thông tin Trường Đại học Ngoại ngữ - Tin học, TP.HCM

CHƯƠNG 4:

Trang 3

LÝ DO DÙNG PROPERTIES

Trang 5

Giải pháp “cổ điển”: Tạo method trả về giá trị

second và method gán giá trị cho second

Lý do dùng properties

class Time

{

private int seconds;

public int Get Seconds()

Trang 7

Một cách cực kỳ “thuận lợi” nhưng không ai dùng

C# cung cấp 1 giải pháp cho vấn đề này là Property

Trang 8

TẠO PROPERTIES

Trang 9

Tạo properties

class Time

{

private int seconds;

public int Seconds

public int GetSeconds() {

Trang 10

Khai báo property: có 3 phần

Từ khóa ‘public’: Ai cũng có thể dùng property

Kiểu của property

Tên property

Thân của property

get: thực thi khi ai đó đọc giá trị của property

set: thực thi khi ai đó gán giá trị cho property

Tạo properties

Trang 11

Nội dung của get set giống hàm GetSeconds

và SetSeconds

Hàm SetSeconds có tham số còn set không có

tham số mà dùng từ khóa value đại diện cho

giá trị gán cho property

Tạo properties

Trang 12

Time time = new Time();

time.SetSeconds(90);

} }

Trang 13

}

Trang 15

Tạo properties

class Time

{

private int seconds;

public int Seconds

{

return seconds/60;

} }

public int Hours

{ get

{

return seconds/3600;

} } }

Trang 16

Trong lớp TaiKhoan ở bài tập 3.1

thay thế các phương thức Get/Set

thành các properties Và kiểm tra

tính hợp lệ trước khi thay đổi dữ

liệu của field.

Số tiền phải là số dương (Sotien > 0)

Bài tập thực hành 4.1

Trang 17

Trong lớp Sach ở bài tập 3.4 thay

thế các phương thức Get/Set

thành các properties Và kiểm tính

hợp lệ trước khi thay đổi dữ liệu

của field.

Tên sách không được là chuỗi rỗng.

Giá sách phải là số dương.

Bài tập thực hành 4.2

Trang 18

Trong lớp SinhVien ở bài tập 3.2 thay

thế các phương thức Get/Set thành

các properties Và kiểm tính hợp lệ

trước khi thay đổi dữ liệu của field.

Họ tên không được là chuỗi rỗng.

Năm sinh phải là số dương.

Địa chỉ không được là chuỗi rỗng.

Bài tập thực hành 4.3

Trang 19

Trong lớp Circle ở bài tập 3.3 thay

Trang 20

AUTO – IMPLEMENTED PROPERTIES

Trang 21

private int seconds;

public int Seconds

}

Trang 22

OBJECT INITIALIZER

Trang 23

Khi tạo đối tượng, có thể dùng các properties

để khởi tạo giá trị

Object Initializer

class Book

{

private string title;

private string author;

private int pages;

public string Title

} set { pages = value;

} }

}

public string Author {

get { return author;

} set { author = value;

} }

Trang 24

Book book = new Book();

book.Title = “Don't Make Me Think”;

Trang 25

Lý do dùng properties

Truy cập field

Code dễ đọc

Một field không nhất thiết chỉ có 1 property

Auto – Implemented properties

Vừa tạo properties vừa tạo fields

Trang 26

Trong lớp Circle ở bài tập 4.4 vừa cài đặt

ở trên Tạo mảng đối tượng của lớp

Circle Trong phương thức Main() thực

hiện các yêu cầu sau:

Khai báo và nhập n hình tròn.

Xuất thông tin n hình tròn ra màn hình.

Tính và xuất diện tích của từng hình tròn.

Bài tập thực hành 4.5

Trang 27

Tạo lớp Color được biểu diễn bằng các giá trị red, green, blue (có giá trị từ 0 đến 255) và alpha

(transparency – trong suốt – từ 0 đến 255: 0 là

trong suốt, 255 là đậm đặc).

Thêm các instance variables (fields)

Thêm default constructor (255,255,255: white)

Thêm constructor có tham số

Thêm copy constructor

Thêm properties

Thêm phương thức tính giá trị xám của màu (tính

trung bình cộng 3 màu)

Bài tập thực hành 4.6

Trang 28

Tạo lớp Ball, sử dụng lớp Color làm field.

Gồm các fields: kích thước (size hay radius), màu sắc

(color) và số lần ném banh (timeOfThrown)

Khai báo các fields cho Ball (field color nên dùng

kiểu Color đã tạo từ bài trước)

Thêm default constructor: size=0, soLanNem=0,

màu mặc địn

Thêm constructor có tham số

Thêm copy constructor

Bài tập thực hành 4.7

Trang 29

Tạo lớp Ball (tt)

Thêm phương thức Throw (cộng thêm 1 khi banh chưa bị

nổ).

Thêm phương thức Input() để nhập thông tin trái banh.

Thêm phương thức Output() để xuất thông tin trái banh.

Viết phương thức Main()

• Khai báo và tạo n trái banh có giá trị mặc định (n nhập từ bàn

phím).

• Nhập lại thông tin trái banh thứ 0.

• Xuất ra n trái banh.

• Ném trái banh thứ 1, 2.

• Cho nổ trái thứ 1 và ném trái thứ 1.

• In số lần ném các trái banh.

Bài tập thực hành 4.7 (tt)

Trang 30

Bài tập OOP của ThS Tôn Quang

Toại, Khoa CNTT, Huflit, 2016.

Tài liệu tham khảo bài tập

Ngày đăng: 15/05/2017, 10:22

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm