Bài giảng Lập trình hướng đối tượng - Bài 4: Khởi tạo và sử dụng đối tượng - Nguyễn Thị Thu Trang
Bộ môn Công nghệ Phần mềm
Viện CNTT & TT
Trường Đại học Bách Khoa Hà Nội
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Bài 04. Khởi tạo và sử dụng đối
tượng
Nội dung
1. Phương thức khởi tạo
2. Các loại phương thức khởi tạo
3. Khai báo và khởi tạo đối tượng
4. Sử dụng đối tượng
5. Quản lý bộ nhớ và so sánh đối tượng
6. Hủy bỏ đối tượng
7. Ví dụ và bài tập
2
Bài giảng E-learning
◼ Phương thức khởi tạo, khai báo và sử dụng đối tượng
◼ Quản lý bộ nhớ: Stack và Heap
◼ Equals và ==
◼ Java finalize method
3
Nội dung
1. Phương thức khởi tạo
2. Các loại phương thức khởi tạo
3. Khai báo và khởi tạo đối tượng
4. Sử dụng đối tượng
5. Quản lý bộ nhớ và so sánh đối tượng
6. Hủy bỏ đối tượng
7. Ví dụ và bài tập
4
1. Phương thức khởi tạo
◼ Dữ liệu cần được khởi tạo trước khi sử dụng
◼
Lỗi khởi tạo là một trong các lỗi phổ biến
◼ Với kiểu dữ liệu đơn giản, sử dụng toán tử =
◼ Với đối tượng → Cần dùng phương thức khởi tạo
Student
- name
- address
- studentID
- dateOfBirth
Nguyễn Thu Hương
…
Nguyễn Hoàng Nam
Hải Phòng…
Hà Nội…
5
Khởi tạo và hủy bỏ đối tượng
◼ Mỗi đối tượng khi tồn tại và hoạt động được hệ điều hành
cấp phát một vùng nhớ để lưu lại các giá trị của dữ liệu
thành phần
◼ Khi tạo ra đối tượng HĐH sẽ gán giá trị khởi tạo cho các dữ
liệu thành phần
◼
Phải được thực hiện tự động trước khi người lập trình có
thể tác động lên đối tượng
◼
Sử dụng hàm/phương thức khởi tạo
◼ Ngược lại khi kết thúc cần phải giải phóng hợp lý tất cả các
bộ nhớ đã cấp phát cho đối tượng.
◼
Java: JVM
◼
C++: Hàm hủy (destructor)
6
1. Phương thức khởi tạo
◼ Là phương thức đặc biệt được gọi tự động
khi tạo ra đối tượng
◼ Mục đích chính: Khởi tạo cho các thuộc tính
của đối tượng
Student
- name
- address
- studentID
- dateOfBirth
Nguyễn Thu Hương
…
Nguyễn Hoàng Nam
Hải Phòng…
Hà Nội…
7
1. Phương thức khởi tạo
◼ Mỗi lớp phải chứa ít nhất một constructor
◼
◼
◼
Có nhiệm vụ tạo ra một thể hiện mới của lớp
Tên của constructor trùng với tên của lớp
Constructor không có kiểu dữ liệu trả về
◼ Ví dụ:
public BankAccount(String o, double b){
owner = o;
balance = b;
}
8
1. Phương thức khởi tạo
◼ Phương thức khởi tạo có thể dùng các chỉ
định truy cập
◼
◼
public
private
◼
Không có (mặc định – phạm vi package)
◼ Một phương thức khởi tạo không thể dùng
các từ khóa abstract, static, final,
native, synchronized.
◼ Các phương thức khởi tạo không được xem
như là thành viên của lớp.
9
Nội dung
1. Phương thức khởi tạo
2. Các loại phương thức khởi tạo
3. Khai báo và khởi tạo đối tượng
4. Sử dụng đối tượng
5. Quản lý bộ nhớ và so sánh đối tượng
6. Hủy bỏ đối tượng
7. Ví dụ và bài tập
10
2. Các loại phương thức khởi tạo
◼ 2 loại phương thức khởi tạo
◼
Phương thức khởi tạo mặc định (Phương thức
khởi tạo không tham số)
◼
Phương thức khởi tạo có tham số
11
Phương khởi tạo mặc định
(default constructor)
◼ Là phương thức khởi tạo KHÔNG THAM SỐ
public BankAccount(){
owner = "noname"; balance = 100000;
}
◼ Một lớp nên có phương thức khởi tạo mặc định
12
Phương thức khởi tạo mặc định
◼ Khi LTV không viết một phương khởi tạo nào trong lớp
◼
JVM cung cấp phương thức khởi tạo mặc định
◼
Phương thức khởi tạo mặc định do JVM cung cấp có chỉ định truy
cập giống như lớp của nó
public class MyClass{
public static void main(String args){
//...
}
public class MyClass{
}
public MyClass(){
MyClass.java
}
public static void main(String args){
//...
}
Compiled
}
MyClass.class
13
Phương thức khởi tạo không tham số
◼ Một phương thức khởi dựng có thể có các
tham số truyền vào
◼ Dùng khi muốn khởi tạo giá trị cho các thuộc
tính
◼ Ví dụ:
public BankAccount(String o, double b){
owner = o;
balance = b;
}
14
Nội dung
1. Phương thức khởi tạo
2. Các loại phương thức khởi tạo
3. Khai báo và khởi tạo đối tượng
4. Sử dụng đối tượng
5. Quản lý bộ nhớ và so sánh đối tượng
6. Hủy bỏ đối tượng
7. Ví dụ và bài tập
15
3. Khai báo và khởi tạo đối tượng
◼ Đối tượng được tạo ra, thể hiện hóa
(instantiate) từ một mẫu chung (lớp).
◼ Các đối tượng phải được khai báo kiểu của
đối tượng trước khi sử dụng:
◼
Kiểu của đối tượng là lớp các đối tượng
◼
Ví dụ:
◼
◼
String strName;
BankAccount acc;
16
3. Khai báo và khởi tạo đối tượng
◼ Đối tượng cần được khởi tạo trước khi sử
dụng
◼
◼
Sử dụng toán tử = để gán
Sử dụng từ khóa newvới constructor để khởi tạo đối
tượng:
◼
Từ khóa newdùng để tạo ra một đối tượng mới
◼
Tự động gọi phương thức khởi tạo tương ứng
◼
Một đối tượng được khởi tạo mặc định là null
◼ Đối tượng được thao tác thông qua tham
chiếu (~ con trỏ).
◼ Ví dụ:
BankAccount acc1;
acc1 = new BankAccount();
17
3. Khai báo và khởi tạo đối tượng
◼ Có thể kết hợp vừa khai báo và khởi tạo đối
tượng
◼
Cú pháp:
Ten_lop ten_doi_tuong = new
Pthuc_khoi_tao(ds_tham_so);
◼
Ví dụ:
BankAccount account = new BankAccount();
18
3. Khai báo và khởi tạo đối tượng
◼ Phương thức khởi tạo không có giá trị trả về,
nhưng khi sử dụng với từ khóa new trả về một tham
chiếu đến đối tượng mới
19
3. Khai báo và khởi tạo đối tượng
◼ Mảng các đối tượng được khai báo giống như
mảng dữ liệu cơ bản
◼ Mảng các đối tượng được khởi tạo mặc định
với giá trị null.
◼ Ví dụ:
Employee emp1 = new Employee(123456);
Employee emp2;
emp2 = emp1;
Department dept[] = new Department[100];
Test[] t = {new Test(1),new Test(2)};
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình hướng đối tượng - Bài 4: Khởi tạo và sử dụng đối tượng - Nguyễn Thị Thu Trang", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_lap_trinh_huong_doi_tuong_bai_4_khoi_tao_va_su_dun.pdf

