Lớp Lớp là một khuôn mẫu của đối tượng bao hàm tất cả những thuộc tính và phương thức của đối tượng.. Mọi thực thể thuộc kiểu ‘Con người’ sẽ đều có những đặc tính và những hành động như
Trang 1NGÔN NGỮ LẬP TRÌNH JAVA
Giảng viên : Nguyễn Thu Hà
CHƯƠNG 6: LỚP VÀ ĐỐI TƯỢNG LỚP
Trang 21 Lớp
Lớp là một khuôn mẫu của đối tượng bao
hàm tất cả những thuộc tính và phương thức của đối tượng Một lớp con có thể kế thừa
các thuộc tính của lớp cha nó
Hãy khảo sát lớp có tên là ‘khách hàng’ dưới đây Lớp này bao gồm mọi thuộc tính và
hành động đòi hỏi đối với một khách hàng
khách hàng, Mua loại hàng, Số lượng
Trang 3 Một lớp sẽ phải có một tập hợp các thuộc
tính và các hành động riêng Chẳng hạn như lớp Con người
Viết, Nói
Lớp này định nghĩa thực thể ‘Con người’ Mọi thực thể thuộc kiểu ‘Con người’ sẽ đều có
những đặc tính và những hành động như đã được định nghĩa
Trang 4 Một khi một lớp đã được định nghĩa, có
những thuộc tính và những hành động của những thực thể ‘trông giống’ như lớp này Vì thế, tự bản chất một lớp là một nguyên mẫu (prototype)
Một ví dụ khác về một lớp khác
bán được
Trang 5 Lớp trên định nghĩa các thuộc tính và các
hành động đặc trưng cho mọi nhân viên bán hàng
Trang 7Modifiers là bổ từ của lớp bao gồm như là public,
private…
Name_of_class là tên của lớp do người lập trình tự đặt Super sử dụng trong trường hợp dẫn xuất từ lớp cha
được sử dụng bởi từ khoá extends
Implements: Bổ sung lớp giao diện
Ví dụ:
class Vehicle {
int passengers; // number of passengers
int fuelcap; // fuel capacity in gallons
int mpg; // fuel consumption in miles per gallon
}
Trang 8length=l;
} }
Trang 9Ví dụ:
public class Bicycle {
// the Bicycle class has three fields
public int cadence;
public int gear;
public int speed;
// the Bicycle class has one constructor
public Bicycle(int startCadence, int startSpeed, int startGear) {
Trang 10// the Bicycle class has four methods
public void setCadence(int newValue) { cadence = newValue;
Trang 111.1 Các bổ từ của lớp
PublicLớp có thể truy cập được từ các khối khác
FinalLớp không thể tạo dẫn xuất ( lớp hằng )
AbstractLớp trừu tượng
Ví dụ:
Abstract class tt{
Abstract void m();
}
Public class testmain{
Public static void main()
}
Trang 12Lớp đã định nghĩa một loại hình dữ liệu Và
trong Java cũng cung cấp kiểu hình dữ liệu này, nó dùng để định nghĩa biến có kiểu dữ liệu như này
Ví dụ:
Rect rect1;
rect1 có kiểu dữ liệu là rect, trên thực tế, rect1
là một loại hình dữ liệu được dẫn xuất từ lớp Rect
Trang 131.2 Các loại biến
Biến được khai báo trong lớp hay biến của
lớp —được gọi là trường (fields.)
Biến trong phương thức hoặc một khối
( block )—Được gọi là biến cục bộ ( local
variables )
Biến được mô tả trong phương thức —Được
gọi là các tham số ( parameters )
Trang 142 Đối tượng
Lớp là một khái niệm, còn đối tượng là một thể hiện được định nghĩa bởi lớp.Một lớp là một nguyên mẫu phác họa những thuộc tính
và những hành động có thể của một thực
thể Để có thể sử dụng thực thể mà lớp định nghĩa, cần phải tạo một ‘đối tượng’ từ lớp đó
Trang 15 Hãy khảo sát lớp ‘Khách hàng’ được định
nghĩa trên Lớp này định nghĩa mọi thuộc tính
và hành động gắn liền với một khách hàng
Khi một người mua hàng, cửa hàng ấy có
một khách hàng mới Vào thời điểm ấy, một đối tượng giống như lớp ‘Khách hàng’ được tạo ra Đối tượng này sẽ phải có những giá trị thực đối với các thuộc tính ‘Tên’, ‘Địa chỉ’, …
Trang 16 Định nghĩa: Một đối tượng là một trường hợp của một lớp.
Trang 17Một đối tượng là một thực thể cụ thể , có những đặc tính riêng mô tả đối tượng ấy là gì, hoặc hành động
Một đối tượng cũng thực hiện một số hành động Một
xe hơi có khả năng thực hiện những hành động
sau:
Khởi động.
Ngưng.
Chuyển động.
Trang 18 Để chuyển đổi giữa các đối tượng lập trình
và các đối tượng đời thực, cần phải kết hợp các thuộc tính và các hành động của một đối tượng
Trang 192.1 Cách khởi tạo đối tượng:
Sử dụng từ khoá new để khởi tạo một biến đối tượng mới:
Trang 21 Bài tập ví dụ: VehicleDemo
Bài tập ví dụ: RectDemo1
Bài tập ví dụ: VolcanoApplication
Trang 223 Phương thức khởi dựng
Trong Java, bất kể là biến với loại hình dữ
liệu nào cũng đều phải đặt giá trị ban đầu cho biến Java tồn tại một loại phương thức gọi là phương thức khởi dựng Sử dụng phương
thức khởi dựng tránh việc gọi tới lớp nhiều
lần Và sử dụng tên phương thức như tên
lớp, đồng thời truyền trực tiếp các tham số
vào cho lớp
Trang 233.1 Đặc điểm
Tên của phương thức trùng với tên lớp
Phương thức khởi dựng không trả lại giá trị, và cũng không trả lại bất cứ loại hình dữ liệu nào
Một lớp có thể có nhiều phương thức khởi dựng
hoặc không có phương thức khởi dựng nào
Trang 253.2 Tham số trong phương thức khởi dựng
Phương thức khởi dựng có thể chứa tham số hoặc không Khi phương thức khởi dụng
không chứa tham số Việc khởi tạo một đối tượng mới đưa về trạng thái khởi tạo một dối tượng mới cho lớp Khi phương thức khởi
dựng chứa tham số, khởi tạo đối tượng đồng thời phải khởi gán luôn giá trị ban đầu cho
đối tượng
Trang 26MyConstructor myc=new My Constructor(3,4);
Bài tập ví dụ: Tạo một constructor có 1 tham
số(ConsDemo1)
Trang 27Bài tập ví dụ: Constructor 3 tham số ( ConsDemo3)
Trang 283.3 Biến con trỏ this trong phương thức khởi dựng
biến của phương thức và biến của lớp luôn khác nhau, tuy nhiều trong trường hợp muốn
sử dụng biến trùng tên, người ta sẽ sử dụng một biến để phân biệt biến của phương thức khởi dựng gọi là biến con trỏ this
Trang 303.4 Tải chồng phương thức khởi dựng
Sử dụng phương pháp tải chồng phương
thức khởi dựng để tạo ra nhiều phương thức khởi dựng trong một lớp
Một lớp có thể có nhiều phương thức khởi
dựng nhưng khác nhau về danh sách tham số
Bài tập ví dụ: consDemo4
Bài tập ví dụ: ConsDemo5
Bài tập ví dụ : box2