Lê đình Thanh, Cơ bản về JavaLê đình Thanh Bộ môn Mạng và Truyền thông Máy tắnh Khoa Công nghệ Thông tin Trường đại học Công nghệ, đHQGHN Bài giảng LẬP TRÌNH JAVA Cơ bản về Java Bài 1...
Trang 1Lê đình Thanh, Cơ bản về Java
Lê đình Thanh
Bộ môn Mạng và Truyền thông Máy tắnh Khoa Công nghệ Thông tin Trường đại học Công nghệ, đHQGHN
Bài giảng
LẬP TRÌNH JAVA
Cơ bản về Java
Bài 1
Trang 2Lê đình Thanh, Cơ bản về Java
Nội dung
Ớ Lập trình với Java
Ớ Các phiên bản
Ớ Kiểu dữ liệu
Lập trình với Java
Java là ngôn ngữ lập
trình hướng ựối tượng
ựược phát triển bởi Sun,
nay thuộc Oracle
ỚMạnh mẽ
ỚPhân tán
Ớđa luồng
Ớđộc lập nền
ỚKhả chuyển
ỚAn ninh cao
ỚHiệu năng cao
Text Byte code Binary
Trang 3Lê đình Thanh, Cơ bản về Java
Môi trường
Ớ JRE (Java Runtime
Environment) bao gồm
Ớ Máy Java ảo (JVM Ờ Java Virtual Machine),
Ớ Thư viện các lớp thực thi
Ớ Bộ khởi ựộng ứng dụng Java cần thiết ựể chạy ứng dụng viết bằng java.
Môi trường
Ớ JDK (Java Development Kit) bao
gồm
Ớ Các công cụ ựể phát triển ứng dụng Java như công cụ biên dịch, gỡ lỗi, chạy ứng dụng hay công cụ viết tài liệu, công cụ triệu gọi từ xa, Ầ
Ớ Thư viện cần cho các công cụ phát triển
Ớ Các tệp tiêu ựề C (.h) ựể lập trình mã native
Ớ Các chương trình mẫu sử dụng Java API
Ớ Các applet và ứng dụng mẫu
Ớ Mã nguồn của JDK
Trang 4Lê đình Thanh, Cơ bản về Java
Môi trường
Ớ IDE (Integrated Development
Environment)
Ớ Là môi trường tắch hợp cho
phép lập trình, dịch, gỡ lỗi,
kiểm thử các ứng dụng
Ớ Liên kết sử dụng JDK
Ớ Cung cấp trình soạn thảo, công
cụ thiết kế trực quan, công cụ
quản lý mã nguồn, tắch hợp
CSDL, Ầ
Các phiên bản
Java SE: cho phát triển ứng dụng Desktop Java EE: cho phát triển ứng dụng phắa Server Java ME: cho phát triển ứng dụng trên thiết bị
di ựộng, cầm tay
JavaFX: cho phát triển ứng dụng web
Trang 5Lê đình Thanh, Cơ bản về Java
Kiểu dữ liệu
Ớ byte: nguyên có dấu, 8-bit
Ớ short: nguyên có dấu, 16-bit
Ớ int: nguyên có dấu, 32-bit
Ớ long: nguyên có dấu, 64-bit
Ớ float: thực, 32-bit
Ớ fouble: thực, 64-bit
Ớ char: 16-bit Unicode
Ớ boolean: true/false
Ớ String: xâu ký tự (lớp)
Biến
Ớ Biến thể hiện: Trường không tĩnh
Ớ Biến lớp: Trường tĩnh (static)
Ớ Biến cục bộ: được khai báo, sử dụng trong
phương thức
Ớ Tham số: đầu vào của phương thức
Ớ Tên: bao gồm chữ cái, số, _, $, không bắt ựầu bằng số, phân biệt chữ hoa-thường.
Ớ Khai báo: Kiểu_dữ_liệu Tên_biến [= Giá_trị] [, Ầ] ;
Trang 6Lê đình Thanh, Cơ bản về Java
Mảng
Ớ Khai báo:
Kiểu[] tên_mảng;
Kiểu[] tên_mảng = new Kiểu[số_phần_tử];
Ớ Truy cập phần tử:
Tên_mảng[chỉ_số];
Ớ Vắ dụ:
int[] a, float b[] = float[100];
a = int[500];
Toán tử
= += -= *= /= %= &= ^= |= <<= >>= >>>=
Gán
? :
Ba ngôi
||
Hoặc logic
&&
Và logic
|
Hoặc bắt
^
Hoặc loại trừ (XOR)
bắt
&
Và bắt
== !=
Bằng nhau
< > <= >= instanceof
Quan hệ
<< >> >>>
Dịch bit
+
-Cộng trừ
* / %
Nhân, chia, dư
++expr expr +expr -expr ~ !
Một ngôi
expr++
expr Hậu tố
Cú pháp Toán tử
Trang 7Lê đình Thanh, Cơ bản về Java
Ghi chú
Ớ // ghi chú trên một dòng
Ớ /* ghi chú
Ớ trên
Ớ nhiều dòng */
Khối lệnh
Ớ Tập các lệnh ựược ựặt giữa { và }
Ớ Vắ dụ:
Trang 8Lê đình Thanh, Cơ bản về Java
Cấu trúc ựiều khiển
Ớ Tuần tự: lệnh viết trước ựược thực hiện trước
Ớ Rẽ nhánh:
Ớ if
Ớ switch
Ớ Lặp:
Ớ for
Ớ while, do-while
if
if (ựiều_kiện) lệnh/khối_lệnh
[else lệnh_khác/khối_lệnh_khác]
Vắ dụ:
if (testscore >= 90) { grade = 'A'; }
else if (testscore >= 80) { grade = 'B'; }
else if (testscore >= 70) { grade = 'C'; }
else if (testscore >= 60) { grade = 'D'; }
else { grade = 'F'; }
Trang 9Lê đình Thanh, Cơ bản về Java
switch
switch (biểu_thức)
{
case giá_trị_1: các lệnh 1
case giá_trị_2: các lệnh 2
Ầ
[default: các lệnh]
}
Ớ Biểu thức và các giá trị có kiểu byte, short, int hoặc char
switch
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: numDays = 31; break;
case 4:
case 6:
case 9:
case 11: numDays = 30; break;
case 2: if ( ((year % 4 == 0) && !(year % 100 == 0)) || (year % 400 == 0) ) numDays = 29; else numDays = 28; break;
default: System.out.println("Invalid month."); break;
}
Trang 10Lê đình Thanh, Cơ bản về Java
while
while (ựiều_kiện) lệnh/khối_lệnh
Vắ dụ:
int count = 1;
while (count < 11)
{
System.out.println("Count is: " + count);
count++;
}
Chú ý: các lệnh của while cần ựưa ựiều_kiện dần chuyển thành false nếu không vòng lặp sẽ không dừng
do-while
do lệnh/khối_lệnh while (ựiều_kiện);
Vắ dụ:
int count = 1;
do
{
System.out.println("Count is: " + count); count++;
} while (count <= 11);
Chú ý: các lệnh của do-while cần ựưa ựiều_kiện dần chuyển thành false nếu không vòng lặp sẽ không dừng
Trang 11Lê đình Thanh, Cơ bản về Java
for
for (khởi_tạo; ựiều_kiện; lệnh) lệnh/khối lệnh
for(int i=1; i<11; i++)
{
System.out.println("Count is: " + i);
}
Chú ý: lệnh sau ựiều_kiện thường ựược dùng ựể ựưa
ựiều_kiện dần chuyển thành false
Khởi_tạo hay lệnh sau ựiều_kiện có thể là dãy các lệnh cách nhau bởi dấu phẩy (,)
Thay ựổi hoạt ựộng lặp
Trong các cấu trúc lặp (for, while, do-while), sử dụng
break ựể kết thúc lặp
continue ựể bỏ qua vòng lặp hiện tại
Vắ dụ:
int i; boolean foundIt = false;
for (i = 0; i < arrayOfInts.length; i++) {
if (arrayOfInts[i] == searchfor) { foundIt = true; break; } }
String searchMe = "peter piper picked a peck of pickled peppers";
int max = searchMe.length(); int numPs = 0;
for (int i = 0; i < max; i++) {if (searchMe.charAt(i) != 'p') continue; numPs++; }
System.out.println("Found " + numPs + " p's in the string.");
Trang 12Lê đình Thanh, Cơ bản về Java
Một số vắ dụ
Ớ Xem một số chương trình mẫu
Thực hành
Ớ Cài ựặt JDK, NetBeans IDE
Trang 13Lê đình Thanh, Cơ bản về Java
Tiếp theo
Lớp và ựối tượng