... static void main(String[] args){
int b;
System.out.println(a);
System.out.println(b);
}
}
Lập trình mạng với Java
Từ khóa static [1]
Có thể đặt trước một khai báo thuộc tính hay phương
thức
static ... System.out.println(“Finally.”);
}
Nhập / xuất dữ liệu
Sử dụng các luồng nhập xuất trong gói java. io
Có hai loại luồng nhập/xuất trong Java:
Các luồng dữ liệu kiểu byte:
Xử lý dữ liệu nhập/xuất theo từng byte.
Hai ... }
________
int k=5;
f ( 5 );
f ( k ); // truyền tham trị
________
g ( obj ); // truyền tham chiếu
Lập trình Socket
Các máy tính trên mạng Internet trao đổi thông tin sử
dụng bộ giao thức TCP/IP.
Transport:...
... ngữ Java căn bản
Lớp và đối tượng trong Java
Exception
Nhập / xuất trong Java
Lập trình Socket
RMI (Remote Method Invocation)
46/72
Socket [1]
Java cung cấp hai lớp đối tượng để lập ... thể làm mất thông tin
1
Lập trình mạng với Java
GV : BÙI TIẾN TRƯỜNG
Email: dontruongbt@yahoo.com
Mobile : 0989995221
ÔN TẬP THI TỐT NGHIỆP
30/72
Lớp String [1]
Trong Java, một chuỗi ký tự là ... ex.printStackTrace();
}
50/72
Lập trình Server TCP
Tạo ServerSocket
Gọi thực thi phương thức accept() để chấp nhận
thiết lập kết nối với Client => nhận được Socket giao
tiếp với Client.
Lấy InputStream...
... Lậptrình Server TCP
Tạo ServerSocket
Gọi thực thi phương thức accept() để chấp nhận
thiết lập kết nối với Client => nhận được Socket giao
tiếp với Client.
Lấy InputStream ... liệu với Client.
Gửi và nhận dữ liệu với Client, sử dụng các phương
thức read() và write() của các lớp đối tượng
InputStream và OutputStream.
Đóng Socket và ServerSocket
Kết thúc chương trình
Các ... System.out.println(str);
} catch (IOException ex) {
ex.printStackTrace();
}
Lập trình Socket
Máy truyền và máy nhận thiết lập một kết nối TCP
bằng socket.
Socket cho phép truyền nhận dữ liệu...
... ((s=inStream.readLine())!=null){
System.out.println(s);
}
}
catch(Exception e){
System.out.println(e);
}
Chương 5
1
LẬP TRÌNH MẠNG VỚI Java
(Gói thư viện Java. net)
Khái niệm lậptrình phân tán đối
tượng
Các đối tượng nằm phân tán trên các máy ... các file class, tạo
Stub & Skeleton
C:\>javac Calculator .java
C:\>javac CalculatorImpl .java
C:\>rmic CalculatorImpl
27
Kết quả quá trình dịch được các file:
Calculator.class
... CurrencyServer/CurrencyClient: server phục vụ
truy vấn giá cả ngoại tệ.
RMI và kỹ thuật lậptrình phân tán
đối tượng
Khái niệm lậptrình phân tán đối
tượng
Thiết kế ứng dụng phân tán RMI
Vấn đề truyền...
... này
LẬP TRÌNHJAVA NC
Chương 06: Truy cập cơ sở dữ liệu
với JDBC
Lê Tân
Bộ môn: Lậptrình máy tính
Loại 2: Native-API
Tốt hơn
loại 1, loại
này cho
phép
JDBC giao
tiếp trực
tiếp với ... cung cấp tập các lớp và interface cho
phép chương trìnhJava có thể “nói chuyện”
được với hệ CSDL
Tập các lớp của JDBC
có thể làm việc được với
mọi hệ csdl.
Sử dụng ResultSet
Để lấy dữ ...
rsmd.getColumnCount();
Để lấy tên các cột của kết quả: String str =
rsmd.getColumnName(int column);
Chương trình mẫu
import java. sql.*;
class JDBCDemo1 {
public static void main(String[ ] args) {
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
...
... TRấN JAVA
Gúi java. net
InetAddress
ServerSocket
Socket
URL
URLConnection
DatagramSocket
Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM
Khoa Khoa Hc v K Thut Mỏy Tớnh
Trang 25
LP TRèNH MNG TRấN JAVA
... Baựch Khoa Tp.HCM
Khoa Khoa Hc v K Thut Mỏy Tớnh
Trang 14
LP TRèNH MNG TRấN JAVA
In
a ch
IP c
a localhost
import java. net.*;
public class HostInfo {
public static void main(String args[]) ... CLIENT/SERVER
Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM
Khoa Khoa Hc v K Thut Mỏy Tớnh
Trang 23
LP TRèNH MNG TRấN JAVA
ServerSocket class
Cỏc ph
ng th
c trong ServerSocket
Socket accept() throws IOException...
... Tháng 10/2009
BÀI TẬP
CHƯƠNG TRÌNH
CHỨNG CHỈ LẬPTRÌNH
JAVA & J2EE
Môn học:
NHẬP MÔN LẬPTRÌNH
VỚI JAVA - JPCB
Bài t
ập
Nh
ập môn lập tr
ình Java - JPCB Trang 17/18
BÀI 5: ... môn lập tr
ình Java - JPCB Trang 2/18
BÀI 1: Giới thiệu về lậptrìnhJava
Giúp học viên biết cách cấu hình, biên dịch và thực thi ứng dụng Java sử dụng
JDK
.Làm quen với cách viết chương trình ... tính diện tích hình tròn
4.6. Bài 6
Bài t
ập
Nh
ập môn lập tr
ình Java - JPCB Trang 13/18
BÀI 4: Lậptrình hướng đối tượng vớiJava
Giúp học viên biết cách khai báo class, property, method....
... tham khảo
Bruce Eckel, Thinking in Java, chapter 11
Deitel, Java – How to program, chapter 7,
11, 20
Đoàn Văn Ban, Lậptrình hướng đối tượng
với Java, NXB Khoa học kỹ thuật, chương
6.
Mộtsố ... lớpcơ sở
22
NguyễnViệtHà
LớpArrays
Nằm trong gói java. util
Cung cấp4 phương thứcstatic để làm
việcvớimảng
fill(): khởi tạo các phầntử củamảng với
mộtgiátrị như nhau
sort(): xắpxếpmảng
equals(): ... String toString()
Mộtsố lớpcơ sở
24
NguyễnViệtHà
Sắpxếpmảng sort()
Làm việcvớicácmảng dữ liệu nguyên
thủy
Làm việcvớicáclớp đốitượng có cài đặt
giao diện Comparable
phương thức compareTo()
Mộtsố...
... thiếtkế…
43
NguyễnViệtHà
Strategy
Chương trình cần chuyển đổi động giữa
các thuật toán
Ví dụ,chương trình soạn thảo sử dụng
vài thuật toán hiển thị với các hiệu
ứng/lợi ích khác nhau
Nguyờn ... các sản phẩm phần mềm tốt hơn
Nguyên lý thiếtkế…
25
NguyễnViệtHà
Abstract Factory
Một chương trình cần có khả năng chọn một
trong một vài họ các lớp đối tượng
Ví dụ, giao diện đồ họa nên ... lớp dẫn xuất
FastRenderer, TexRenderer, …
Nguyên lý thiếtkế…
48
NguyễnViệtHà
Ứng dụng
Chương trình vẽ/soạn thảo
Tối ưu biên dịch
Chọn lựa các thuật toán heuristic khác
nhau (trò chơi )
...
... Object (từ Java 1.5)
Khởi tạo với đối số là đối tượng vào
(luồng, tệp, xâu ký tự)
Có các phương thức hỗ trợ nhập trực tiếp
nextType, hasNextType
Các luồng vào ra
39
NguyễnViệtHà
import java. io.*;
public ... Thinking in Java, chapter 12
Java how to program, chapter 17
Các luồng vào ra
10
NguyễnViệtHà
Phả hệ của InputStream
Các luồng vào / ra
Các luồng vào ra
30
NguyễnViệtHà
Ví dụ: File copy
import java. io.*;
public ... đích dữ liệu thông
thường là tệp
Lớp File cung cấpcácchức năng cơ bản
để thao tác vớitệp
nằm trong gói java. io
tạotệp, mở tệp, các thông tin về tệpvàthư
mục
Các luồng vào ra
28
NguyễnViệtHà
Ví...
... cơ
chếđa hình
Xử lý ngoạilệ
4
NguyễnViệtHà
Lỗi và ngoạilệ
Mọi đoạnchương trình đềutiềm ẩnkhả năng
sinh lỗi
lỗichủ quan: do lậptrình sai
lỗi khách quan: do dữ liệu, do trạng thái củahệ thống
... {
System.out.println(e.getMessage());
}
Xử lý ngoạilệ
3
NguyễnViệtHà
Tài liệu tham khảo
Thinking in Java, chapter 9
Java how to program, chapter 15
Xử lý ngoạilệ
2
NguyễnViệtHà
Nội dung
Khái niệm về xử ... khởi
tạo đốitượng gặplỗi
không có giá trị trả lại
Một cách là khởitạovớimộttrạng thái đặc
biệtvàhi vọng sẽ có mã chương trình
kiểm tra trạng thái này
Cách hợplýhơn là ném ngoạilệ
Xử lý ngoạilệ
28
NguyễnViệtHà
Ví...
...
senior.setAssistant(junior);
Kế thừa và đa hình
34
NguyễnViệtHà
Hướng tới lậptrình tổng quát
Generic programming
Tổng quát hóa chương trình để có thể hoạt động
với các kiểu dữ liệu khác nhau, kể cả các kiểu
dữ ... của chương trình con được thực hiện
ưu điểm về tốc độ
Liên kết động: lời gọi phương thức được quyết
định khi thực hiện, phiên bản của phương thức
phù hợp với đối tượng được gọi
Java mặc ... _y);
r = _r;
}
}
Kế thừa và đa hình
3
NguyễnViệtHà
Tài liệu tham khảo
Thinking in Java, chapter 7, 8
Java how to program, chapter 9
Kế thừa và đa hình
28
NguyễnViệtHà
interface CanFight...
... Thinking in Java, chapter 6
Java how to program, chapter 9
Kế thừa
8
NguyễnViệtHà
Kế thừa
Dựa trên quan hệ is_a
Thừahưởng lạicácthuộctínhvàphương
thức đãcó
Chi tiết hóa cho phù hợpvớimục đích ... có thểđịnh nghĩalại các phương
thứccủalớpcơ sở
Đốitượng củalớpdẫnxuấtsẽ hoạt động
vớiphương thứcmớiphùhợpvớinó
Có thể tái sử dụng phương thức cùng tên
củalớpcơ sở bằng từ khóa super
Kế thừa
19
NguyễnViệtHà
Ví ... nhiều phiên bản
Quan hệ has_a
Sử dụng lớpcũ như là thành phầncủalớp
mới
Sử dụng lạicàiđặtvớigiaodiệnmới
Phảiviếtlạigiaodiện
Chưa đủ mềm dẻo
Kế thừa
22
NguyễnViệtHà
Thừakế nhiềutầng
Person
-name
-birthday
+setName
+setBirthday
Employee
-salary
+setSalary
+getDetail
Manager
-rank
...
... Hiểu thêm về Java
Thêm về Java
23
NguyễnViệtHà
this làm tham số
class Document {
Viewer vi;
Document(Viewer v) {
vi = v;
}
void display() {
v.display(this);
}
}
Thêm về Java
11
NguyễnViệtHà
“New” ... memory
26-9-2005
Heap memory
Thêm về Java
25
NguyễnViệtHà
Phương thứcvàthuộc tính static
Có thể khai báo phương thứcvàthuộc
tínhlàtĩnh (static)
độclậpvới đốitượng
có thể sử dụng mà không ... liệu vào chuẩn: System.in
chưa sẵnsàngcho sử dụng
Thêm về Java
14
NguyễnViệtHà
Giải phóng bộ nhớ động
(Garbage collection)
Lậptrình viên không cần phải giải phóng đối
tượng
JVM cài đặt...