30
1 Giới thiệu về Java

Gioi thieu ve_java

Embed Size (px)

DESCRIPTION

Giới thiệu về JaVa

Citation preview

Page 1: Gioi thieu ve_java

1

Giới thiệu về Java

Page 2: Gioi thieu ve_java

2

Nội dung

• Xuất sứ

• Đặc điểm

• Java Development Kit (JDK)

• Một số IDE dùng cho Java

• Chương trình Java đơn giản

Page 3: Gioi thieu ve_java

3

I. Xuất sứ

• Java là một ngôn ngữ lập trình mới do một nhóm các nhà khoa học của hãng Sun Microsystems sáng tạo nên.

• Java đặc biệt hướng đối tượng và rất mạnh về Internet.

• Lịch sử Java bắt đầu từ 4/1991, khi một nhóm lập trình của Sun được giao nhiệm vụ thực hiện đề án với tên gọi Green.

Page 4: Gioi thieu ve_java

4

• Green là đề án nhằm đưa các kỹ thuật tin học vào những thiết bị điện tử thương mại, như một cuộc đột phá về kỹ thuật, qua đó duy trì tốc độ phát triển và lợi nhuận của hãng.

• Lãnh đạo đề án là James Gosling quyết định cần có một ngôn ngữ thỏa mãn tính uyển chuyển (portability).

Page 5: Gioi thieu ve_java

5

• Lúc đó có ngôn ngữ C++ tỏ ra khá uyển chuyển nhưng vẫn chưa đáp ứng được yêu cầu của đề án.

• Bởi vì, tính uyển chuyển ở đây không những về phía mã nguồn chương trình mà còn cả với bộ xử lý. Trong khi đó các thiết bị điện tử thương mại có những bộ xử lý khác nhau và vòng đời ngắn.

Page 6: Gioi thieu ve_java

6

• Nếu sử dụng ngôn ngữ C++, khi gặp một bộ xử lý mới cần phải thay đổi chương trình dịch, rồi biên dịch lại chương trình.

• Ngoài ra C++ là ngôn ngữ khá phức tạp

• Tháng 8/1991, J.Gosling bắt tay vào việc thiết kế ra một ngôn ngữ mới và đặt tên là Oak /ouk/ (Cây sồi).

Page 7: Gioi thieu ve_java

7

• Ông ta giải thích cách đặt tên cho ngôn ngữ mới này là cây sồi bởi vì trong quá trình đưa vào cấu trúc thư mục cho ngôn ngữ mới, ông nhìn qua cửa sổ phòng làm việc và thấy cây sồi.

• Ban đầu Oak không được quan tâm đến, thậm chí có người còn giải thích Oak là viết tắt của các chữ cái trong cụm “Object Application Kernel” .^_^.

Page 8: Gioi thieu ve_java

8

• Khoảng mùa xuân 1994, khi các nhà lãnh đạo của Sun Microsystems hoạch định các chính sách thương mại liên quan đến Internet, Oak mới được chú ý đến.

• Sau đó, J.Gosling cùng một số đồng nghiệp đã âm thầm làm việc để đưa Oak đến với Internet trong gần một năm trời.

Page 9: Gioi thieu ve_java

9

• Tháng giêng năm 1995, Oak được đổi tên thành Java.

• Nguyên nhân chính là do Oak đã trùng tên với một sản phẩm thương mại đã đăng kí bản quyền.

• Ngày 23/5/1995, Java được Sun chính thức công bố ở Sun World’95.

Page 10: Gioi thieu ve_java

10

II. Đặc điểm của Java

• 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.

• Bytecodes là tập hợp các câu lệnh tương tự như nhứng 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.

Page 11: Gioi thieu ve_java

11

• Sự khác nhau ở đây là mã máy chỉ thực hiện trên hệ thống máy tính mà nó được biên dịch, trong khi bytecodes có thể thực hiện trên bất kỳ hệ thống nào có trang bị trình điều khiển Java (JVM, thông dịch).

• Tính uyển chuyển đó làm tăng khả năng tái sử dụng của các lớp đã tạo ra, tức là làm nổi bật tính hướng đối tượng.

Page 12: Gioi thieu ve_java

12Back

SourceCode Java

(*.java)

Win9x/WinNT ...

Linux/Unix...

BytecodesJava

(*.class)

Ja

va

Co

mp

iler (ja

va

c)

Ja

va

Inte

rpre

ter (ja

va

)

Win32

Linux

Solaris

….

Page 13: Gioi thieu ve_java

13

Một số đặc tính của Java do Sun đưa ra

• Java là đơn giản (simple): 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++, dẫn đến java dễ sử dụng hơn. Do yêu cầu của công việc, java phải có dáng vẻ như các ngôn ngữ hiện hành và đòi hỏi thời gian huấn luyện ngắn.

Page 14: Gioi thieu ve_java

14

• Java hướng đối tượng (Object Oriented): Ví dụ về đồ chơi của trẻ em, sản phẩm của lập trình hướng cấu trúc là một tòa lâu đài bằng nhựa liền (đúc thành), nếu đứa trẻ muốn có một chiếc ôtô nhựa thì… Tóm lại, giống như những khối Lego, 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.

Page 15: Gioi thieu ve_java

15

• Java là mạnh (robus): 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.

Page 16: Gioi thieu ve_java

16

• Java có tính độc lập với cấu trúc (architechture neutral): đây là điểm đặc sắc nhất của java, có nghĩa là java không phụ thuộc vào hệ máy (platform – loại máy và hệ điều hành).

• Java có tính di động (portable): khả năng độc lập hệ máy giúp java có thể di chuyển trên phạm vi rộng. Các loại giao diện dữ liệu cũng như dáng vẻ và cảm nhận của java đều giống nhau trên mọi hệ máy. Hệ thống các thành phần của java cũng có tính di động cao – chúng được viết bằng java.

Page 17: Gioi thieu ve_java

17

• 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. (sơ đồ).

• Java là tốc độ cao (hight performance): Các dự án của java thường được tách thành nhiều module, nhờ vậy tốc độ thực thi thường rất cao.

Page 18: Gioi thieu ve_java

18

• Java là đa luồng (Multithreaded): trình ứng dụng của java thường bao gồm nhiều quá trình xảy ra đồng thời. Tính đa luồng của Java cho phép ta có thể biên soạn 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.

• Java có tính động (dynamic): vì java được thiết kế để đáp ứng môi trường tác nghiệp luôn trong tình trạng thay đổi. Khi có yêu cầu mới trên thị trường, các đối tượng mới sẽ được bổ sung.

Page 19: Gioi thieu ve_java

19

III. Java Development Kit• Có hai chương trình cơ bản thường dùng:

- Khi biên dịch một chương trình viết bằng java :

javac file.java

- Sau khi biên dịch, tập tin file.class được sinh ra, để thực thi chương trình, đối với ứng dụng thông thường ta sử dụng :

java file

Đối với các Applet ta sử dụng :

appletviewer file.java

hoặc appletviewer file.htm

Page 20: Gioi thieu ve_java

20

IV. Intergreted Development Environment for Java

• Cài đặt java : Download J2SE (JavaTM 2 Platform Standard Edition Development Kit 5.0) và cài đặt vào hệ thống đang sử dụng. Đối với WinNT J2SE bao gồm 2 phần, đó là JRE và JDK. Tiến hành cài đặt JDK, sau đó cài JRE.

• Một số IDE thông dụng của Java như: JPadPro, SitePadPro, NetBeans, JBuilder, Eclipse …

Page 21: Gioi thieu ve_java

21

• Để hiểu rõ bản chất của chương trình Java, trước hết nên thử không cần sử dụng IDE để dịch và chạy java, hoặc có thể sử dụng SitePadPro, hay JPadPro … là những IDE đơn giản hỗ trợ java.

• Những phần mềm này làm việc trong môi trường Windows, có thể download tại địa chỉ http://www.modelworks.com. Hướng dẫn cài đặt và sử dụng JPadPro 5.1 ….

Page 22: Gioi thieu ve_java

22

• Bên cạnh đó ta có thể sử dụng một số công cụ chuyên dụng để thiết kế chương trình Java như: NetBeans Developer của Sun (http://www.netbeans.com); JBuider của Borland Inprise (http://www.Inprise.com)

• IDE của java được đánh giá là thuận tiện nhất hiện nay là Eclipse (http://www.eclipse.org)

• Hướng dẫn sử dụng Eclipse ….

Page 23: Gioi thieu ve_java

23

• Hướng dẫn thiết lập Path cho hệ thống: thêm vào đường dẫn tuyệt đối của thư mục bin của java cho biến môi trường Path của WinNT, hoặc cho tệp Autoexe.bat của Win9x ….

• Hướng dẫn cấu hình Java để trình duyệt có thể xem được các Applet của java: Vào Control Panel > Java > Advanced …

Page 24: Gioi thieu ve_java

24

V. Chương trình HelloWord

• Java có nhiều loại ứng dụng khác nhau, bao gồm: Console, Applet, Frame, Servelet …

• Console là loại ứng dụng đơn giản nhất của Java (chưa có khai báo đặc biệt, hay sử dụng các thư viện). Đoạn mã sau là chương trình mở đầu của ứng dụng Console:

Page 25: Gioi thieu ve_java

25

public class HelloWorld {public static void main(String[] args) {

System.out.println(“Hello World”);}

}• Chú ý java phân biệt chữ hoa với chữ thường. Lưu đoạn

mã trên vào file có tên là HelloWorld.java, lưu ý tên file phải trùng với tên lớp (có phân biệt kiểu chữ), và phần mở rộng của nó là *.java

• Mở cửa sổ DOS, tìm tới thư mục chứa file trên, dịch chương trình bằng lệnh javac, rồi chạy nó bằng lệnh java

Page 26: Gioi thieu ve_java

26

• Applet: đây là loại ứng dụng rất mạnh của java trên lĩnh vực Internet, đây là chương trình HelloWorld của nó: //<applet code=HelloWorld width=200 height=200></applet>

import java.applet.Applet;

import java.awt.Graphics;

public class HelloWorld extends Applet {public void paint(Graphics g) {

g.drawString(“HelloWorld!”,5, 15);

}

}

Page 27: Gioi thieu ve_java

27

• Lưu đoạn mã trên vào file HelloWorld.java, sau đó vào DOS biên dịch nó bằng lệnh java

• Để chạy Applet, ta có hai cách:

- Dùng trình appletviewer:

appletvieuwer HelloWorld.java

- Chạy qua trình duyệt bằng cách tạo một file *.htm.

Page 28: Gioi thieu ve_java

28

• Frame - ứng dụng đồ họa: java có thư viện AWT (Abstract Windowing Toolkit) cung cấp tương đối đầy đủ các thành phần GUI như button, label … Ở mức nâng cao, java còn có JFC (Java Foundation Class). Frame là một ứng dụng độc lập (giống form trong C#), nó hoạt động như một Container hay như một thành phần (Component). Sau đây là một ứng dụng Frame đơn giản:

Page 29: Gioi thieu ve_java

29

import java.awt.*;class HelloWorld extends Frame {

Label label1 = new Label(“HelloWorld !”);public HelloWorld(String title) {

super(title);add(label1);

}public static void main(String args[]) {

HelloWorld f = new HelloWorld(“Label”);f.setSize(300,200);f.show();

}}

Page 30: Gioi thieu ve_java

30

• Lưu đoạn mã vừa soạn thảo trên vào file

HelloWorld.java, sau đó dùng javac để

biên dịch nó, rồi dùng java để thông dịch.

Kết quả sẽ là một Frame có dòng chữ

HelloWorld.