Tải bản đầy đủ (.pdf) (8 trang)

baigiangjava2008 5883

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.05 MB, 8 trang )

1


MỤC LỤC
MỤC LỤC........................................................................................................................................2
Đề tài 0. Giới thiệu về Java............................................................................................................7
I. Lịch sử hình thành và phát triển ngơn ngữ lập trình Java.......................................................7
I.1. Giới thiệu về Java.............................................................................................................7
I.2 Tóm tắt lịch sử hình thành của Java ................................................................................. 7
II. Các đặc trưng của Java...........................................................................................................8
II.1. Tính đơn giản...................................................................................................................8
II.2. Tính hướng đối tượng..................................................................................................... 8
II.3. Tính phân tán.................................................................................................................... 8
II.4. Tính mạnh mẽ..................................................................................................................8
II.5. Tính an tồn...................................................................................................................... 8
II.6. Tính trung lập...................................................................................................................9
II.7. Tính di động..................................................................................................................... 9
II.8. Tính thơng dịch...............................................................................................................10
II.9. Tính thực thi cao.............................................................................................................10
II.10. Tính đa luồng................................................................................................................10
II.11. Tính động .....................................................................................................................10
III. Các loại ứng dụng của Java................................................................................................10
IV. Công cụ và môi trường lập trình Java................................................................................ 10
V. Cài đặt Java ..........................................................................................................................11
Đề tài 1. Ngơn ngữ mơ hình hóa UML......................................................................................... 14
I. Xây dựng hệ thống phần mềm theo hướng đối tượng........................................................14
I.1 Các khái niệm căn bản của công nghệ hướng đối tượng.............................................. 14
I.2 Quy trình chung phát triển hệ thống phần mềm.............................................................15
I.3 Những thách thức của ngành công nghiệp phần mềm hiện nay....................................15
II. Lịch sử phát triển ngơn ngữ mơ hình hóa UML...................................................................15
II.1. Tóm tắt lịch sử UML..................................................................................................... 15


II.2. Khái niệm về UML........................................................................................................16
II.3 Đặc trưng của UML........................................................................................................16
III. Ngôn ngữ UML....................................................................................................................17
III.1. Các thành phần của UML.............................................................................................17
III.2. Các hướng nhìn (view)..................................................................................................18
III.3 Ứng dụng UML trong quy trình làm phần mềm.......................................................... 25
IV. Quy trình Rational Unified Process (RUP) phát triển phần mềm dựa trên UML..............27
IV.1. Giới thiệu về RUP........................................................................................................27
IV.2. Các ngun tắc chính của RUP:...................................................................................27
IV.3. Vịng đời của phần mềm theo quy trình RUP.............................................................27
IV.4. Các cơng cụ của RUP...................................................................................................29
Bài tập........................................................................................................................................29

2


Đề tài 2. Nhập môn Java...............................................................................................................30
I. Viết và thực hiện một chương trình Java ............................................................................ 30
I.1 Tìm hiểu mã nguồn một chương trình đơn giản............................................................ 30
I.2. Thực hiện chương trình Java.......................................................................................... 30
I.3. Một số chú ý khi lập trình Java.......................................................................................31
I.4. Cấu trúc một chương trình Java..................................................................................... 31
II. Các kiểu dữ liệu trong Java..................................................................................................32
II.1 Các kiểu dữ liệu số nguyên............................................................................................32
II.2 Các kiểu số thực............................................................................................................. 33
II.3 Kiểu ký tự (character).....................................................................................................33
II.4 Kiểu logic (boolean)........................................................................................................33
II.5 Kiểu chuỗi.......................................................................................................................33
II.6 Chuyển đổi giữa các kiểu số..........................................................................................33
III. Khai báo biến và hằng trong Java.......................................................................................34

III.1 Quy tắc đặt tên biến......................................................................................................34
III.2 Khai báo biến................................................................................................................. 34
III.3 Biến kiểu mảng.............................................................................................................35
III.4 Hằng số (literal).............................................................................................................36
III.5 Phạm vi hoạt động của hằng và biến:......................................................................... 37
IV. Các toán tử và biểu thức..................................................................................................... 37
IV.1 Các toán tử và thứ tự ưu tiên.........................................................................................37
IV.2 Biểu thức....................................................................................................................... 38
V. Các lệnh điều khiển rẽ nhánh..............................................................................................39
V.1 Lệnh if.............................................................................................................................39
V.2. Lệnh switch …case........................................................................................................ 39
VI. Các lệnh lặp.........................................................................................................................40
VI.1. Vòng lặp for..................................................................................................................40
VI.2. Vòng lặp while..............................................................................................................41
VI.3. Vòng lặp do... while......................................................................................................42
VI.4. Phép nhảy......................................................................................................................42
VII. Vào dữ liệu từ bàn phím và xuất dữ liệu ra màn hình..................................................... 43
VII.1. Lấy giá trị nhập vào từ bàn phím............................................................................... 43
VII.2 Kết xuất dữ liệu ra màn hình..................................................................................... 44
Bài tập........................................................................................................................................45
Đề tài 3. Lập trình hướng đối tượng trong Java.......................................................................... 47
I. Khái niệm lập trình hướng đối tượng (Object-Oriented Programming - OOP)...................47
I.1. Khái niệm OOP............................................................................................................... 47
I.2 Cơ sở lý luận của OOP....................................................................................................47
I.3 Trừu tượng hóa.................................................................................................................47
II. Tính đóng gói trong Java....................................................................................................... 49
II.1 Khái niệm tính đóng gói..................................................................................................49
II.2 Mối quan hệ giữa các class.............................................................................................49
II.3 Một số gợi ý khi thiết kế class.......................................................................................49
IV. Sử dụng các Class xây dựng sẵn trong thư viện................................................................50

V. Xây dựng Class trong Java....................................................................................................51
V.1 Cấu trúc của class...........................................................................................................51
V.2 Các thuộc tính thành phần:............................................................................................. 52
3


V.3 Các phương thức thành phần......................................................................................... 53
V.4 Gọi và truyền tham số cho phương thức.......................................................................54
V.6 Các hàm và phương thức đặc biệt................................................................................. 54
V.7 Khai báo chồng các phương thức...................................................................................55
V.8 Lớp lồng nhau – lớp nội.................................................................................................56
VI. Tính kế thừa trong Java.......................................................................................................57
VI.1 Sự kế thừa các thuộc tính và phương thức.................................................................. 57
VI.2 Sự kế thừa đối với các constructor...............................................................................60
VII. Tính đa hình trong Java.......................................................................................................61
VII.1 Sự ép kiểu và gán tham chiếu đối tượng....................................................................61
VII.2 Sự ràng buộc động –Dynamic Binding .......................................................................62
VIII. Lớp Object.........................................................................................................................63
IX. Giao diện..............................................................................................................................63
IX.1 Cấu trúc của giao diện..................................................................................................63
IX.2 Các tính chất của giao diện...........................................................................................65
X. Package..................................................................................................................................65
X.1 Sử dụng các package trong thư viện Java......................................................................65
X.2 Đặt lớp vào package....................................................................................................... 66
Bài tập........................................................................................................................................66
Đề tài 4. Lớp và phương thức trừu tượng....................................................................................68
I. Khái niệm lớp trừu tượng......................................................................................................68
II. Cài đặt lớp và phương thức trừu tượng trong Java.............................................................68
Bài tập........................................................................................................................................69
Đề tài 5. Lưu trữ và xử lý đối tượng............................................................................................70

I. Lớp Vector và giao diện Enumeration...................................................................................70
I.1 Lớp Vector........................................................................................................................70
I.2 Giao diện Enumeration.....................................................................................................71
II. Mảng trong Java và lớp ArrayList........................................................................................73
II.1 Mảng trong Java..............................................................................................................73
II.2. Các thuật toán cơ bản trên mảng.................................................................................. 74
II.3 Class Arrays.....................................................................................................................75
III Danh sách trong java và giao diện Lists ..............................................................................77
Bài tập........................................................................................................................................78
Đề tài 6. Các luồng vào ra dữ liệu với file...................................................................................79
I. Khái niệm luồng vào ra (I/O stream).....................................................................................79
II. Lớp InputStream:...................................................................................................................80
III. Lớp OutputStream................................................................................................................81
IV. Lớp FileInputStream............................................................................................................81
V. Lớp FileOutputStream...........................................................................................................81
VI. Lớp File................................................................................................................................81
VII. Nhập xuất lọc ................................................................................................................... 83
VII.1 Lớp FilterInputStream: ................................................................................................ 83
VII.2 Lớp FilterOutputStream................................................................................................83
VIII. Vào/ra có sử dụng bộ đệm ..............................................................................................83
VIII.1 Lớp BufferedInputStream:.......................................................................................... 83
VIII.2 Lớp BufferedOutputStream.........................................................................................83
IX. Lớp RandomAccessFile ......................................................................................................86
4


X. Đối tượng System.in.............................................................................................................86
XI. Truy cập file ở chế độ tuần tự...........................................................................................86
XII. Truy cập file nhị phân........................................................................................................ 90
Bài tập .......................................................................................................................................91

Đề tài 7. Xử lý ngoại lệ................................................................................................................ 92
I. Các tình huống sử dụng ngoại lệ.......................................................................................... 92
II. Cơ sở quản lý ngoại lệ trong Java.......................................................................................92
III. Cấu trúc cây kế thừa các xử lý ngoại lệ............................................................................93
IV. Sử dụng ngoại lệ được kiểm soát......................................................................................94
V. Xây dựng một ngoại lệ........................................................................................................95
VI. Bài tập..................................................................................................................................96
Đề tài 8. Xử lý các sự kiện trong Java..........................................................................................97
I. Khái niệm và cơ sở xử lý sự kiện.........................................................................................97
II. Truy cập thông tin sự kiện................................................................................................. 103
III. Xử lý các sự kiện trên window......................................................................................... 104
IV. Các lớp thích nghi..............................................................................................................105
V. Xử lý các sự kiện chuột..................................................................................................107
Bài tập......................................................................................................................................108
Đề tài 9. Applet............................................................................................................................109
I. Xây dựng một Applet đơn giản...........................................................................................109
II. Cấu trúc cơ bản và vòng đời của một Applet................................................................... 109
III. An ninh và khả năng của Applet....................................................................................... 111
IV. Ứng dụng Applet với của sổ Popup................................................................................. 111
V. Các thẻ HTML của Applet................................................................................................. 112
VI. Các phương thức, lập trình đồ họa và bắt sự kiện của applet........................................113
Đề tài 10. Lập trình giao diện đồ họa GUI................................................................................115
I. Giới thiệu AWT .................................................................................................................. 115
II. Vật chứa (Container).......................................................................................................... 116
II.1 JFrame............................................................................................................................116
II.2 JPanel............................................................................................................................. 116
II.3 JDialog...........................................................................................................................117
II.4 JScrollPane.....................................................................................................................119
III. Giới thiệu về các thành phần GUI cơ bản.......................................................................119
III.1 Nút nhấn ......................................................................................................................119

III.2 Nhãn (Label).................................................................................................................119
III.3 Nút đánh dấu (checkbox).............................................................................................121
III.4 Nút chọn (radio button)................................................................................................123
III.5 Hộp thoại Combo ....................................................................................................... 123
III.6 Danh sách (Lists)..........................................................................................................124
III.7 Ô văn bản (text field) và vùng văn bản (text areas).................................................... 126
III.8 Thanh trượt (Scrollbar)................................................................................................ 129
IV. Thành phần Menu..............................................................................................................130
V. Bộ quản lý cách trình bày (Layout Manager).....................................................................133
V.1 Cách trình bày FlowLayout:.......................................................................................... 134
V.2 Cách trình bày GridLayout:...........................................................................................134
V.3 Cách trình bày BorderLayout........................................................................................ 134
VI. Các hộp thoại.....................................................................................................................134
5


Phụ lục A. Các từ khóa của Java
Từ khóa

Ý nghĩa

abstract

Một lớp hoặc phương thức trừu tượng

assert

Được sử dụng để định vị lỗi nội bộ chương trình

boolean


Kiểu boolean

break

Thốt khỏi lệnh switch hoặc các vòng lặp

byte

Số nguyên 1 byte

case

Một lựa chon của switch

catch

Một mệnh đề của khối Try để bắt một ngoại lệ

char

Kiểu ký tự Unicode

class

Định nghĩa một class

const

Không được sử dụng


continue

Tiếp tục tại vị trí cuối vịng lặp hiện thời

default

Mệnh đề mặc định của switch

do

Phần trên của vòng lặp do/while

double

Kiểu số thực floating-number 8 byte

else

Mệnh đề else của một lệnh if

extends

Xác định lớp cha của một lớp

final

Một hằng số, hoặc một lớp hay phương thức không thể bị khai báo chống.

finally


Một phần của khối try mà luôn được thực hiện

float

Số thực 4 byte

for

Một kiểu vịng lặp

goto

Khơng sử dụng

if

Một lệnh điều khiển rẽ nhánh

implements

Chỉ ra các interfaces mà lớp sẽ cài đặt.

import

Nhập một package

instanceof

Kiểm tra xem đối tượng có phải là biểu hiện của một lớp


int

Số nguyên 4 byte

interface

Một kiểu trừu tượng với các phương thức được cài đặt tại các class

long

Sô nguyên 8 byte

150


Từ khóa

Ý nghĩa

Native

a method implemented by the host system

new

Cấp phát vùng nhớ cho một đối tượng hoặc mảng mới

null


Một tham chiếu null

package

Một gói các lớp

private

a feature that is accessible only by methods of this class

protected

a feature that is accessible only by methods of this class, its children, and other
classes in the same package

public

a feature that is accessible by methods of all classes

return

returns from a method

short

the 16-bit integer type

static

a feature that is unique to its class, not to objects of its class


strictfp

Use strict rules for floating-point computations

super

the superclass object or constructor

switch

a selection statement

synchronized a method or code block that is atomic to a thread
this

the implicit argument of a method, or a constructor of this class

throw

throws an exception

tHRows

the exceptions that a method can throw

transient

marks data that should not be persistent


try

a block of code that traps exceptions

void

denotes a method that returns no value

volatile

ensures that a field is coherently accessed by multiple threads

while

a loop

Phụ lục B Một số hàm hay sử dụng
a) Hàm toán học, lớp java.lang.Math; {java.math.*;}
1. abs(number x): lấy |x|, x có thể là các kiểu long, int, float, double.
2. acos(double x) = arccos(x). x từ 0.0 ... PI
3. asin(double x) = arcsin(x). x từ -PI/2 ... PI/2
4. atan(double x) = arctag(x).
5. ceil(double x): làm cận trên hoặc cận dưới của số x.
6. cos(double x) = cos(x). x là radian.
7. exp(double x) = ex.
8. log(double x) = Ln(x).

151



9. max(number x, number y) = max{x, y}, trong đó x, y có th ể là ki ểu int, float,
double, long.
10. min(number x, number y) = min{x, y}, trong đó x, y có th ể là ki ểu int, float,
double, long.
11. pow(double x, double y) = xy.
12. random(): cho một số ngẫu nhiên trong [0.0, 1.0].
13. round(number x): làm tròn số x, nếu x là kiểu double thì thành ki ểu long, n ếu x
là kiểu float thì thành kiểu int.
14. sin(double x) = sin(x).
15. sqrt(double x) =
16. tan(double x) = tg(x).
Khi sử dụng ta phải dùng Math.tên_hàm.
b) Lớp String, khai báo java.lang.String;
1. String() : Khởi động một đối tượng chuỗi.
2. String(String s) : Khởi động một chuỗi bằng chuỗi s.
3. length() : trả về giá trị int là độ dài một chuỗi.
4. charAt(int i): trả về một ký tự thứ sau i.
5. indexOf(int ch): trả về vị trí trước của ký tự ch đầu tiên tìm thấy.
6. concat(String str): nối thêm chuỗi str vào sau.
7. toLowerCase(): thay đổi chuỗi thành chữ thường.
8. toUpperCase(): chuyển đổi chuỗi thành chữ HOA.
Lớp Date khai báo java.util.Date;
1. Date(): cho thứ, tháng, ngày, giờ, năm.
2. getDate(): trả về giá trị của ngày trong tháng.
3. getDay(): trả về giá trị int là thứ trong tuần, 0 = CN, 1 = mon, ..., 6 = Sat.
4. getMonth(): trả về giá trị int là tháng trong năm (0..11).
5. getYear(): trả về giá trị int là năm. Lấy mốc là 1900, năm th ực = date.getYear()
+1900.
6. getTime(): trả về là một số được tính theo giây đồng hồ.
7. getHours(): trả về giá trị int chỉ giờ trong ngày.

8. getMinutes(): trả về giá trị int chỉ phút trong giờ.
9. getSeconds(): trả về giá trị int chỉ giây đồng hồ trong phút.
10. setDate(int date) đặt lại ngày trong biến. date lấy giá trị từ 1..31
11. setMonth(int month): thay đổi giá trị tháng trong biến date. month có giá trị 0..11.
12. setYear(int year): thay đổi giá trị năm trong biến date. (year + 1900).
13. setHours(int hour): thay đổi giá trị giờ trong biến date.
14. setMinutes(int i): thay đổi giá trị phút trong biến date.
15. setSeconds(int i): thay đổi giá trị giây trong biến date.

Tài liệu tham khảo
[1] Deitel & Associates (2001), “Java, How to program”, fourth edition.
[2] Cay S. Horstmann, Gary Cornell (2004), “Core Java™ 2”, volume 1,2, Prentice Hall PTR
[3] David Reilly, Michael Reilly (2002), “Network Programming and Distributed Computing”,
Addison Wesley

152



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×