lẬp trÌnh java cƠ bẢn

28
LẬP TRÌNH JAVA CƠ BẢN GV phụ trách: Võ Thị Diễm Hương

Upload: others

Post on 27-Jun-2022

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LẬP TRÌNH JAVA CƠ BẢN

LẬP TRÌNH JAVA CƠ BẢNGV phụ trách: Võ Thị Diễm Hương

Page 2: LẬP TRÌNH JAVA CƠ BẢN

Nội dung học phần:

Chương 1: Giới thiệu tổng quan về ngôn ngữ Java

Chương 2: Nền tảng ngôn ngữ Java

Chương 3: Hướng đối tượng trong Java

Chương 4: Cách đóng gói thư viện và các gói cơ bản

Chương 5: Các dòng nhập xuất

Chương 6: Lập trình GUI với AWT và SWING

Page 3: LẬP TRÌNH JAVA CƠ BẢN

Chương 1: Giới thiệu tổng quan về ngôn ngữ Java

1.1. Vài nét về lịch sử của ngôn ngữ Java

1.2. Các đặc tính của ngôn ngữ Java

1.3. Các dạng ứng dụng của Java

1.4. Máy ảo Java (JVM)

1.5. Bộ công cụ phát triển Java (JDK)

1.6. Thư viện lõi API của Java

Page 4: LẬP TRÌNH JAVA CƠ BẢN

1.1. Vài nét về lịch sử của ngôn ngữ Java

1991, một nhóm kỹ sư của Sun Microsystems,

đứng đầu là James Gosling được giao nhiệm

vụ viết chương trình điều khiển các thiết bị điện

tử (dự án Green).

Nhận thấy ngôn ngữ C++ có những hạn chế:

khi chuyển sang chạy trên một hệ thống máy

có bộ vi xử lý khác thì đòi hỏi phải biên dịch lại.

Green Team quyết định xây dựng một ngôn

ngữ mới nhanh, gọn, hiệu quả, độc lập với thiết

bị dựa trên nền ngôn ngữ C/C++ và đặt tên là

Oak (cây sồi).

Năm 1995 Oak đổi tên chính thức là Java.

Page 5: LẬP TRÌNH JAVA CƠ BẢN

1.1. (tt)

Java là một hòn đảo của Indonesia là nơi

đâu tiên sản xuất ra café cho nên biểu

tượng của Java là ly café.

Ngày 27 tháng 1 năm 2010, Sun bị hãng

Oracle Corporation mua với giá 7,4 tỷ USD.

Một tháng sau đó, Sun được nhập với

Oracle để trở thành Oracle America, Inc.

Oracle đã mô tả họ là "người quản lý công

nghệ Java với cam kết không ngừng bồi

dưỡng một cộng đồng tham gia Java và

minh bạch.”

Page 6: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java

Java có rất nhiều đặc tính, nhưng khoá học này chỉ chỉ giới thiệu 7

đặc tính đặc trưng quan trọng nhất trong Java:

◦ Tính Đơn giản (Simple)

◦ Tính Hướng đối tượng (Object-oriented)

◦ Tính Độc lập nền (platform independent)

◦ Tính Mạnh mẽ (Robust)

◦ Tính Bảo mật (Secured)

◦ Tính Phân tán (Distributed)

◦ Tính Đa luồng (Multithreaded)

Page 7: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính đơn giản

Cấu trúc ngữ pháp được xây dựng trên cơ sở của C++, giúp các

lập trình viên dễ dàng học và làm quen khi đã biết C/C++.

Không sử dụng con trỏ tường minh

Không đa thừa kế

Cấp phát và dọn dẹp bộ nhớ tự động

Page 8: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Hướng đối tượng

Java là Ngôn ngữ hướng đối tượng thuần khiết, không đoạn code

nào của Java nằm bên ngoài phạm vi lớp.

Mọi thứ trong Java đều liên quan đến các đối tượng được định

nghĩa trước.

Page 9: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Độc lập nền

Phương châm “Write once, Run everywhere”: Viết một lần

chạy được mọi nơi.

Chương trình viết trên một nền (platform) và có thể chạy

trên mọi nền có cài máy ảo Java.

Nền tảng Java bao gồm 2 phần :

◦ Runtime Enviroment (JRE)

◦ API (Application programming interface)

Java code có thể chạy trên rất nhiều nền như

Windows, Linux, Sun Solaris, MacOS, …

Page 10: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Mạnh mẽ

Java là một ngôn ngữ mạnh mẽ vì nó hỗ trợ phát triển trên

nhiều nền tảng khác nhau.

Cơ chế cấp phát và dọn dẹp bộ nhớ tự động.

Cơ chế kiểm tra kiểu mạnh – khai báo kiểu tường minh.

Cơ chế xử lí ngoại lệ xây dựng sẵn.

Page 11: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Bảo mật

Java là một ngôn ngữ bảo mật bởi các lý do sau:

◦ Java không yêu cầu khai báo 1 biến là một Con trỏ, thay vào đó nó

sẽ tự hiểu đó có phải là một Con trỏ không.

◦ Tất cả các chương trình viết bằng Java đều chạy trong một máy ảo

Java (JVM).

◦ Bytecode verifier: Kiểm tra và phát hiện mã code có thể truy cập trái

phép vào các đối tượng khác và có thể gây hại cho các đối tượng

đó.

◦ Security Manager: Phát hiện những tài nguyên một Lớp được phép

truy cập.

◦ Kiểm tra giới hạn chỉ số mảng.

Page 12: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Phân tán

Hỗ trợ công nghệ lập trình RMI, CORBA, JavaBean cho phép sử

dụng lại các lớp đã tạo ra, triệu gọi các phương thức hoặc đối

tượng từ một máy ở xa.

Page 13: LẬP TRÌNH JAVA CƠ BẢN

1.2. Các đặc tính của Java – Tính Đa luồng

Một luồng (Thread) giống như một chương trình riêng biệt, có thể

chạy song song cùng lúc.

Đặc điểm quan trọng nhất của đa luồng là việc các luồng có thể

chia sẻ tài nguyên trên hệ thống, giúp chương trình hoạt động

nhanh hơn, tăng hiệu năng cho chương trình và tận dụng hết tài

nguyên của máy.

Page 14: LẬP TRÌNH JAVA CƠ BẢN

14

Desktop applications - J2SE

◦ Phiên bản chuẩn – Java 2 Platform, Standard Edition.

Java Applications: Ứng dụng Java thông thường trên

desktop

Java Applets: Ứng dụng nhúng hoạt động trong trình duyệt

web

1.3. Các dạng ứng dụng của Java

Page 15: LẬP TRÌNH JAVA CƠ BẢN

15

Java Applications:

◦ Chương trình ứng dụng hoàn chỉnh

◦ Giao diện dòng lệnh hoặc đồ họa

◦ Được bắt đầu bởi phương thức main() là phương thức public

static

1.3. Các dạng ứng dụng của Java (tt)

Page 16: LẬP TRÌNH JAVA CƠ BẢN

16

Java Applets:

◦ Được nhúng trong một ứng dụng khác (web browser)

◦ Có giao diện hạn chế (đồ họa)

◦ Không truy cập được tài nguyên của client (không thực hiện

được các hành vi xấu)

1.3. Các dạng ứng dụng của Java (tt)

Page 17: LẬP TRÌNH JAVA CƠ BẢN

17

Server applications - J2EE

◦ Nền tảng Java 2, phiên bản doanh nghiệp - Java 2 Platform,

Enterprise Edition

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

1.3. Các dạng ứng dụng của Java (tt)

Page 18: LẬP TRÌNH JAVA CƠ BẢN

18

Mobile (embedded) applications – J2ME

◦ Phiên bản thu nhỏ - Java 2 Platform, Micro Edition

1.3. Các dạng ứng dụng của Java (tt)

Page 19: LẬP TRÌNH JAVA CƠ BẢN

1.4. Máy ảo Java (JVM) Tất cả các chương trình muốn thực thi được thì phải được biên dịch ra mã

máy.

Mã máy của từng kiến trúc CPU của mỗi máy tính là khác nhau (tập lệnh

mã máy của CPU Intel, CPU Solarix, CPU Macintosh … là khác nhau).

Vì vậy trước đây một chương trình chạy được trên Windows muốn chạy

được trên hệ điều hành khác (như Linux chẳng hạn) thì phải chỉnh sửa và

biên dịch lại.

Ngôn ngữ lập trình Java ra đời, nhờ vào máy ảo Java mà khó khăn nêu trên

đã được khắc phục.

Khi cài đặt JDK cũng có nghĩa là đã cài đặt máy ảo Java (nó có thể được

xem là bộ Thông dịch Java – một phần của bộ JDK)

Máy ảo Java tạo ra một môi trường để thực thi các lệnh bằng cách:

◦ Nạp các file .class

◦ Quản lý bộ nhớ

◦ Dọn “rác”

Page 20: LẬP TRÌNH JAVA CƠ BẢN

1.1. (tt)

Các phiên bản Java đã phát hành:◦ JDK 1.0 công bố: 23 tháng 01, 1996

◦ JDK 1.1 công bố: 19 tháng 2, 1997

◦ J2SE 1.2 công bố: 08 tháng 12, 1998 (Java 2)

◦ J2SE 1.3 công bố: 08 tháng 5, 2000

◦ J2SE 1.4 công bố: 06 tháng 02, 2002

◦ J2SE 1.5 công bố: 30 tháng 9, 2004

◦ Java SE 6 công bố: 11 tháng 12, 2006

◦ Java SE 7 công bố: 28 tháng 7, 2011

◦ Java SE 8 công bố: 18 tháng 3, 2014

◦ Java SE 9 công bố: 21 tháng 9, 2017

◦ Java SE 10 công bố: 20 tháng 3, 2018

◦ Java SE 11

Page 21: LẬP TRÌNH JAVA CƠ BẢN

1.5. Bộ công cụ phát triển Java (JDK)

JDK – Java Development Kit (hay còn gọi là Software Development Kit– SDK):◦ Là một tập hợp những công cụ phần mềm được phát triển bởi Sun Microsystems

dành cho các nhà phát triển phần mềm bằng Java.

Bộ JDK bao gồm:

◦ javac Chương trình dịch chuyển mã nguồn sang bytecode

◦ java Bộ thông dịch cho java

◦ appletviewer Bộ thông dịch cho java applet mà không cần sử dụng trìnhduyệt như Nestcape, FireFox hay IE, v.v.

◦ javadoc Bộ tạo tài liệu dạng HTML từ mã nguồn và chú thích

◦ jdb Bộ gỡ lỗi (java debugger)

◦ javap Trình dịch ngược bytecode

◦ jar Dùng để đóng gói lưu trữ các module viết bằng Java (tạo ra file đuôi.jar), là phương pháp tiện lợi để phân phối những chương trình Java.

Page 22: LẬP TRÌNH JAVA CƠ BẢN

1.5. Bộ công cụ phát triển Java (JDK) -tt

Các phiên bản của JDK:

◦ Các phiên bản của JDK cũng chính là các phiên bản của Java.

Cài đặt JDK:

◦ Download JDK:

http://www.oracle.com/technetwork/java/javase/downloads/index.ht

ml

◦ Chọn bản:

Page 23: LẬP TRÌNH JAVA CƠ BẢN

1.6. Thư viện lõi API của Java

Giao diện lập trình ứng dụng (API), trong ngữ cảnh của Java, là một bộsưu tập các gói, lớp học và giao diện đã được viết sẵn với các phươngthức, trường và nhà xây dựng tương ứng. Tương tự như giao diệnngười dùng, tạo thuận lợi cho sự tương tác giữa con người và máy tính,một API hoạt động như một giao diện chương trình phần mềm tạo điềukiện tương tác.

Trong Java, hầu hết các tác vụ lập trình cơ bản được thực hiện bởi cáclớp và gói của API, giúp giảm thiểu số dòng được viết bằng các mẩumã.

Bộ phát triển Java (JDK) bao gồm ba thành phần cơ bản, như sau:◦ Trình biên dịch Java

◦ Máy ảo Java (JVM)

◦ Giao diện lập trình ứng dụng Java (API)

Page 24: LẬP TRÌNH JAVA CƠ BẢN

1.6. Thư viện lõi API của Java

API là một thư viện các lớp, gói và giao diện Java có sẵn. Ba loại

API như sau:

◦ Chính thức Java lõi API, được kèm với tải về JDK

◦ API Java chính thức tùy chọn, có thể được tải xuống nếu cần

◦ Các API không chính thức, là các API của bên thứ ba có thể được tải

xuống từ các trang web nguồn

Tham khảo: http://v1study.com/java-cac-api-cua-java-ee.html

Page 25: LẬP TRÌNH JAVA CƠ BẢN

Hướng dẫn cài đặt:

http://kienthucandroid.blogspot.com/2013/07/gioi-thieu-va-cai-at-jdk-

eclipse-plugin.html

https://o7planning.org/vi/10379/huong-dan-cai-dat-va-cau-hinh-eclipse

https://anphanhv.wordpress.com/2015/03/23/cai-dat-moi-truong-lap-trinh/

https://freetuts.net/huong-dan-cai-dat-cau-hinh-va-thiet-lap-bien-moi-truong-

cho-java-1024.html

https://tiendv.wordpress.com/2011/10/11/h%C6%B0%E1%BB%9Bng-

d%E1%BA%ABn-cai-d%E1%BA%B7t-va-c%E1%BA%A5u-hinh-

l%E1%BA%ADp-trinh-j2ee-tren-eclipse-va-netbeans/

Page 26: LẬP TRÌNH JAVA CƠ BẢN

Các bước cài đặt:

B1: Cài đặt Java (JDK+JRE)

B2: Cài đặt IDE – môi trường lập trình (Eclipse/ Netbeans/...)

B3: Thiết lập biến môi trường (https://freetuts.net/huong-dan-cai-

dat-cau-hinh-va-thiet-lap-bien-moi-truong-cho-java-1024.html)

nếu cần.

Page 27: LẬP TRÌNH JAVA CƠ BẢN

Xem hướng dẫn viết chương trình Java đơn giản

https://choimobile.vn/threads/bai-2-cau-truc-mot-chuong-trinh-

java-co-ban-va-chay-chuong-trinh-dau-tien.37022/

Page 28: LẬP TRÌNH JAVA CƠ BẢN