22/09/13
1
LOGO
Phạm Văn Nam
Mobile: 0904 38 81 82
Email:
Tổng quan về lập trình Java
Giới thiệu ngôn ngữ Java
Các kiểu dữ liệu cơ sở
Các cấu trúc điều khiển
Kiểu mảng và kiểu chuỗi
2
22/09/13
2
Để học:
JAVA là gì?
Lập trình hướng đối tượng với JAVA như thế nào?
Những tài nguyên lập trình nào mà JAVA cung cấp để
hỗ trợ cho lập trình “hiện đại”?
Lập trình mạng với JAVA như thế nào?
Bạn phải có thể thiết kế, viết, gỡ lỗi và chạy các
chương trình JAVA với độ phức tạp “nào đó”
Học thông qua các ví dụ
Mục tiêu môn học
3
Học bằng các ví dụ
Có rất nhiều chương trình ví dụ trong suốt
môn học
Giải thích một ít về các chi tiết về cú pháp
Sẽ có một số slides về cú pháp Java sau khi
chúng ta xem các ví dụ
Bạn sẽ phải đối phó với các vấn đề “thực tế”
về lập trình
Lý do cho các “phương pháp” lập trình sẽ trở
nên rõ ràng hơn khi ta học nhiều hơn
Cách học/dạy suy diễn
4
22/09/13
3
Giới thiệu ngôn ngữ Java
Lịch sử phát triển của Java
Ra đời tại Sun Microsystems bởi James Gosling
1991: Version đầu tiên với tên “Oak”
1995: Tên chính thức là Java
Mục đích của Java
Dùng để phát triển ứng dụng cho các thiết bị điện tử
“thông minh”
Tạo các trang web có nội dung động (web applet)
Hiện nay, Java được sử dụng để phát triển nhiều loại
ứng dụng khác nhau: cơ sở dữ liệu, mạng, Internet,
viễn thông
5
Tại sao JAVA rất được ưa chuộng?
Đa nền
Hướng đối tượng: kiểu tiếp cận lập trình hiện
đại
Vững chắc: tránh được các nét đặc trưng lập
trình mà nó có thể thường gây ra lỗi, cho phép
phục hồi từ các lỗi.
Mẫn cảm với Mạng: dễ dàng cho sự phát triển
các hệ thống phân tán trên mạng TCP/IP.
Nó là miễn phí và có nguồn tư liệu rất tốt.
6
22/09/13
4
Ta cần những gì để phát triển các chương trình Java
Có nhiều môi trường phát triển miễn phí và
thương mại nổi tiếng như:
Ta sẽ dùng công cụ đơn giản nhất như
Notepad và JCreator LE
Ta cần:
Một trình soạn văn bản
Chương trình dịch
Java Virtual Machine (JVM)
The JDK hay SDK
7
Kiến trúc của Java
Java Platform
Java Virtual Machine (Java VM)
Java Application Programming Interface (Java API)
Hardware-Platform
Java VM
Java API
myProgram.java
Java Platform
Mã nguồn
8
22/09/13
5
Kiến trúc của Java
Java Development Kit – JDK
Bộ công cụ phát triển Java (JDK) gồm trình biên dịch,
thông dịch, trợ giúp, soạn tài liệu… và các thư viện
chuẩn
Lập trình viên thường sử dụng các lớp chuẩn để phát
triển ứng dụng.
Ngoài ra còn một số thư viện khác như JSP,
JavaMail, Java TAPI…
1995: Version JDK 1.0
1998: Version JDK 1.2 (Java 2
nd
Platform)
2004: Version JDK 1.5
2006: Version JDK 1.6
…
9
¿Java Virtual Machine là gì?
Là một hệ điều hành mà nó chạy trên một hệ điều
hành khác (Ví dụ: Windows, Linux, MacOS)
Có một JVM khác nhau cho mỗi loại máy nhưng
tất cả chúng hoạt động giống nhau hoàn toàn
Chúng có thể hiểu mã Java đã biên dịch và thông
dịch nó sang các chỉ thị của ngôn ngữ máy
Hardware
Operating System
Java Code
Java Virtual Machines
10
22/09/13
6
¿Ta có thể viết và thực thi những chương trình
Java gì trên một JVM ?
Stand-alone
Một chương trình tự trị (đa phần các chương trình mà ta
sẽ xem xét ở đây)
Chúng được biên dịch với trình biên dịch Java và chạy
với máy ảo Java (JVM)
Applets
Chương trình mà mã của nó được tải xuống trong một
trang web và được thực thi bên trong trình duyệt web
Trình duyệt web phải có một máy ảo Java trong nó để
có thể thực thi các chương trình loại này
11
Servlets:
Các chương trình dùng để mở rộng các khả năng của
web server
Chúng tạo ra các mã HTML cho các trình duyệt liên hệ
với nó
Web server phải có thể chạy được java servlet với máy
ảo Java (ví dụ như TOMCAT)
EjBeans (J2EE)
Các bản/mảnh code (được gọi là beans) chúng được
thực thi bên trong một máy chủ ứng dụng được kết hợp
với một web server. Nó rất giống với servlet nhưng được
quản lý theo một cách khác.
Máy chủ ứng dụng cung cấp các chức năng nâng cao
hiệu năng của máy chủ
¿Ta có thể viết và thực thi những chương trình
Java gì trên một JVM ?
12
22/09/13
7
Viết và chạy một ứng dụng Java độc lập
như thế nào?
MyProg.java
Java source code
Java compiler
(javac)
class {
int i,j;
public main
MyProg.class
Java
Java VM
(java)
13
Ví dụ về các bước để phát triển ứng dụng Java
độc lập
Các bước phát triển:
`
public class Hello {
public static …
}
Hello.java
Biên dịch
Thông dịch
Hello.class
(bytecode)
javac Hello.java
java Hello
01001011
14
22/09/13
8
Điều gì làm cho Java có tính đa nền?
Java compiler (riêng biệt cho mỗi nền)
javac P1.java
P1.java P1.class
Java interpreter (riêng biệt cho mỗi nền) còn được
gọi là Java Virtual Machine hay máy ảo Java
java P1
Program’s
output
15
Công cụ soạn thảo/môi trường phát triển
Notepad
NetBeans
Eclipse
JBuilder
EditPlus
JCreator
…
16
-->