Lớp Một lớp là khuôn mẫu mà từ đó các đối tượng được tạo ra Trong một lớp: – Trạng thái: được mô tả thông qua các trường dữ liệu biến/hằng số trong các ngôn ngữ lập trình – Hành vi:
Trang 1NHẬP MÔN LẬP TRÌNH JAVA
Trang 2Bài 2: Ngôn ngữ Java
1 Đối tượng (Object)
2 Lớp (Class)
3 Kiểu dữ liệu
4 Chuyển đổi kiểu dữ liệu
Trang 3 Ví dụ: đối tượng con người
– Trạng thái: họ tên, ngày sinh, giới tính,…
– Hành vi: ăn, nói, học, làm,…
Trang 41 Đối tượng
Tiếp cận hướng đối tượng: mô hình hóa các
đối tượng trong thế giới thực thành các đối
tượng trong chương trình
Đối tượng trong thực tế
Trang 62 Lớp
Một lớp là khuôn mẫu mà từ đó các đối tượng được tạo ra
Trong một lớp:
– Trạng thái: được mô tả thông qua các trường dữ
liệu (biến/hằng số trong các ngôn ngữ lập trình)
– Hành vi: được mô tả thông qua các phương thức (hàm trong ngôn ngữ lập trình)
Trang 72 Lớp
Ví dụ: lớp Integer mô tả số nguyên
– Integer.MAX_VALUE: hằng số biểu diễn giá trị
số nguyên lớn nhất của Integer
– Integer.toString(giá_trị): hàm chuyển đổi một giátrị số nguyên sang chuỗi ký tự
Trang 83 Kiểu dữ liệu
Trang 9 Trạng thái hai kiểu của việc
chuyển kiểu
Mô tả chuyển kiểu ngầm định
- Hai kiểu nên tương thích
- Kiểu đích có tầm giá trị lớn hơn
kiểu nguồn qui luật của sựphát triển
Mô tả chuyển kiểu tường minh
Trang 11 Biến là một vị trí lưu trữ trên bộ nhớ của máy tính: lưu trữ các giá trị có thể được dùng để tính toán xử lý
Biến có thể lưu trữ dữ liệu dạng chuỗi, dạng số, dạng
ngày giờ … tuỳ thuộc vào kiểu dữ liệu của biến
Biến phải được khai báo trước khi dùng
5 Biến và Hằng
Trang 12 Hằng là những giá trị không thay đổi trong
suốt quá trình hoạt động của ứng dụng
5 Biến và Hằng
Trang 13 Quy ước đặt tên biến và hằng
– Tên biến có thể gồm các ký tự chữ, ký tự số, dấu gạch dưới ‘_’, và dấu ‘$’
– Tên biến phải bắt đầu bằng ký tự chữ
– Tên biến không được trùng với từ khóa và từ dành riêng của Java
– Tên biến có phân biệt chữ hoa – thường
– Nếu tên biến chỉ gồm một từ đơn, tên biến nên viết chữ thường
– Nếu tên biến gồm nhiều từ, ký tự đầu của từ đầu viết thường, ký tự đầu của mỗi từ kế tiếp viết hoa
5 Biến và Hằng
Trang 14 Cú pháp khai báo biến và hằng
– Khai báo biến
Trang 15 Toán tử gán
Toán tử số học
Toán tử một ngôi
Toán tử so sánh
Toán tử luận lý, điều kiện (? :)
Toán tử tiền tố, hậu tố
6 Các toán tử
Trang 16 Toán tử gán
= Gán toán hạng thứ hai cho toán hạng thứ nhất Gán a có giá trị 1
a=1 += Cộng hoặc nối chuỗi toán hạng sau vào toán
hạng đầu và gán kết quả cho toán hạng đầu
Tăng biến a lên 1 a+=1 a=a+1 -= Trừ toán hạng sau khỏi toán hạng đầu và gán
kết quả cho toán hạng đầu
Giảm biến a đi 1 a-=1 a=a-1
*= Nhân toán hạng sau vào toán hạng đầu và gán Gấp đôi biến a
6 Các toán tử
Trang 18 Toán tử một ngôi
+ Chỉ định giá trị không âm
- Chỉ định giá trị âm ++ Tăng giá trị lên 1 Giảm giá trị đi 1
! Phép toán phủ định trên 1 giá
trị luận lý
6 Các toán tử
Trang 20 Toán tử luận lý, điều kiện
Ví dụ:
boolean a=true,b=false;
&& Phép toán luận lý VÀ (AND) trên 2 giá trị Kết quả là
true nếu cả 2 giá trị đều là true
|| Phép toán luận lý HOẶC(OR) trên 2 giá trị Kết quả là
true nếu cả 1 trong 2 giá trị là true
?: Toán tử điều kiện
6 Các toán tử
Trang 21 Toán tử tiền tố (Prefix) và hậu tố (Postfix)
– Các toán tử tăng (++) và giảm ( ) được sử dụng
để làm tiền tố và hậu tố Trong trường hợp tiền
tố, các toán tử tăng hoặc giảm được đặt trước biến kiểu dữ liệu đơn giản
– Ví dụ:
++a a = a + 1 a a = a – 1 int b = 6;
int a = ++b; // a = 7, b = 7
a = b++; // a = 7, b = 8 ++b; // a = 7, b = 9
a = b; // a = 8, b = 8
6 Các toán tử
Trang 23 Câu lệnh điều kiện
Câu lệnh lặp
Lệnh nhảy
7 Các cấu trúc điều khiển
Trang 24Câu lệnh điều kiện
Cho phép chúng ta thay đổi luồng thi hành của chương trình dựa vào biểu thức điều kiện
Các câu lệnh điều kiện:
- if
- if – else
- switch – case
Trang 25Câu lệnh if
Câu lệnh if kiểm tra kết quả của điều kiện
và thực hiện hành động thích hợp dựa vào kết quả của điều kiện
if (điều kiện) {
// các lệnh }
Trang 27Câu lệnh if – else
Được dùng để lựa chọn một trong hai nhánh thi hành của chương trình
if (điều kiện) {
//các lệnh;
} else {
//các lệnh;
}
Trang 28Câu lệnh if – else
Ví dụ: xét kết quả học tập: nếu điểm trung bình
>=5: kết quả là “Đậu”, ngược lại là “Rớt”
Scanner s=new Scanner(System.in);
double dtb= s.nextDouble();
if (dtb>=5)System.out.println(“Đậu”);
Trang 29Nhiều câu lệnh if
Là các câu lệnh if else if nối đuôi
Điều kiện sẽ được kiểm tra tuần tự từ đầu đến cuối
if (điều kiện){
//câu lệnh;
}else if (điều kiện) {
//câu lệnh;
}else {
//câu lệnh;
}
Trang 30Nhiều câu lệnh if
Ví dụ: xếp loại học tập dựa trên điểm trung bình
Scanner s=new Scanner(System.in);
Trang 31switch - case
Câu lệnh switch – case
được dùng để thay thế cho câu lệnh if – else – if
Được dùng trong trường
hợp biểu thức lượng giá
có nhiều giá trị có thể liệt kê được
//statement;
break;
default:
//default statement;
Trang 32 Ví dụ: nhập vào tháng, năm, tìm số ngày tối đa của tháng.
Scanner s=new Scanner(System.in);
int thang=s.nextInt();int nam=s.nextInt();
Trang 33Vòng lặp
Một vòng lặp gồm một câu lệnh hay một khối lệnh sẽ thi hành lặp lại cho tới khi biểu thức điều kiện sai
Có ba loại vòng lặp trong Java
- for
Trang 34 Dùng để thi hành một lệnh hay khối lệnh
trong khi biểu thức điều kiện còn đúng Điều kiện được kiểm tra trước khi các lệnh được thi hành
while (điều kiện) {
Vòng lặp while
Trang 35 Ví dụ: tính tổng các số nguyên từ 1 đến 100
int i=1, tong=0;
while (i<=100){
tong+=i;
i++;
}System.out.println(tong);
Vòng lặp while
Trang 36do while
Kiểm tra điều kiện ở cuối vòng lặp thay vì đầu vòng lặp để đảm bảo rằng vòng lặp sẽ được thi hành ít nhất một lần
do{
//các l ệnh } while ( điều kiện);
Trang 37do while
Ví dụ: tính tổng các số nguyên từ 1 đến 100
int i=1, tong=0;
do{
tong+=i;
i++;
}while (i<=100);
Trang 39Lệnh for
Ví dụ: tính tổng các số nguyên từ 1 đến 100
int i=1, tong=0;
for (i=1;i<=100;i++) {
tong+=i;
} System.out.println(tong);
Trang 40 Cho phép thay đổi thứ tự thi hanh
Trang 41 Ví dụ: Tìm số nguyên lớn nhất trong khoảng từ 1 đến
100 chia hết cho n (với n nhập vào từ bàn phím)
Scanner s=new Scanner(System.in);
Trang 42 Ví dụ: Tính tổng các số nguyên lẻ từ 1 đến 100
int i=1, tong=0;
for (int i=1;i<=100;i++){
if (i%2==0){
i++; continue;
}
Lệnh nhảy