Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
1,12 MB
Nội dung
PHẦN I CƠ BẢNVỀLẬPTRÌNHJAVA GV. NgôCôngThắng Bộ môn Công nghệ phần mềm Khoa Công nghệ thông tin Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 2 Chương 1: Giới thiệu vềJava 1. Lịch sử hình thành vàphát triển 2. Các đặc điểm của Java 3. Các phiên bản của Java 4. Các bước viết vàchạy thử một chương trìnhJava 5. Các thành phần của chương trìnhJava 6. Cấu trúc chung của một chương trìnhJava Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 3 1. Lịch sử hình thành vàphát triển l Java làmột ngôn ng lậptrình hướng đối được đang được ưa chuộng. l Java làmột ngôn ngữ mạnh ngang tầm với C++. So với C++, Java “mềm dẻo vàtao nhã” hơn. l Java được công bố vào năm 1990, tác giả làJames Gosling và Sun Microsystems. l Tên ban đầu làOak (cây sồi) l Java, 20/05/1995, Sun World l HotJava: Trình duyệt Web hỗ trợ Java đầu tiên l JDK Evolutions l J2SE, J2ME, and J2EE Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 4 2. Các đặc điểm củaJava l Java is simple l Java is object-oriented l Java is distributed l Java is interpreted l Java is robust l Java is secure l Java is architecture-neutral l Javais portable l Java’s performance l Java is multithreaded l Java is dynamic đơn giản hướng đối tượng phân tán thông dịch mạnh mẽ bảo mật không phụ thuộc HĐH khả chuyển hiệu quả cao đa luồng linh động Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 5 3. Các phiên bản của Java l JDK: Java Development Kit l Java 1 l JDK1.02 (1995) l JDK 1.1 (1996) l Java 2 l SDK1.2(JDK1.2, 1998) l SDK1.3(JDK1.3, 2000) l SDK1.4(JDK1.4, 2002) l SDK 5.0 (JDK 1.5, 2004) l SDK 6.0 (JDK 1.6, 2007) Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 6 JDK Editions l Java Standard Edition (J2SE) J2SE cóthể được dùng để phát triển các ứng dụng hoặc các applet độc lập phía client (client-side). l Java Enterprise Edition (J2EE) J2EEcóthể được dùng để phát triển các ứng dụng phía server (server-side)như các Javaservlet và JavaServerPages. l Java Micro Edition (J2ME). J2MEcóthể được sử dụng để phát triển các ứng dụng cho các thiết bị di động như ĐTDĐ. l Các chương trình vídụtrong môn học LậptrìnhJava viết trênJ2SE. Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 7 4. Các bước viết vàchạy thử một chương trìnhJava l Soạn thảo chương trình bằng một trình soạn thảo text hoặc trong IDE. l Biên dịch chương trình l Chạy chương trình Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 8 Quátrình tạo vàchạy một chương trìnhjava bytecode Tạo/Sửa Source Code Compile Source Code vd: javac Welcome.java Run Bytecode vd: java Welcome Kết quả Bytecode Source Code Nếu có lỗi hoặc kết quả sai Nếu có lỗi Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 9 Một chương trìnhJava đơn giản // Chuong trinh dua ra dong chuWelcome toJava! package ch01; publicclass Welcome { public static void main(String[] args) { System.out.println("Welcome to Java!"); } } l Chúý: Đặt tên tệp phải trùng với tên lớp, khi gõ lệnh biên dịch từ DOS thìtên tệp phải giống hệt tên lớp (cả hoa và thường). Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 10 Tạo, biên dịch, chạy chương trình trên DOS l Soạn thảo chương trình: l Soạn thảo chương trình (Notepad, Wordpad…) l Ghi tệp với tên có đuôi .java Vídụ: Ghi tệp Welcome.java vào thư mục C:\javapro l Biên dịch: l Trên cửa sổ DOS l cd\ ↵ l cd javapro ↵ l javacWelcome.java ↵ l Chạy: l java Welcome ↵ Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 11 Thiết lập biến môi trường l Để biên dịch vàchạy các chương trìnhJava từ bất kỳ thư mục nào trong DOS ta phải thiết lập biến môi trường PATH như sau: l Kích phải chuột vào My Computer -> Properties -> Advanced -> Environment Variables l Chọn biến Path -> Edit -> Gõ thêm đường dẫn tới thư mục Bin của JDK. Vídụ: C:\Program Files\Java\jdk1.6.0_02\bin Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 12 Thiết lập biến môi trường Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 13 Thiết lập biến môi trường Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 14 5. Các thành phần của một chương trìnhJava l Comments (Chúgiải, như C++) l Reserved words (Từ khóa) l Modifiers (Như C++, vídụ: public, private, static) l Statements (Câu lệnh, như C++) l Blocks (Khối lệnh, như C++) l Classes (Lớp, như C++) l Methods (Phương thức, như hàm thành viên trong C++) l main method (Phương thức chính, như hàm main() trong C++) Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 15 main Method l mainmethod đóng vai trò là chương trình. l Mọi chương trìnhJava phải cómain method, nólà điểm khởi đầu khi thực hiện chương trình. l Dạng thức của mainmethod: publicstatic void main(String[ ]args) { // Statements; } Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 16 6. Cấu trúc chung của một chương trìnhJava l Trình thông dịch Java coi chương trìnhJava như một lớp. l Mọi chương trìnhJava phải cóít nhất một lớp chứa phương thức main. Tên lớp chứa phương thức main phải trùng với tên tệp chương trình. l Cấu trúc chung của một chương trình Java: import Thư viện lớp (package);//#include của C++ public class TenLop //Ten lop nay la ten tep ctrinh { public static void main(String[] args) { //Các lệnh của chương trìnhJava đểở đây } //Dinh nghia cac phuong thuc khac } Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 17 6. Cấu trúc chung của một chương trìnhJava l Vídụ: Import javax.swing.JOptionPane; public class Welcome { public static void main(String[] args) { //Hien thi chu Welcome to Java! Trong hop thoai JOptionPane.showMessageDialog(null,”Welcome to Java!”,”Chuong trinh vi du”,JOptionPane.INFORMATION_MESSAGE); } } Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 18 Vídụ lTrong vídụtrên ta sử dụng phương thức showMessageDialog trong lớp JOptionPane để hiển thị thông báo trong một hộp hội thoại. l JOptionPane làmột trong nhiều lớp có sẵn trong hệ thống Java để cóthể tái sử dụng. Bài giảng LT JAVA -Phần 1,Chương 1 GV.NgôCôngThắng 19 Phương thức showMessageDialog JOptionPane.showMessageDialog(null, "Welcome to Java!", "Example 1.2 Output", JOptionPane.INFORMATION_MESSAGE); Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 1 Chương 2. Các kiểu dữ liệucơbản I. Các kiểu dữ liệucơbản II. Khai báo biến vàhằng III. Biểu thức IV. Chuyển đổi kiểu dữ liệu V. Vào/Ra dữ liệu với Java Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 2 Chương 2. Các kiểu dữ liệucơbản I. Các kiểu dữ liệucơbản 1. Các kiểu dữ liệu số 2. Kiểu ký tự 3. Kiểu logic 4. Kiểu xâu ký tự Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 3 I.1. Các kiểu dữ liệu số l byte l short l int l long l float l double 1 byte 2 byte 4 byte 8 byte 4 byte 8 byte Giống các kiểu dữ liệu số của C++ Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 4 I.1. Các kiểu dữ liệu số l Các phép toán số học giống như C++: +, -, *, /, % l Hằng số nguyên viết như bình thường l Hằng số thực cóthể viết theo 2 dạng: l Dạng thập phân: 2.25 l Dạng mũ: 2.5E3 Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 5 I.2. Kiểu ký tự l Giống như C++, được định nghĩa với từ khóa char l Kiểu char cókích thước 2 byte. Một biến char có thể chứa cả ký tự ASCII vàký tự Unicode. l Kiểu char cóthể dùng như kiểu số. l Hằng ký tự làmột ký tự đặt giữa 2 dấu phẩy trên. Vídụ: ‘A’ l Hằng xâu ký tự làmột dãy ký tự bất kỳ đặt giữa hai dấu nháy kép. Vídụ: “DHNN1” Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 6 I.2. Kiểu ký tự l Các ký tự điều khiển: Description Escape Sequence Unicode Backspace ‘\b’ \u0008 Tab ‘\t’ \u0009 Linefeed ‘\n’ \u000a Carriage return ‘\r’ \u000d Backslash ‘\\’ \u005C Single Quote ‘\’’ \u0027 Double Quote ‘\”’ \u0022 Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 7 I.3. Kiểu logic (boolean) l Khác với C++, Java đưa thêm vào kiểu logic được định nghĩa với tên chuẩn là boolean, chỉ có2 giátrị làtrue vàfalse. l Hằng boolean được viết làtrue vàfalse l Các phép toán logic vàquan hệ giống C++. Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 8 I.4. Kiểu xâu ký tự l Khác với C++, Java đưa vào kiểu dữ liệu xâu ký tự. Kiểu xâu ký tự được định nghĩa với tên chuẩn làString. Thực ra kiểu xâu ký tự làmột lớp đối tượng xâu cósẵn trong Java. l Khi khai báo biến xâu ký tự cóthể khởi tạo bằng một hằng xâu ký tự. String st = “DHNN1”; l Cóthể dùng phép toán + và += để ghép nhiều xâu ký tự, ghép xâu ký tự với dữ liệu không phải xâu ký tự (dữ liệu số). Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 9 Vídụvềghép xâu ký tự String message = "Welcome "+"to " + "Java"; String s = "Chuong" + 2; // Chuong2 String s1 = "Hello" + 'B'; // s1 trở thành HelloB Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 10 II. Khai báo biến vàhằng l Khai báo biến vàkhởi tạo giátrị ban đầu cho biến giống như C++. Vídụ: int a=100; l Khai báo hằng là đặt tên cho một giátrị cụ thể. Cúpháp khai báo hằng như sau: final TenKieu TenHang = GiaTri; Vídụ: final double PI=3.14159; Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 11 III. Biểu thức l Biểu thức trong Java giống trong C++. l Lệnh gán vàbiểu thức gán cũng giống C++. l Thứ tự ưu tiên vàthứ tự thực hiện các phép toán trong một biểu thức giống C++. Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 12 IV. Chuyển đổi kiểu dữ liệu l Java cókhả năng chuyển đổi kiểu tự động, quy tắc chuyển đổi kiểu tự động giống C++. l Cóthể ép kiểu, cúpháp ép kiểu như C++ Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 13 V. Vào/Ra dữ liệu với Java 1. Lấy dữ liệu vào từ bàn phím 2. Đưa dữ liệu ra màn hình 3. Vídụ: Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 14 V.1. Lấy dữ liệu vào từ bàn phím l Để lấy dữ liệu vào từ bàn phím ta dùng phương thức showInputDialog() của lớp JOptionPane, phương thức này cho phép ta nhập dữ liệu qua hộp thoại. l Dữ liệu nhận được từ hội thoại làxâu ký tự => dùng biến xâu để chứa dữ liệu nhập vào, sau đóchuyển xâu ký tự thành kiểu dữ liệu muốn nhập. l Cách nhập như sau: Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 15 V.1. Lấy dữ liệu vào từ bàn phím String st = JOptionPane.showInputDialog( null, “Prompt Message”, “Dialog Title”, JOptionPane.QUESTION_MESSAGE); Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 16 V.1. Lấy dữ liệu vào từ bàn phím l Để chuyển xâu ký tự biểu diễn số thành giátrị số nguyên ta dùng phương thức parseInt của lớp Integer. int intV = Integer.parseInt(intString); l Để chuyển xâu ký tự biểu diễn số thành giátrị số thực ta dùng phương thức parseDouble của lớp Double. double doubleV = Double.parseDouble(doubleString); Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 17 V.2. Đưa dữ liệu ra màn hình l Để đưa dữ liệu ra màn hình ta dùng phương thức showMessageDialog() của lớp JOptionPane, phương thức này cho phép ta đưa dữ liệu qua hộp thoại. l Khi đưa dữ liệu ra hội thoại ta cóthể dùng phép + hoặc += để nối xâu ký tự các các giátrị kiểu dữ liệucơ bản. l Các dùng: Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 18 V.2. Đưa dữ liệu ra màn hình JOptionPane.showMessageDialog(null, "Welcome to Java!", "Example 1.2 Output", JOptionPane.INFORMATION_MESSAGE); Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 19 V.2. Đưa dữ liệu ra màn hình l Để định dạng dữ liệu đưa ra màn hình ta dùng phương thức format() của lớp String, phương thức này định dạng các dữ liệu thành xâu ký tự vàtrả về xâu ký tự đã định dạng đó. String st = String.format ( Hằng xâu chứa các tác tử định dạng, Các dữ liệu ); l Các tác tử định dạng bắt đầu bằng dấu % theo sau làcác chữ cái biểu thị loại dữ liệu sẽ định dạng. Vídụ: %b định dạng giátrị logic thành false hoặc true, %d định dạng các số nguyên,… Bài giảng LT JAVA -Phần 1,Chương 2 GV.NgôCôngThắng 20 V.2. Đưa dữ liệu ra màn hình “Ha Noi”Xâu ký tự%s 2.450E+2Số thực dạng mũ%e 2.45Số thực%f 200Số nguyên%d ‘a’Ký tự%c falselogic%b VídụLoại dữ liệu định dạngTác tử định dạng [...]... Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 13 Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 14 5.5 Mảng nhiều chiều 5.4 Trả về mảng từ phương thức Phương thức trả về mảng thực chất là trả về tham chiếu tới mảng l Muốn phương thức trả về mảng ta định nghĩa phương thức như sau: l l KieuTraVe[ ] TenPThuc(DS Cac tham so) { } Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng Truyền... GV NgôCôngThắng Chương 3 Các lệnh điều khiển chương trình l Chương 3 Các lệnh điều khiển chương trình Ví dụ về lệnh break có nhãn Bài giảng LT JAVA-Phần 1,Chương 3 GV NgôCôngThắng 2 l 3 Ví dụ về lệnh continue có nhãn Bài giảng LT JAVA-Phần 1,Chương 3 GV NgôCôngThắng 4 Chương 3 Các lệnh điều khiển chương trình l l l Chương 3 Các lệnh điều khiển chương trình Bài tập 1: Viết chương trình nhập... lớp l Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng 18 ∑x mean = 19 n i xi2 − ∑ i =1 n (∑xi )2 deviation = Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng i=1 i=1 n n −1 20 Bài tập chương 4 l Bài tập 2: Viết chương trình tính tổng các chữ số trong một số nguyên Ví dụ: số nguyên 234 có tổng các chữ số bằng 2 + 3 + 4 = 9 Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng 21 5.1 Khai báo... ] a; Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 16 5.5 Mảng nhiều chiều l 5.5 Mảng nhiều chiều Tạo mảng nhiều chiều TenBienMang = new Kieu[KT1][KT2]… Trong đó KT1, KT2 là kích thước chiều 1, chiều 2,… Ví dụ: a = new int[3][4]; //Tạo ra mảng hai chiều có 3 hàng 4 cột Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng l 17 Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 5.5 Mảng nhiều... 1,Chương 3 GV NgôCôngThắng 5 Bài giảng LT JAVA-Phần 1,Chương 3 GV NgôCôngThắng 6 4.1 Giới thiệu về phương thức Chương 4 Phương thức (Method) 4.1 Giới thiệu về phương thức 4.2 Tạo phương thức 4.3 Sử dụng phương thức 4.4 Truyền đối số theo giá trị 4.5 Chồng phương thức 4.6 Biến cục bộ 4.7 Các phương thức của lớp Math 4.8 Đóng gói các lớp Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng l l l l... LT JAVA-Phần 1,Chương 2 GV NgôCôngThắng 21 V.3 Ví dụ l Các dữ liệu cần định dạng phải phù hợp với các tác tử định dạng l Mặc định dữ liệu được căn phải trong độ rộng của nó, để căn trái ta thêm dấu trừ ngay sau dấu % Ví dụ %-1 0d => Số nguyên có độ rộng 10, được căn trái l Viết chương trình tính diện tích và chu vi hình chữ nhật biết hai cạnh a, b Bài giảng LT JAVA-Phần 1,Chương 2 GV NgôCông Thắng. .. đối với mảng boolean Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng Sau khi tạo mảng và gán tham chiếu cho biến mảng ta có thể truy nhập trực tiếp các phần tử của mảng thông qua tên biến mảng và chỉ số truy nhập đặt trong ngoặc vuông (giống như C++) l Chỉ số của phần tử mảng có giá trị từ 0 đến KichThuoc - 1 l 9 Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 5.2 Copy mảng 10 5.2 Copy mảng... l l l l 1 Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng 4.2 Tạo phương thức l 2 4.2 Tạo phương thức Cú pháp định nghĩa phương thức hơi khác so với C++ ở chỗ là có thể có thêm các từ khóa modifier trước kiểu trả về Modifier KieuTraVe TenPThuc(DS cac tham so) { //Than phuong thuc } Bài giảng LT JAVA-Phần 1,Chương 4 GV NgôCôngThắng Tất cả các chương trình con trong Java đều thuộc một lớp nào... việc khai báo biến mảng trong Java không tạo ra mảng, tức là không cấp phát vùng nhớ cho mảng, nó chỉ tạo ra một biến mà sau này có thể dùng để tham chiếu tới mảng Biến mảng thực chất là biến tham chiếu Về bản chất biến tham chiếu giống như con trỏ Ví dụ: double[ ] a; Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng l Sau khi khai báo biến... x[0].length, x[1].length,… l Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng Truy nhập phần tử mảng nhiều chiều: TenBienMang[cs1][cs2]… Trong đó cs1, cs2,… là chỉ số chiều 1, chiều 2,… Ví dụ: a[2][3] => truy nhập phần tử hàng 2, cột 3 của mảng hai chiều a 19 Bài giảng LT JAVA-Phần 1,Chương 5 GV NgôCôngThắng 20 Bài tập chương 5 Bài tập 3: Viết chương trình nhập vào một dãy gồm n số nguyên, lưu . PHẦN I CƠ BẢN VỀ LẬP TRÌNH JAVA GV. Ngô Công Thắng Bộ môn Công nghệ phần mềm Khoa Công nghệ thông tin Bài giảng LT JAVA -Phần 1,Chương 1 GV. Ngô Công Thắng. Thiết lập biến môi trường Bài giảng LT JAVA -Phần 1,Chương 1 GV. Ngô Công Thắng 13 Thiết lập biến môi trường Bài giảng LT JAVA -Phần 1,Chương 1 GV. Ngô Công