1. Trang chủ
  2. » Công Nghệ Thông Tin

GIÁO TRÌNH CORE JAVA 9

20 272 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 213,5 KB

Nội dung

Định nghĩa Lập trình hướng Đối tượng (Objectoriented Programming).Nhận thức về Trừu tượng hóa Dữ liệu (Data Abstraction).Định nghĩa một Lớp (Class).Định nghĩa một Đối tượng (Object).Nhận thức được sự khác biệt giữa Lớp và Đối tượng.Nhận thức được sự cần thiết đối với phương thức Thiết lập (Construction) và Hủy (Destruction).Định nghĩa tính Bền vững (Persistence).Định nghĩa về tính đóng gói dữ liệu (Data Encapsulation)Hiểu biết về tính Thừa kế (Inheritance).Định nghĩa tính Đa hình (Polymorphism).Liệt kê những ưu điểm của phương pháp hướng Đối tượng.

Chương DÒNG VÀO/RA (I/O Streams) Mục tiêu Kết thúc chương, bạn có :        Đề cập đến khái niệm Stream Mô tả lớp InputStream OutputStream Mô tả vào mảng Byte Thực lọc đệm vào/ra Dùng lớp RandomAccesFile Mô tả vào/ra chuỗi ký tự Dùng lớp PrinterWriter 9.1 Giới thiệu Trong buổi học trước, học cách tạo luồng đồng Ngăn chặn luồng truy nhập đồng thời đối tượng dùng chung Toàn tiến trình quản lý chế đợi thông báo (wait-notify) Phương thức wait() báo cho dòng gọi từ bỏ monitor nhập vào trạng thái ngủ luồng khác sử dụng xong monitor gọi phương thức notify() Phương thức notify() notifyAll() tạo thông báo cho luồng khác gọi phương thức wait() đối tượng Trong học trước, học điều kiện khoá chết cách tránh chúng Chương giới thiệu khái niệm dòng Chúng ta thảo luận lớp khác gói java.io phục vụ vào .9.2 Các dòng (stream) Theo thuật ngữ chung, stream dòng lưu chuyển thuật ngữ kỹ thuật dòng lộ trình mà liệu truyền chương trình Một ứng dụng dòng ma ta quen thuộc dòng nhập System.in Dòng ống (pipelines) để gửi nhận thông tin chương trình java Khi dòng liệu gửi nhận, ta tham chiếu “ghi” “đọc” dòng tương ứng Khi dòng đọc hay ghi, luồng khác bị có nhu cầu đọc/ghi dòng phải tạm dừng Nếu có lỗi xẩy đọc hay ghi đòng, ngoại lệ kiểu IOException tạo Do vậy, câu lệnh thao tác dòng phải bao gồm khối try-catch Lớp ‘java.lang.System’ định nghĩa dòng nhập xuất chuẩn chúng lớp dòng byte mà java cung cấp Chúng ta sử dụng dòng xuất để xuất liệu hiển thị kết hình Dòng vào/ra bao gồm: : I/O Streams 213  Lớp System.out: Dòng xuất chuẩn dùng để hiển thị kết hình  Lớp System.in: Dòng nhập chuẩn thường đến từ bàn phím dùng để đọc ký tự liệu  Lớp System.err: Đây dòng lỗi chuẩn Các lớp ‘InputStream’ ‘OutputStream’ cung cấp nhiều khả vào/ra khác Cả hai lớp có lớp thừa kế để thực I/O thông qua vùng nhớ đệm, tập tin ống (pipeline) Các lớp lớp InputStream thực vào, lớp lớp OutputStream thực .9.3 Gói java.io Các luồng hệ thống có ích Tuy nhiên, chúng không đủ mạnh để dùng ứng phó với I/O thực tế Gói java.io phải nhập mục đích Chúng ta thảo luận tìm hiểu lớp thuộc gói java.io 9.3.1 Lớp InputStream Lớp InputStream lớp trừu tượng Nó định nghĩa cách thức nhận liệu Điểm quan trọng không nằm chổ liệu đế từ đâu, mà khả truy cập Lớp InputStream cung cấp số phương thức để đọc dùng dòng liệu để làm đầu vào Các phương thức giúp ta tạo, đọc xử lý dòng đầu vào Các phương thức 9.1 Tên phương thức read() read (byte []) read (byte [], int, int) available() close() mark() markSupported() reset() 214 Mô tả Đọc byte liệu từ dòng Nếu byte liệu nào, phải chờ Khi phương thức phải chờ, luồng thực phải tạm dừng có liệu Trả số byte đọc hay ‘-1’ đọc đến cuối dòng Nó gây ngoại lệ IOException có lỗi xảy Nó đọc vào mảng byte Nó trả số byte thực đọc kết thúc dòng Nó gây ngoại lệ IOException lỗi xảy Phương pháp trả số lượng byte đọc mà không pahỉ chờ Nó trả số byte có dòng Nó phương thức tin cậy để thực tiến trình xử lý đầu vào Phương thức đóng dòng Nó dùng để giải phóng tài nguyên dòng sử dụng Luôn đóng dòng để chắn dòng xử lý kết thúc Nó gây ngoại lệ IOException lỗi xảy Đánh dấu vị trí dòng Trả giá trị boolean dòng có hỗ trợ khả mark reset hay không Nó trả True dòng hỗ trợ ngược lại trả False Phương thức định vị lại dòng theo vị trí đánh lần cuối Nó gây ngoại lệ IOException Core Java lỗi xảy Phương thức bỏ qua ‘n’ byte dòng vào ’-n’ định số byte bỏ qua Nó gây ngoại lệ IOException lỗi xảy Phương thức sử dụng để di chuyển tới vị trí đặc biệt bên dòng vào skip() Table 9.1 Các phương thức lớp InputStream 9.3.2 Lớp OutputStream Lớp OutputStream lớp trừu tượng Nó định nghĩa cách ghi kết xuất đến dòng Nó cung cấp tập phương thức trợ giúp tạo ra, ghi xử lý kết xuất dòng Các phương thức bao gồm: Tên phương thức write(int) write(byte[]) write(byte[],int,int) flush() close() Mô tả Phương thức ghi byte Phương thức phong toả byte ghi dòng phải chờ tác vụ ghi hoàn tất Nó gây ngoại lệ IOException lỗi xảy Phương thức ghi mảng byte Lớp OutputStream định nghĩa ba dạng khác phương thức để ghi byte riêng lẻ, mảng byte, hay đoạn mảng byte Phương thức xả dòng Đệm liệu ghi dòng Nó kích hoạt IOException lỗi xảy Phương thức đóng dòng Nó dùng để giải phóng tài nguyên gắn với dòng Nó kích hoạt IOException lỗi xảy Bảng 9.2 Các phương thức lớp OutputStream 9.3.3 Vào mảng byte Các lớp ‘ByteArrayInputStream’ ‘ByteArrayOutputStream’ sử dụng đệm Không cần thiết phải dùng chúng với  Lớp ByteArrayInputStream Lớp tạo dòng đầu vào từ đệm, mảng byte Lớp không hỗ trợ phương thức Ngược lại định nghĩa đè phương thức lớp InputStream ‘read() ‘, ‘skip()’, ‘available()’ ‘reset()’  Lớp ByteArrayOutputStream Lớp tạo dòng mảng byte Nó cung cấp khả cho phép mản tăng trưởng nhằm mục đích tăng kích thước Lớp cung cấp them phương thức ‘toByteArrray()’ ‘toString()’ Chúng dùng để chuyển đổi dòng thành mảng byte hay chuỗi Lớp ByteArrayOutputStream cung cấp hai phương thức thiết lập Một có đối số số nguyên dùng để ấn định mảng byte theo kích cỡ ban đầu thứ hai đối số nào, thiết lập xuất với kích thước mặc định Lớp cung cấp vài phương thức bổ sung, không khai báo I/O Streams 215 OutputStream:  reset() Thiết lập lại vùng đệm nhằm cho phép ghi lại từ đầu vùng đệm  size() Trả số byte ghi tới vùng đệm  writeto() Ghi nội dung vùng đệm dòng định Để thực hiệnsử dụng đối tượng lớp OutputStream làm đối số Chương trình 9.1 sử dụng lớp ‘ByteArrayOutputStream’ để nhập xuất: ‘ByteArrayInputStream’ Program 9.1 import java.lang.System; import java.io.*; public class byteexam { public static void main(String args[]) throws IOException { ByteArrayOutputStream os =new ByteArrayOutputStream(); String s ="Welcome to Byte Array Input Outputclasses"; for(int i=0; i

Ngày đăng: 24/08/2017, 11:56

TỪ KHÓA LIÊN QUAN

w