Lập trình java - Bài 8: Kiến thức nâng cao về phương thức và lớp

Lập trình java - Bài 8: Kiến thức nâng cao về phương thức và lớp

 MỤC TIÊU 

+ Kết thúc bài học này bạn có khả năng

- Hiểu sâu hơn về hàm tạo 

- Phân biêt được tham biến và tham trị

- Sử dụng tham số biến đổi 

- Biết cách sử dụng static, final

- Hiểu thuật toán đệ quy

VẤN ĐỀ VỀ CONSTRUCTOR

1) Nếu một lớp không định nghĩa về constructor thì java tự động cung cấp constructor mặc định (không tham số) cho lớp.

2) Tạo một constructor muốn gọi constructor khác cung lớp thì sử dụng this(tham số), muốn gọi constructor của lớp cha thì sử dụng super(tham số)

3) Nếu trong constructor không gọi constructor khác thì nó tự gọi constructor không tham số của lớp cha super()

4) Lời gọi constructor (super() hoặc this()) khác phải là lệnh đầu tiên

5) Khi đã định nghĩa các constructor cho một lớp thì chỉ được phép sử dụng các constructor này để tạo đối tượng

TRẮC NGHIỆM

Hãy cho biết đoạn mã lệnh sau sai ở đâu? vì sao?

trắc nghiệm vấn đề về constructor trong lập trình java


GIẢI THÍCH

Chiếu theo điều 1) và điều 3) slide trước ta có sơ đồ tương đương

giải thích vấn đề constructor trong lập trình java


THAM SỐ PHƯƠNG THỨC

Khi truyền tham số vào một phương thức, nếu phương thức có làm thay đổi giá trị của tham số thì giá trị của tham số sau khi gọi phương thức có bị thay đổi hay không?

tham số phương thức trong lập trình java


PHÂN LOẠI THAM SỐ

phân loại tham số trong lập trình java


TRUYỀN THAM SỐ CHO PHƯƠNG THỨC

Khi phương thức làm thay đổi giá trị của tham số thì

Nếu là tham trị: giá trị của tham số sẽ không bị thay đổi

Nếu là tham biến: giá trị của tham số sẽ bị thay đổi theo

tham số phương thức trong lập trình java


THAM SỐ BIẾN ĐỔI (VARARGS)

Tham số biến đổi là tham số khi truyền vào phương thức với số lượng tùy ý (phải cùng kiểu).

truyền tham số cho phương thức trong lập trình java


TRUYỀN THAM SỐ BIẾN ĐỔI (VARARGS)

Bản chất của tham số biến đổi là mảng nhưng khi truyền tham số bạn có thể truyền vào nguyên mảng hoặc liệt kê các phần tử

Trong một hàm, chỉ có thể khai báo duy nhất một tham số kiểu varargs và phải là tham số cuối cùng

truyền tham số biến đổi varargs trong lập trình java


STATIC

Từ khóa static được sử dụng để định nghĩa cho khối và các thành viên tĩnh (lớp nội, phương thức, trường).

static trong lập trình java


Khối static {} sẽ chạy trước khi tạo đối tượng hoặc truy xuất bất kỳ thành viên tĩnh khác

Thành viên tĩnh của lớp được sử dụng độc lập với các đối tượng được tạo ra từ lớp đó.

Có thể truy cập đến một thành viên tĩnh thông qua tên lớp mà không cần tham chiếu đến một đối tượng cụ thể

Trường static là dữ liệu dùng chung cho tất cả các đối tượng được tạo ra từ lớp đó.

Trong khối và phương thức tĩnh chỉ được truy cập đến các thành viên tĩnh khác mà không được phép truy cập đến thành viên thông thường của class

static trong lập trình java


ĐỊNH NGHĨA HẰNG

Trong Java có 3 loại hằng

Lớp hằng là lớp không cho phép thừa kế

Phương thức hằng là phương thức không cho phép ghi đè

Biến hằng là biến không cho phép thay đổi giá trị

Sử dụng từ khóa final để định nghĩa hằng

định nghĩa hằng trong lập trình java


CHỌN ĐOẠN MÃ ĐÚNG

ví dụ định nghĩa hằng trong lập trình java


LỚP OBJECT

Khi định nghĩa một lớp mà không kế thừa từ một lớp khác thì mặc định kế thừa lớp Object

Như vậy mọi lớp đều có lớp cha chỉ duy nhất một lớp không có cha là Object

lớp object trong lập trình java


LỚP NỘI

Lớp nội là lớp được khai báo bên trong một lớp khác

Có hai loại: lớp nội tĩnh và lớp nội thông thường

Lớp bên trong chỉ có thể xác định trong phạm vi lớp ngoài cùng và có thể truy cập các thành viên của lớp bao nó

lớp nội trong lập trình java


ĐỆ QUY

Một phương thức gọi chính nó

Phải có lệnh dừng đệ quy trong phương thức để tránh vòng lặp vô hạn

Đệ qui dễ hiểu nhưng rất tốn tài nguyên

đệ quy trong lập trình java


TỔNG KẾT NỘI DUNG BÀI HỌC

Tìm hiểu sâu về constructor

Phân loại tham số

Tham số biến đổi

Sử dụng static

Định nghĩa hằng

Lớp nội

Đệ quy

Xem tiếp Bài 9: Packages and Interfaces



ĐĂNG NHẬN XÉT

Previous Post Next Post