Giới thiệu về Java

1
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

2
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.
3
• 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).
4
• 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.
5
• 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).

6
• Ô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” .^_^.
7
• 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.

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

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

10
• 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.
11
Back
12
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.

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

15
• 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.
16
• 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.
17
• 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.
18
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
19
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 …
20
• Để 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 ….
21
• 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 ….
22
• 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 …
23
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:
24
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
25
• 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);
}
}
26
• 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.

27
• 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:
28
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();
}
}
29
• 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.

30

gioi thieu ve java

  • 1.
  • 2.
    Nội dung • Xuấtsứ • Đặc điểm • Java Development Kit (JDK) • Một số IDE dùng cho Java • Chương trình Java đơn giản 2
  • 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. 3
  • 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). 4
  • 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. 5
  • 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). 6
  • 7.
    • Ông tagiả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” .^_^. 7
  • 8.
    • Khoảng mùaxuâ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. 8
  • 9.
    • Tháng giêngnă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. 9
  • 10.
    II. Đặc điểmcủ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. 10
  • 11.
    • Sự khácnhau ở đâ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. 11
  • 12.
  • 13.
    Một số đặctí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. 13
  • 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. 14
  • 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. 15
  • 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. 16
  • 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. 17
  • 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. 18
  • 19.
    III. Java DevelopmentKit • 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 19
  • 20.
    IV. Intergreted Development Environmentfor 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 … 20
  • 21.
    • Để hiểurõ 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 …. 21
  • 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 …. 22
  • 23.
    • Hướng dẫnthiế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 … 23
  • 24.
    V. Chương trìnhHelloWord • 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: 24
  • 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 25
  • 26.
    • Applet: đâylà 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); } } 26
  • 27.
    • Lưu đoạnmã 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. 27
  • 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: 28
  • 29.
    import java.awt.*; class HelloWorldextends 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(); } } 29
  • 30.
    • Lưu đoạnmã 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. 30