Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 194 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
194
Dung lượng
7,4 MB
Nội dung
BỘ GIÁO TRÌNH TIN HỌC c SỞ C hủ biên: Hồ Sĩ Đ àm Quyên LẬP TRÌNH Cơ BẢN VỚI JAVA Tác giả: L ẻ A n h C n g, Phạm Bảo S n NHÀ XUÁT BẢN ĐẠI HỌC QUỐC GIA HÀ NỘI MỤC LỤC Lời nci đầu 11 CHƯỔNG 1: M Ở Đ Ả U 15 1 hưong trình máy tính g ì? 15 lập trình gì? 16 khái niệm ngôn ngừ lặp trình 17 5ơ lược phát triển đặc điểm cùa ngơn ngừ lặp trình Java 21 Mơi trường lặp trìiih bicn dịch trẽn Java 23 lỗi tim l ỗ i 26 Lhái niệm lập trình hướng đối tượng 27 Chương trình Java đẩu tiên 29 ỉ Cấu trúc cùa chương trình đơn giản 30 ị.2 Phân tích thực thi chương trình Java đầu ticn 31 >.3 Ví dụ tính tổng hai số nguyên 34 Hài tập 38 CHIJCWG 2: CÁC KHÁI NIỆM VÀ PHÉP TOÁN c SỞ 39 lỊp ký tự từ tố 39 B ê n 40 s l Củ pháp khai báo biến 42 1.2 Sử dụng biến 42 :.3 H àng .42 1.4 Khối chương trình phạm vi cùa biến 43 Kiểu ỉ i ệ u 44 T)án tử 48 Bài ập 57 CHUW G 3:CÁC CÂU TRÚC ĐIÈU KHIẾN 59 Ciu trúc rỗ nhánh 59 1 Cấu trúc lệnh i f 59 12 Cấu trúc lệnh i f e lse 60 13 Cấu trúc lệnh switch 62 CiU trúc lặp 64 21 Vòng lặp w h ile .65 22 Vòng lặp while 66 23 Vòng lặp for 66 24 Lệnh break 68 25 Lệnh continue .69 25 Vịng lặp vơ hạn 70 Xí lý ngoại lệ try catch 70 Bài tip 73 LÂP t r ìn h c y jk lA V A CHƯƠNG 4: LỚP VÀ ĐÓI TƯỢNG - 74 Khái n iệm 75 Lớp 76 2.1 Khai báo lớp 76 2.2 Biến quyền truy cậ p 78 2.3 Định nghĩa phương thức 80 2.4 Phưưng thức khởi tạo 83 Đối tượng 85 3.1 Tạo đối tượng 85 3.2 Sử dụng đối tượng 86 3.3 Từ khóa th is 87 3.4 Từ khóa sta tic 89 Giải phóng nhớ đ ộ n g 91 Tính đóng gói 91 Tính kế thừa 93 Tính đa hình 96 Các thuộc tính khác 98 8.1 Lớp trừu tượng 98 8.2 Giao d iện 99 Các G ói 100 8.4 Lớp Lồng 101 Bài tập 105 CHƯƠNG 5: HÀM - PHƯƠNG T H Ú C 109 Khái n i ệ m 109 Gọi phương thức truyền giá trị cho tham số 110 2.1 Gọi phương thức 110 2.2 Truyền tham số cho phương thức 112 Phạm vi Biến 115 Phương thức tĩnh 1 Phương thức chồng 118 Phương thức đệ q u i 120 Bài tập • 124 CHƯƠNG 6: VÀO/RA c B Ả N 127 Luồng vào/ra Java 127 Lớp bao đ ệ m 129 Luồng vào/ra chuẩn 131 Ghi dừ liệu h ìn h 133 Nhập dừ liệu từ bàn phím 137 Luồng vào với lớp Scanner 140 Bài tập 144 CHƯƠNG 7: MÀNG 147 Khái n iệm 147 Khai báo tạo m n g 147 Các thao tác với màng 150 3.1 Duyệt m ảng 150 M UCUC _ _ \ Sử dụng tham số kiểu mảng phương thức 151 J.3 Phương thức trà kiểu mảng 152 >.4 Sao chép màng .152 Màng đa chiều 153 Màng rời rạc .155 Truyền tham số dòng lệnh 156 Bài tập 158 CH ƯƠMG 8: XÂU KÝ T ự 161 Ciới thiệu 161 Nàng ký tự 161 L-Jp String 162 Các phương thức: length, charAt getChars 163 So sánh x â u 164 Tìm kiếm xâu .166 ' Trích rút xâu 168 '.5 Ghép xâu 168 ' Phương thức chuyển sang đối tượng String 169 27 Một số phương thức khác 170 L/p tách từ tố 172 Bài ạp 174 CIIUƠSỈG9: THAO TÁC TRỂN TỆP TIN 177 Gới thiệu 177 Lrp F ile 179 Đ)C dừ liệu theo kiểu ký tự 181 Gũ dừ liệu theo kiểu ký tự 183 ĐỉC dừ liệu theo kiểu nhị p h ân 185 Lớp InputStream 185 52 FilelnputStream 186 Gìi dử liệu theo kiểu nhị phân 187 61 OutputStream 187 62 FileOutputStream 188 Tộ) truy cập ngẫu nhiẻn 189 Bùi tip 193 Tài lộu tham khảo 195 PI1Ự L Ị C 197 Daih sách từ khóa 197 Cả; hàm toán học 199 Cá: lớp vào Java 201 DANH SÁCH CÁC BẢNG Bàng 1.1: Danh sách từ khóa Java 40 Bàng 1.2: Danh sách kiểu dừ liệu nguycn thủy 45 Báng 2.3: Danh sách kiêu dừ liệu tham chiếu 45 Bàng 24: Các toán từ số h ọ c 49 Bàng 25: Các toán từ Bit 51 Bàng 26: Các toán tử quan h ệ .52 Bàng 27: Các tốn tử lơ-gic 53 Bàng 28: Thứ tự ưu tiên toán tử 54 Bàng 1: Một số lớp ngoại lệ Java .72 Bâng 1: M ô tả quyền truy cập Java 80 Bàng 42: Các gói J a v a 101 Bảng 1: Các đặc tả khuôn dạng hàm printf 134 Bảng 62: Một số ví dụ minh họa cách thay đổi độ rộng số nguyên in r a 134 Bàng 6.3: Căn lề trái số nguyên in 134 Bảng í: Thêm số vào trước số nguyên trường hợp độ rộng lớn độ dài cùa số n g u y c n 135 Bàng 6.5: Một số ví dụ in số nguyên theo định dạng 135 Bủng >: Các phương thức sừ dụng Scanner 142 Bàng : M ò tả cấu trúc mảng a với 10 phần t 149 Bảng 7.2: Minh họa cấu trúc mảng b kích thước x 154 Bảng 7.5: Biểu diễn mảng ary nhớ 154 Bảng : Các phương thức khởi tạo lớp String 162 Bảng : Các phương thức thao tác với tệp tin lớp PileReader 182 LẬP TRÌNH Cơ BẢN VỚI JAVA Báng 9.2: Các phương thức thao tác với tệp tin lớp F ile W riter 184 Bàng 9.3: Các phương thức cùa lớp InputStream 186 Bàng 9.4: Các phương thức cùa lớp O u tpu tS tream .187 Bàng P Danh sách từ khóa Java 199 Bàng P.2 Tóm tắt số phương thức tính tốn số học thơng dụng J a v a 201 Bàng P.3: Liệt kê lớp xử lý v o /r a 202 DANH SÁCH CÁC HÌNH VẼ Hình 1.1: Các bước lập trình 16 Hinh 1.2: Minh họa mã m y 18 n in h 1.3: Ví dụ m ă A s s e m b ly 19 Hinlỉ 1.4: Ví dụ m ngơn ngừ c 20 Hình 1.5: Các bước phát triển thực thi chương trình J a v a 24 Hình 1.6: Các bước xử lý chương trình đơn g iả n 30 Hình 1.7: Khai báo tổng quát chương trinh đơn g iả n 31 Hình 6.1: Minh họa luồng o /ra 128 Hình 9.1: S đồ m inh họa tệp tin với n b y te 178 Hình 9.2: Sơ đồ phan cấp lớp giao diện cùa gỏi java.io 179 LỜI NÓI ĐÀU Lập trình cơng việc viết chương trình máy tính để giải tốn hay thực cơng việc dó máy tính Chưcmg trình dược viết ngơn ngừ lập trình sau dịch mã đích (mã máy) mà máy tính hiểu thực thi Hai khía cạnh cần thiết đổ lộp trình tìm giải thuật cho hài tốn hiếu ngơn ngữ lập trinh để có thê chuyên từ giải thuật sang mã chưưng trình Đối với người lập trình thường làm việc với toán đơn giàn giải thuật, chù yếu mang tính minh họa cho việc thể bàng ngơn ngữ lập trình Cuốn sách có mục tiêu giới thiệu ngơn ngừ lộp trình Java cho người bát đầu học lập trình Java ngơn ngừ lập trình thơng dụng Một đặc điểm bột cùa ngơn ngừ Java chương trình viết bang Java chạy nhiều tàng khác nhau, vi có mặt hầu hết mơi trường máy tính với loại ứng dụng khác hệ thống nhúng, phần mềm thict bị di động, phần mềm trcn Web, Hơn nữa, Java ngơn ngữ có thư viện đồ sộ, cập nhật nhũng công nghệ tối ưu cho việc lập trình Vì nhu cầu tìm hiểu, học ngơn ngừ Java ngày lớn, khơng cộng đong lập trình chuycn nghiệp mà cịn cho nhiều đói tượng khác Thơng thường Java không dược chọn làm ngôn ngừ cho nguời bắt đầu học lập trình Việc dạy ngơn ngừ Java cho người bắt đâu lập trình cách tư phù hợp với tốc độ phát triển nhanh chóng cùa cơng nghệ thơng tin ngày nay, cho phép người học có ihể tiếp cận ngơn ngữ đại, tắt đón đầu cơng nghệ LÂP TRÌNH Cơ BẢN VỚI JAVA 12 Việc thiết kế nội dung ngôn ngữ Java cho người lập trinh công việc không dơn giản Ngơn ngừ Java ngơn ngữ hồn tồn hướng đối tượng, tức từ ví dụ đơn giản nhât dă phải tiếp xúc với khái niệm khó lớp , đổi lượng, phương thức Vì vậy, sách này, từ chương đến chương giới thiệu cho khái niệm ngơn ngừ lập trình bậc cao kiểu dừ liệu, biến, biểu thức cúc toán tử, cấu trúc điều kiện lặp Một số kiến thức khác có sứ dụng khái niệm lớp vào/ra , xây dựng mã chương trình lớp người học tạm chấp nhận để hiểu ví dụ thực hành tập Tiếp theo từ chương giới thiệu cách hệ thống khái niệm lập trình hướng đối tượng Java, từ dó nắm cấu trúc phức tạp lứp vào/ra, màng, lớp xù lý xâu, lớp thao tác tệp Với tiếp cận vậy, chúng tơi chia nội dung giáo trình thành chương, mồi chương trình bày lý thuyết loại cú pháp ngôn ngữ, ý nghĩa, cách sử dụng ví dụ minh hợa Cuối chương tập dể người hục tổng kết lại nội dung học vận dụng giải toán thực tế Cấu trúc cùa giáo trình sau: ♦ Chương giới thiệu tổng quan khái niệm lập trình, ngơn ngừ lập trình, mơi trường lập trinh Các đặc điểm lịch sử phát triển ngôn ngừ Java dưực giới thiệu Cuối chương số ví dụ đơn giản để có hình dung ban đầu chương trình viết bàng ngơn ngừ Java ♦ Chương trình bày khái niệm cùa ngơn ngữ lập trình phép tốn bản, cụ thể ngôn ngữ Java: tập ký tự, từ tố, biến, hàng, từ khóa, kiểu dừ liệu tốn từ ♦ Chương trình bày cấu trúc rẽ nhánh cấu trúc lặp ngơn ngừ lập trình Java Đây cú pháp thiếu ngôn ngữ lập trình bậc cao, giúp người sử dụng xây dựng chương trinh có cấu trúc, giải toán phức tạp LẬP TRINH CO BẢN VỚI JAVA 188 Các lớp thực sừ dụng để đọc dừ liệu từ nguồn thừa kế từ lớp OutputStream, ví dụ sơ đồ từ Hình 9.2 lớp ByteArrayOutpStream, FileOutputStream, FilterOutputStream Các lớp thừa kế từ OuíputStream đề thống giao tiếp chung việc đọc dừ liệu từ nguồn vào 6.2 FileOutputStream FUeOutputStream sử dụng để ghi liệu vào tệp tin dạng luồng Tệp tin tạo khơng tồn đĩa trước mở để ghi liệu Sử dụng hàm khởi tạo khác để liên kết tệp tin với đối tượng FileOutputStream theo cách sau - FileOutputStream(Stringfilename) throws FileNotFoundException : Tạo OutputStream dùng đê ghi bytes dừ liệu vào tệp tin đặc tả bàng tên tệp tin - FileOutputStream(File name) throws FileNotFoundException : Tạo OutputStream dùng để ghi bytes liệu vào tệp tin đặc tả bàng đối tượng File - FileOutputStream(String filename, boolean flag) throws FileNotFoundException: Tạo OutputStream dùng để ghi cúc bytes liệu vào tệp tin Nếu tham số fla g true, tệp tin mở chế độ append (tức ghi thêm vào cuối tệp tin) Neu khơng dùng tham số mờ tệp tin dã tồn tệp tin bị xóa để bát đầu tệp tin Xem ví dụ sử dụng FileOutputStream sau: Ví dụ 9.6 Sử dụng FileOutputStream import java.io.*; class FileOutputDemo { public static void main(String args[]) { byte b[] = new b y t e [80]; try { Ch/ONG THAO TÂC TRỂN TỆP TIN 189 System.out.print ln ("Nhập luồnc ván để lưu vảo file"); int bytes = System.i n read(b); FileOutputStream fos = new FileOutputStream ("data.txt "); f O S write(b,0,bytes) ; S y s t e m o u t print I n ("DQ liệu l u u ! "); f OS c l o s e d ; } c a t c h (IOException e) { S y s t e m o u t println("Lỗi tạo file!"); } } } Tệp truy cập ngẫu nhiên Khi làm việc với tệp tin thông qua trỏ tệp tin để li chuyển đến vị trí tệp tin tưcmg tự số mảig Đối với đối tượng tệp tin mục trước ( FileReader , Fil,Writer, InputFileStream , OutputFileStream) trị tệp tin ln luỏi vị trí cuối tệp tin Các tệp tin truy cập ngẫu nhiên (random access files ) cho phcp tru' cập đến vị trí cụ thể tệp tin Chúng mở lưới chế độ dồng thời đọc/ghi cho phcp cp nht tỗp tin hin thi ) m tệp tin cho truy cập ngẫu nhiên sử dụng lớp RarJomAccessFile thực phương thức khởi tạo sau public RândomAccessFile (File file, string mode) throws ' Ì leNot FoundExcept ion oublie RändomAccessFile (String filePath, string mode) hrows FileNotFoundException Tham so mode quy định chế độ truy cộp là: “r" Mở tệp tin đẻ đọc "rw" Mở tệp tin để có thẻ vừa đọc vừa ghi Nếu tệp tin chưa tồn tạo tệp tin Một số phưưng thức lớp RandoniAccessFile : LẬP TRÌNH CO BẢN VỚI JAVA 190 Ten hàm Kiểu trả Ý nghĩa Đóng file giải tat nguon liên ket tới file void closeQ long getFilePointer() long lengthQ int ReadO Đọc byte int read(byte Ũ b) Đọc dãy byte vào đệm b int read(byteO b, int off, int len) Đọc dây byte vào đệm b, tối đa len byte, vị trí off boolean readBoolean() byte readByte() char readChar() readDouble() ! Đọc ký tự Unicode từ file readFloat() Đọc số float từ file double float int strina Trả vị trí trỏ file 1' Trả độ dài file j Đọc byte file Đọc số double từ file readlnto r ■ readLine() Đọc boolean từ file Đọc số nguyên 32-bit từ file ’ ' Đọc dòng text từ file long readLongO Đọc số nguyên 64-bit từ file short readShort() Đọc số nguyên 16-bit từ file void seek(long pos) Đặt trỏ file đến vị trí pos, tính từ đầu file void write(byteO b) Ghi dòng byte từ b vảo file, từ vị trí thời trỏ file void write(byteQ b, int off, int len) Ghi len bytes từ b vào vj trí từ off void write(int b) Ghi byte vào file void writeBoolean(boolean V) Ghi số boolean vào file giá trị byte void writeByte(int v) , - Ghi byte vào file j 191 Ch/ƠNG THAO TÁC TRÊN TÊP TIN vrd writeB/tes(String s) Ghi xâu vào file chuỗi byte vcd writeChar(int v) Ghi char vào file giá trị 2-byte, ghi vào byte cao vcd writeChars(String s) Ghi xâu vào file chuỗi kí tự vcd writeDouble(double v) Converts số double thành long sử dụng phương thức the doubleĩoLongBits lớp Double, sau ghi giá trị long vào file byte, byte cao vod writeFloat(float v) voi writelnt(int v) voJ writeLong(long v) Ghi số long vào file bytes, byte cao voJ writeShort(int v) Ghi short vào file giá trị bytes, byte cao voJ writeUTF(String str) Ghi xâu vào file sử dụng UTF-8 encoding Converts số float thành int sử dụng phương thức the floatTolntBits lớp Float, sau ghi giá trị int vào file byte, byte cao Ghi số nguyên int vào file bytes, byte cao ỉ ị Chủng ta xem lệnh thao tác với file truy cập ngẫu nhên: mờ file, đọc dừ liệu, ghi dừ liệu, di chuyển trỏ file, ví dụiau: Ví dụ 9.7: Sử dụng file truy cập ngẫu nhiên import java.io.*; import jav a i o FileNotFoundException; import j a v a i o IOException; import j a v a i o RandomAccessFile; public class Main { public void testRandomAccessFile(String filename) { RandomAccessFile randomAccessFile = null; try { String linel = "First line\n"; String line2 = "Second line\n"; randomAccessFile = new RandomAccessFile(filename, "rw "); LAP TRÌNH C BẢN VỚI JAVA 192 //Ghi vào file randomAccessFile.w r i t e B y t e s (linel); randomAccessFile.writeBytes(line2)/ //Chuyển trỏ file đến cuối dòng randomAccessFile.s e e k (line1.len g t h ()); byte[] buffer = new b y t e [line2.l e n g t h ()]; //đọc liệu dòng vảo buffer randomAccessFile.read(buffer); System.out.println(new String(buffer)); } catch (FileNotFoundException ex) { e x printStackTrace(); } catch (IOException ex) { e x printStackTrace (); } finally { try { if (randomAccessFile != null) randomAccessFile.c l o s e () ; } catch (IOException ex) { e x printStackTrace() ; } } } public static void main(String[] args) { new M a i n ().testRandomAccessFile("myFile.t x t "); } } Lưu ý số trường hợp, để sử dụng hiệu hệ tlhống vào ngẫu nhiên, phải biết cấu trúc dừ liệu lưu trừ file sử dụng cấu trúc để xác định vị trí cần chuyển trỏ đến (trong sử dụng hàm seek) CHƯONG THAO TÁC TRÊN TÉP TIN 193 Bài tập Hà/ sừ dụng StreamTokenizer để phản tách phần từ cách bờ dấu phầy xâu nhập từ bàn phím Sau in hình phần từ dịng riêng Hă/ xác dịnh phát biểu sau hay sai Nếu sai giải thích sao: í Lập trình viên phải tự tạo đối tượng luồng liệu System.in, System.out System, err ị Khi đọc liệu từ tệp sử dụng lớp Scanner, ta muốn đọc dừ liệu tệp nhiều lần tệp file đóng mở lại để dọc lại từ đầu file Việc chuyển trỏ chi vị trí tệp quay đầu tệp c Lớp Fonnatter có phương thức printf với mục đích để liệu dược định dạng in hình tệp Mã) tìm lồi đoạn chương trinh sau sửa lồi: a Già sử biển account, company amount đă khai báo: Obj ectOutputStream outputSt ream; outputstr e a m write lnt(account) ; outputstr e a m writeChars(company) ; outputstr e a m writeDouble(amount) ; b Các câu lệnh sau đọc ghi từ tệp “payables.txt” Biến inPayable thuộc kiểu Scanner chi đến tộp Scanner inPayable = new Scanner(new F i l e ("payables.txt")); PayablesRecord record = inPayable.readObj e c t (); (PayablesRecord) Bàn ohím cùa điện thoại di động bình thường có phím chứa chữ sơ áến Mỗi phím từ số đến có chữ tương ứng sau: l a p t r ìn h c o b n v j a v a 194 Chừ Chữ số AB DEF GH1 JKL MN0 PRS TU V wx Y Nhiều người cảm thấy khó nhớ số điện thoại, nên họ sử dụng ánh xạ chừ số chừ bảng để tạo từ có chừ tương ứng với số điện thoại cần nhớ Ví dụ người có số điện thoại 686-2377 xây dựng từ tương ứng “NU M BERS” Mỗi từ chừ tương ứng với số điện thoại có chừ số Mỗi số điện thoại chữ số tương ứng với nhiều từ Chù tiệm cắt tóc hài lòng số điện thoại cửa hàng 424-7288 tương ứng với từ “HAIRCUT” Chù cửa hàng bán bia muốn số cửa hàng 233-7226 tương ứng với từ “BEERCAN” Hây viết chương trình, với sổ điện thoại chữ số, sử dụng đối tượng PrintStream để ghi tệp tất từ chữ tương ứng với số điện thoại cho trước TÀI LIỆU THAM KHẢO Y Daniel Liang, Introduction to Java Comprehensive (8th Edition), Prentice Hall, 2010 Programming, Joshua Bloch, Effective Java , Second Edition, Addison-Wesley Professional, 2008 Herbert Schildt, Java the Complete Reference, Seventh Edition, McGraw-Hill Professional, 2006 H M Deitel, Java How to Program, 7th Edition, Prentice Hall, 2006 http://www.java2s.com/Tutorial/Java/CatalogJava.htm PHỤ LỤC Danh sách từ khóa Bàng danh sách từ khóa Java tóm tắt ý nghĩa cùa ù khóa Ti khóa Chức nảng attract Sừ dụng đẻ khai báo lớp phương thức trừu tượng asert Sừ dụng đẻ làm “assertion" (một cảu lệnh cho phép kiểm tra đắn điểm chương trinh) Từ khóa thêm vào J2SE 1.4 bolean Sử dụng đẻ khai báo kiểu liệu cổ giá trị lỏ-gic (true/false) bnak Dùng để két thúc việc thực thi cảu lệnh lặp by3 Sử dụng đẻ khai báo kiểu liệu số nguyên 8-bit cae Sử dụng đé tạo trường hợp riéng biệt cảu lệnh switch ca:h Sử dụng đẻ định nghĩa khối mã xử lý ngoại lệ ch.r Sử dụng đẻ khai báo kiểu dử liệu lưu trử ký tự Unicode 16-bit clas Sử dụng đẻ định nghĩa lớp COíSt Từ khóa dự phịng coitinue Continue dừng lần lặp quay lại kiểm tra điều kiện để thực lần lặp defcult Được sử dụng cho trường hợp mặc đinh câu lệnh switch Sử dụng câu lệnh lặp do-while doole Sử dụng đẻ khai báo kiểu dử liệu lưu trữ số thập phân 64-bit els* Sử dụng cảu lệnh điều kiện if-else eniĩì Sử dụng đẻ khai báo kiểu liệt kê extnds Sử dụng đẻ khai báo lớp kế thừa từ lớp sở (lớp cha) fine Sử dụng đẻ định nghĩa thành phần dử liệu thừa kế ghi đè finay Sử dụng (tùy chọn) đẻ định nghĩa khối lệnh xử lý ngoại lệ LAP TRiNH CO BAN VO JAVA 198 float Khai báo kiẻu dử liệu lưu trử số thập phản 32-bit for Sừ dụng đẻ tạo lệnh lặp for goto Từ khóa dự phịng if Từ khóa if sử dụng để tạo câu lệnh if Implements Chừa khai báo cùa lớp đẻ đinh giao diện thực thi từ lớp import Chương trinh chia thành lớp gói riêng biệt Những gói dẩn chương trinh Thông tin njy với từ khóa “import” instanceof Sử dụng kiểm tra đối tượng có thuộc lớp hay không? int Khai báo kiẻu dử liệu lưu trử số nguyên 32-bit interface Từ khóa interface sừ dụng đẻ khai báo giao diện long Khai báo kiểu dử liệu lưu trữ số nguyên 64-bit native Từ khóa native rẳng, phần thân phương thức viết ngơn ngữ khác Java (ví dụ c, c++) new Sử dụng đẻ tạo thể (đối tượng) lớp mảng package Sử dụng để khai báo gói (package) private Được dùng phương thức khai báo biến, cho biết phương thức biến truy xuất thảnh viên lớp protected Được dùng phương thức khai báo biến, cho biết phương thức biến có thẻ truy xuất thành vièn lớp, lớp con, lớp gói public Khai báo thành phần liệu truy cập từ lớp return Được sử dụng để trả giá trị kết thúc phương thức short Khai báo kiểu dử liệu lưu trữ số nguyên 16-bit static Định nghĩa thành phần liệu cỏ thể truy cập mà không cần tạo thể (biến, đối tượng) strictfp Từ khóa strictfp dùng cho phương thức lớp, buộc kiẻu dáu chấm động phải tuân thu chuẩn IEE754 super Sử dụng để truy cập thành phần dử liệu lớp sờ (lớp cha) từ lớp suy dẫn (lớp con) switch Sử dụng để tạo cảu lệnh switch (củng với từ khỏa case default) synchronized Sử dụng với phương thức trinh thực thi threads Nó cho phép thread truy cặp vào khối mã thời điểm this Được dùng để thay thể lởp Ngồi ra, có thé dùng đẻ truy cập đến biến phương thức 199 PKI LUC thpw Các ngoại lệ tạo cách sử dụng từ khoá ‘throw’ Từ khóa ‘throw’ ngoại lệ vừa xảy thnws Từ khóa throws dùng khai báo phương thức xác định rằng, ngoại lệ không điều khiẻn bên phương thức truyền đến mức cao chương trinh trasient Được dùng đẻ khai báo trường mà khơng lưu trữ phần trạng thái đối tượng Tr> Được sử dụng đẻ định nghĩa khối lệnh xử lý ngoại lệ Vo,’ Được sử dụng đẻ khai báo phương thức không trả giá trị vol.tile Được sử dụng với biến đẻ thông báo rầng giá trị biến thay đổi không đồng thread chạy đồng thời whl3 Được sử dụng đẻ tạo lệnh lặp while do-while Bảng P1 Danh sách từ khóa Java C c hàm to án học Một so hàm tốn học thơng dụng Java: stat; double abs(double a) Trả giá trị tuyệt đối số thực double stat, float abs(float a) Trả giá trị tuyệt đối số thực float statí int abs(ỉnt a) Trả vè giá trị tuyệt đối số nguyên int stati long abs(long a) Trả giả trị tuyệt đối số nguyên long stati double acos(doubỉe a) Trả giá trị arc-cosine góc, từ 0 đến pi stati' double asin(doubie a) Trả giá trị arc-sine góc, từ -pil2 đến p//2 stati« double atan(double a) Trả giá trị arc-tangent góc, từ -p//2 đến pi/2 statií double ceiỉ(double a) Trả giá trị nguyên nhỏ không bé tham số a staticdouble cos(double a) LAP TRINH C BẢN VỚI 200 Trả cosine góc static double exp(double a) Trả e mũ a static double floor(double a) Trả giá trị nguyên lởn mà bé a static double log(double a) Trả logarit số e a static double max(doubie a, double b) Trả giá trị lớn nhắt a b static float max(float a, float b) Trả giá trị lởn a vả b static int max(int a, int b) Trả giá trị lớn a b static long max(long a, long b) Trả giá trị lớn a b static double min(double a, double b) Trả giá trị bé a b static float min(float a, float b) Trả giá trị bé a b static int mỉn(int a, int b) Trả giá trị bé a b static long min(long a, long b) Trả giá trị bé a b static double pow(double a, double b) Trả giá trj a mũ b static double randomQ Trả vẻ giá trị ngẫu nhiên khoảng [0.0, 1.0] static double rint(double a) Trả giá trị int gần a static long round(double a) Trả giá tri long gần a static int round(float a) Trả giá trị int gần a ’HL LUC 201 talc double sin(double a) Trà sin góc a tatic double sqrt(double a) Trả vẻ bậc hai a íatic double tan(double a) Trả tan góc a