Lập trình Java Lập trình Java
Chương 1: Giới thiệu tổng quan Java Chương 1: Giới thiệu tổng quan Java
GVLT: Trần Anh Dũng
1
Nội dung Nội dung
2
(cid:1) Giới thiệu về lịch sử của Java (cid:1) Một số ñặc tính của Java (cid:1) Kiến trúc Java (cid:1) JVM – Máy ảo Java (cid:1) Các loại chương trình Java (cid:1) Một số IDE dùng cho Java (cid:1) Chương trình Java ñầu tiên
Lịch sử phát triển Lịch sử phát triển
(cid:1) 1991: Sun Microsystems phát triển OAK nhằm mục ñích viết phần mềm ñiều khiển (phần mềm nhúng) cho các sản phẩm gia dụng.
(cid:1) 1995: Internet bùng nổ, phát triển mạnh. Sun phát triển
OAK và giới thiệu ngôn ngữ lập trình mới tên Java
3
(cid:1) Java là ngôn ngữ hướng ñối tượng tựa C, C++
Lịch sử phát triển Lịch sử phát triển
(cid:1) Hiện nay, ñược chấp nhận rộng rãi với tư cách là một
(cid:1) Khả chuyển, an toàn
(cid:1) Hướng ñối tượng, hướng thành phần
ngôn ngữ (công nghệ) ña dụng
(cid:1) Tính uyển chuyển của java do chương trình biên dịch tạo ra mã byte (bytecodes) không phụ thuộc hệ thống máy sử dụng.
4
(cid:1) Bytecodes là tập hợp các câu lệnh tương tự như lệnh mã máy (machine code), nó ñược tạo ra khi một chương trình Java ñược biên dịch xong.
Một số ñặc tính của Java Một số ñặc tính của Java
(cid:1) Java có tính ñộc lập với kiến trúc không phụ thuộc vào
hệ máy (platform – loại máy và hệ ñiều hành).
(cid:1) Java ñược kế thừa từ C++, và ñược loại bỏ ñi các tính
năng khó nhất của C++ (cid:2) java “dễ sử dụng hơn”.
(cid:1) Ngôn ngữ hướng ñối tượng: Các lớp của Java cũng rất
linh hoạt và ñược sử dụng lại nhiều lần.
5
(cid:1) Java có sẵn tính năng “automatic garbage collection” – bộ nhớ ñược giải phóng một cách tự ñộng, nhờ ñó lập trình viên có thể tránh ñược những “hư hỏng” bộ nhớ và bảo ñảm tính toàn vẹn dữ liệu.
Một số ñặc tính của Java Một số ñặc tính của Java
J a v a
I
t
J a v a C o m p
i l
e r ( j a v a c )
n e r p r e t e r ( j a v a )
6
(cid:1) Java là ngôn ngữ thông dịch (Interpreted): ñây là ñặc ñiểm liên quan trực tiếp ñến tính không phụ thuộc vào hệ máy của Java.
Một số ñặc tính của Java Một số ñặc tính của Java
(cid:1) ða luồng (Multithreaded): Trình ứng dụng của java
(cid:1) Tính ña luồng của Java cho phép ta có thể xây dựng phần mềm ñáp ứng tốt hơn, tương tác tốt hơn, và thực hiện theo thời gian thực. (cid:1) Java là một công nghệ, Java bao gồm:
(cid:1) Ngôn ngữ lập trình
(cid:1) Môi trường phát triển
(cid:1) Môi trường thực thi và triển khai
7
thường bao gồm nhiều quá trình xảy ra ñồng thời.
Các chương trình dịch truyền thống Các chương trình dịch truyền thống
8
Chương trình dịch của Java Chương trình dịch của Java
9
Quá trình dịch chương trình Java Quá trình dịch chương trình Java
(cid:1) Trình biên dịch chuyển mã nguồn thành tập các lệnh
không phụ thuộc vào phần cứng cụ thể.
(cid:1) Trình thông dịch trên mỗi máy chuyển tập lệnh này thành
chương trình thực thi
(cid:1) Máy ảo tạo ra một môi trường ñể thực thi các lệnh bằng
(cid:1) Nạp các file .class
(cid:1) Quản lý bộ nhớ
(cid:1) Dọn “rác”
10
cách:
Cách thi hành một chương trình Java Cách thi hành một chương trình Java
11
Kiến trúc của Java Kiến trúc của Java
(cid:1) Java Virtual Machine (Java VM) (cid:1) Java Application Programming Interface (Java API)
myProgram.java
Mã nguồn
Java Platform
Java API Java Virtual Machine
Hardware-Platform
12
(cid:1) Java Platform
Kiến trúc của Java Kiến trúc của Java
13
Máy ảo Java JVM –– Máy ảo Java JVM
(cid:1) Là phần mềm dựa trên cơ sở máy tính ảo. (cid:1) Có thể xem như 1 hệ ñiều hành thu nhỏ. (cid:1) Cung cấp môi trường thực thi cho chương trình java (ñộc
lập nền)
(cid:1) Phần cứng máy tính bên dưới
(cid:1) Hệ ñiều hành
(cid:1) Mã ñã biên dịch
(cid:1) Hình thành 1 lớp trừu tượng:
14
(cid:1) Chương trình java chỉ chạy khi có JVM
Các dạng ứng dụng của Java Các dạng ứng dụng của Java
(cid:1) Phiên bản chuẩn – Java 2 Platform, Standard Edition.
(cid:1) Desktop applications - J2SE
(cid:3) Java Applications: Ứng dụng Java thông thường
trên desktop
(cid:3) Java Applets: Ứng dụng nhúng hoạt ñộng trong
15
trình duyệt web
Các dạng ứng dụng của Java Các dạng ứng dụng của Java
(cid:1) Chương trình ứng dụng hoàn chỉnh
(cid:1) Giao diện dòng lệnh hoặc ñồ họa
(cid:1) ðược bắt ñầu bởi phương thức main() là phương thức
(cid:1) Java Applications:
16
public static
Các dạng ứng dụng của Java Các dạng ứng dụng của Java
(cid:1) ðược nhúng trong một ứng dụng khác (web browser)
(cid:1) Có giao diện hạn chế (ñồ họa)
(cid:1) Không truy cập ñược tài nguyên của client (không thực
(cid:1) Java Applets:
17
hiện ñược các hành vi xấu)
Các dạng ứng dụng của Java Các dạng ứng dụng của Java
(cid:1) Nền tảng Java 2, phiên bản doanh nghiệp - Java 2
(cid:1) Server applications - J2EE
(cid:1) Chạy trên máy chủ lớn với sức mạnh xử lý và dung lượng bộ nhớ lớn, hỗ trợ gắn liền với servlet, jsp và XML.
18
Platform, Enterprise Edition
Các dạng ứng dụng của Java Các dạng ứng dụng của Java
(cid:1) Phiên bản thu nhỏ - Java 2 Platform,
(cid:1) Mobile (embedded) applications – J2ME
19
Micro Edition
Một số công cụ phát triển Một số công cụ phát triển
(cid:1) Java Studio của Sun
(cid:1) Borland Jbuilder của Borland
(cid:1) Eclipse của IBM
(cid:1) Jceator của Xinor
(cid:1) EditPlus
(cid:1) ……
20
(cid:1) Giúp phát triển ứng dụng nhanh chóng và hiệu quả hơn (cid:1) ðơn giản hóa quá trình phát triển phần mềm (cid:1) Gồm 1 bộ soạn thảo mã nguồn
Java Development Kit JDK –– Java Development Kit JDK
(cid:1) Môi trường phát triển và thực thi do Sun Microsystems
cung cấp (http://java.sun.com)
(cid:1) Bao gồm phần mềm và công cụ giúp compile, debug và
(cid:1) JDK 1.1 (cid:1) JDK 1.2
execute ứng dụng. (cid:1) JDK 1.0 1996
(cid:1) JDK 1.3 (cid:1) Java 1.4 (cid:1) Java 5 (1.5) (cid:1) Java 6
1997 1998
21
2000 2002 2004 2006
Java Development Kit JDK –– Java Development Kit JDK
(cid:1) Cú pháp: javac [option] source
(cid:1) Các option:
(cid:1) javac: Compiler used to compile Java source code
22
(cid:3) -classpath (cid:3) -d (cid:3) -g (cid:3) -o (cid:3) -verbose
Java Development Kit JDK –– Java Development Kit JDK
(cid:1) Cú pháp: java [option] classname [arguments]
(cid:1) Các option:
(cid:1) java: Bộ thông dịch, thực thi java application
23
(cid:3) -classpath (cid:3) -Dname name (cid:3) -help (cid:3) -v hoặc –verbose (cid:3) -X
Java Development Kit JDK –– Java Development Kit JDK
(cid:1) Bộ thông dịch, thực thi java applet mà không cần sử
(cid:1) Appletviewer:
dụng trình duyệt như Nestcape, hay IE, v.v.
(cid:1) Bộ tạo tài liệu dạng HTML từ mã nguồn và chú thích
(cid:1) Javadoc:
(cid:1) Bộ gỡ lỗi (java debuger)
(cid:1) Jdb:
(cid:1) Trình dịch ngược bytecode
24
(cid:1) Javap:
Chương trình Java ñầu tiên Chương trình Java ñầu tiên
Ví dụ 1: HelloWorld.java
ðịnh nghĩa lớp tên “HelloWorld”
public class HelloWorld {
Bắt ñầu ñoạn lệnh
Phương thức main
public static void main(String[] args) {
System.out.println("Hello World!");
}//end method
Xuất ra Console thông báo
}//end class
Kết thúc ñoạn lệnh
Hello World!
25
Biên dịch và chạy chương trình Biên dịch và chạy chương trình
(cid:1) javac HelloWorld.java (cid:1) Nếu không có lỗi sẽ tạo ra file HelloWorld.class
(cid:1) Biên dịch chương trình sang mã bytecode:
(cid:1) Thông dịch (thực thi): (cid:1) java HelloWorld
(cid:1) Lưu ý: Phải khai báo ñường dẫn chỉ ñến thư mục cài ñặt
java, và thư mục chứa các class cần thực thi Ví dụ:
26
C:\> set path=C:\jdk1.5\bin\ C:\> set classpath = D:\BTJava\
Chương trình Java ñầu tiên Chương trình Java ñầu tiên
Ví dụ 2: HelloWorld2.java public class HelloWorld2 {
public static void main(String[] args) {
System.out.print(“Welcome to "); System.out.println(“Java programming!");
}//end method
}//end class
System.out.print keeps the cursor on the same line, so System.out.println continues on the same line.
Welcome to java programming!
27
Chương trình Java ñầu tiên -- Jcreator Chương trình Java ñầu tiên Jcreator
28
Chương trình Java ñầu tiên -- Jcreator Chương trình Java ñầu tiên Jcreator
29
Chương trình Java ñầu tiên -- Jcreator Chương trình Java ñầu tiên Jcreator
30
Hỏi & ñáp Hỏi & ñáp
31