Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
1,15 MB
Nội dung
Chương Lớp đối tượng Nội dung Khái niệm đối tượng Các mức truy xuất Các thành phần lớp Đối tượng Khái niệm đối tượng (object) lập trình hướng đối tượng giống đối tượng cụ thể giới thực Mỗi đối tượng có thuộc tính hành vi riêng Thuộc tính (attribute) mô tả đặc điểm đối tưởng Hành vi phương thức hoạt động đối tượng, gọi tắt phương thức (method) Đối tượng Ví dụ: Phân số Đặc điểm Tử số Mẫu số Thao tác Cộng, trừ, nhân, chia Tối giản Nghịch đảo Đối tượng Ví dụ: xe Màu trắng cửa bánh Hiệu Toyota Chạy tới Chạy lui Xe dừng … Đối tượng Đối tượng: XeHoi Hiệu xe Màu xe Số bánh xe Số cửa Chạy tới Chạy lui Dừng xe Tên đối tượng Thuộc tính Phương thức Đối tượng Các đối tượng có đặc điểm (thuộc tính phương thức) giống gom nhóm thành lớp để phân biệt với đối tượng khác dễ quản lý Một lớp (class) phân loại đối tượng kiểu (type) đối tượng Ví dụ: − Các xe Toyota, Honda, Porsche thuộc lớp xe • Các chó giữ nhà, chó săn, chó kiểng thuộc lớp chó Khai báo đối tượng class TenLop { //khai báo biến lớp kieubien tenBien1; kieubien tenBien2; //khai báo phương thức PhuongThuc1(); PhuongThuc2(); } Khởi tạo đối tượng TenLop tenBien = new TenLop(); Ví dụ: PhanSo a = new PhanSo(); XeHoi b = new XeHoi(); Khai báo đối tượng Đối tượng phân số: class PhanSo { //khai báo biến lớp int tuSo; int mauSo; //khai báo phương thức } Truyền đối tượng vào phương thức Đối tượng kiểu tham chiếu Nếu có câu lệnh tác động đến giá trị biến lớp đối tượng phương thức đối tượng bị thay đổi sau hoàn tất phương thức Chương Lớp đối tượng Nội dung Thuộc tính Operator Bảo vệ truy cập biến lớp Thay đổi tên biến thay đổi code chỗ dùng biến? Hạn chế người dùng thay đổi giá trị biến? Kiểm tra hợp lệ gán giá trị biến? Biến đọc (read only)? Truy cập giá trị kết việc xử lý biến lớp? Bảo vệ truy cập biến lớp Không cho phép truy cập biến lớp dùng hàm để truy cập class PhanSo { private int tuSo; public int mauSo; public int LayTuSo() { return tuSo; } public void GanTuSo(int gt) { tuSo = gt; } } Thuộc tính Dùng để bảo vệ việc truy cập biến lớp Cho phép chỉnh sửa code khơng làm ảnh hưởng nhiều đến chương trình Thuộc tính class PhanSo { private int tuSo; private int mauSo; public int TuSo { get { return tuSo; } set { tuSo = value; } } public int MauSo { get { return mauSo; } set { mauSo = value; } } } Kiểm tra hợp lệ class PhanSo { private int tuSo; private int mauSo; public int TuSo { … } public int MauSo { get { return mauSo; } set { if(value == 0) mauSo = 1; else mauSo = value; } } } Thuộc tính đọc Khơng cho người dùng sửa giá trị biến Chỉ có get, khơng có set class PhanSo { private int tuSo; private int mauSo; private double giaTri; public double GiaTri { get { return giaTri; } } public double LayGiaTri() { giaTri = (double)tuSo / (double)mauSo; return giaTri; } } Thuộc tính kết xử lý class PhanSo { private int tuSo; private int mauSo; private double giaTri; public int TuSo{…} public int MauSo{…} public double GiaTri { get { return (double)tuSo / (double)mauSo; } } } Toán tử Các phép tính +, -, *, / Phép so sánh >, =, < >=