Tài liệu LẬP TRÌNH JAVA Chương 6 - Pdf 10

LẬP TRÌNH JAVA
Phạm Quang Dũng
BM KHMT - Khoa CNTT - Trường ĐHNN I
Chương 6: Đối tượng và lớp
Object & Class
Nội dung chương 6

Khái niệm lập trình hướng đối tượng (OOP)

Tạo các đối tượng và các biến tham chiếu
đối tượng

Sự khác nhau giữa dữ liệu kiểu cơ sở và kiểu đối tượng

Tự động tập hợp dữ liệu không hợp lệ

Constructors

Từ bổ nghĩa (public, private và static)

Phương thức, biến Class và Instance

Tầm tác dụng của biến

Sử dụng từ khóa this

Case Studies ( lớp Mortgage và lớp Count)
Đối tượng (Objects) và Lớp (Class)

Đối tượng đại diện cho một thực thể
trong thế giới thật

findArea
A Circle object
Một đối tượng tổng quát
Đối tượng Circle
OOP - Lập trình sử dụng các đối tượng
Khai báo lớp
class Circle {
double radius = 1.0;
Circle(){
}
Circle(double newRadius){
radius = newRadius;
}
double findArea(){
return radius * radius * 3.14159;
}
}
Data field
Contructors
Method
Khai báo biến tham chiếu đối tượng
ClassName objectReference;
Ví dụ:
Circle myCircle;
myCircle là 1 instance của lớp
Circle.
Tạo đối tượng
objectReference = new ClassName();
Ví dụ:
myCircle = new Circle();

After:
i
2
j
Object type assignment
c1 = c2
Before:
c1
c2
After:
c1
c2
c2: Circle
radius = 9
Tập hợp dữ liệu không sử dụng

Theo hình trước, sau lệnh gán c1 = c2, c1
trỏ tới cùng một đối tượng được tham chiếu bởi
c2. Đối tượng trước đó được tham chiếu bởi c1
trở nên vô dụng, được gọi là garbage. Garbage
được tự động tập hợp lại bởi JVM.

Lời khuyên: Nếu bạn không cần sử dụng một
đối tượng nào đó, bạn nên gán biến tham chiếu
đối tượng đó trỏ tới null. Java VM sẽ tự động
tập hợp bộ nhớ nếu đối tượng không được tham
chiếu bởi bất kỳ biến nào.
Truy nhập đối tượng

Tham chiếu dữ liệu của đối tượng:

tượng.
Ví dụ 6.1: Sử dụng đối
tượng

Mục tiêu: Minh họa việc tạo đối
tượng, truy nhập dữ liệu, sử dụng
phương thức.
TestCircle
TestCircle
Circle
Circle
Ví dụ 6.2:
Sử dụng các lớp từ thư viện Java

Mục tiêu: Minh họa việc sử dụng các lớp
từ thư viện Java. Sử dụng lớp JFrame
trong gói javax.swing để tạo 2 frame; sử
dụng các phương thức trong lớp JFrame để
thiết lập tiêu đề, kích thước, vị trí
của các frame và hiển thị chúng.
TestFrame
TestFrame
Ví dụ 6.3: Sử dụng Constructor

Mục tiêu: Minh họa vai trò của
các constructor và sử dụng
chúng để tạo các đối tượng.
SimpleCircle
SimpleCircle
Từ bổ nghĩa và các pp truy nhập

method
Reference

myCircle
5
n
5
times
printAreas
method
Reference
c
myCircle: Circle
radius = 1
Pass by value (here the value is 5)
Pass by value (here the value is the
reference for the object)
Biến Instance

Biến instance (vd: biến radius) thuộc một
instance xác định, nó không được chia sẻ giữa các
đối tượng trong cùng 1 class.
Circle circle1 = new Circle();
Circle circle2 = new Circle(5);
radius của circle1 độc lập với radius của circle2, được
chứa ở những vùng nhớ khác nhau. Sự thay đổi radius
của circle1 không ảnh hưởng tới radius của circle2
Các biến, hằng, phương thức static

Để các biến, hằng, phương thức trong class được

instantiate
Memory
2
5
radius
numOfObjects
radius is an instance
variable, and
numOfObjects is a
class variable
UML Notation:
+: public variables or methods
-: private variables or methods
underline: static variables or metods

circle2:Circle -radius = 5
-numOfObjects = 2Ví dụ 6.6: Sử dụng biến, phương
thức Instance và Static
Mục tiêu: Minh họa vai trò, cách sử
dụng của các biến instance và static.
Biến static numOfObjects để theo dõi
số đối tượng Circle được tạo.
TestCircleWithStaticVariable
TestCircleWithStaticVariable


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status