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