slide ngon ngu lap trinh java

115 426 0
slide ngon ngu lap trinh java

Đ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

1MỤC LỤC Chương 1: GIỚI THIỆU TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH JAVA .7 1.1. Mở đầu .7 1.2. Giới thiệu về ngôn ngữ lập trình Java 7 1.2.1. Java là gì? 7 1.2.2. Lịch sử phát triển của ngôn ngữ lập trình Java 7 1.2.3. Một số đặc điểm nổi bậc của ngôn ngữ lập trình Java 8 1.3. Các ứng dụng Java 10 1.3.1. Java và ứng dụng Console 10 1.3.2. Java và ứng dụng Applet 11 1.3.3. Java và phát triển ứng dụng Desktop dùng AWT và JFC 12 1.3.4. Java và phát triển ứng dụng Web 13 1.3.5. Java và phát triển các ứng dụng nhúng .14 1.4. Dịch và thực thi một chương trình viết bằng Java 14 1.5. Chương trình Java đầu tiên 15 1.5.1. Tạo chương trình nguồn HelloWordApp 15 1.5.2. Biên dịch tập tin nguồn HelloWordApp 16 1.5.3. Chạy chương trình HelloWordApp .16 1.5.4. Cấu trúc chương trình HelloWordApp 17 Sử dụng phương thức/biến của lớp 17 1.6. Công cụ lập trình và chương trình dịch 17 1.6.1. J2SDK .17 1.6.2. Công cụ soạn thảo mã nguồn Java 18 Chương 2: .21 HẰNG, BIẾN, KIỂU DỮ LIỆU, .21 TOÁN TỬ, BIỂU THỨC VÀ CÁC .21 CẤU TRÚC ĐIỀU KHIỂN TRONG JAVA 21 2.1. Biến 21 2.2. Các kiểu dữ liệu cơ sở .23 2.2.1. Kiểu số nguyên 24 2.2.2. Kiểu dấu chấm động .26 22.2.3. Kiểu ký tự (char) 26 2.2.4. Kiểu luận lý (boolean) 27 2.3. Hằng: 27 2.4. Lệnh, khối lệnh trong java .28 2.5. Toán tử và biểu thức .29 2.5.1. Toán tử số học 29 2.5.2. Toán tử trên bit .29 2.5.3. Toán tử quan hệ & logic .29 2.5.4. Toán tử ép kiểu 30 2.5.5. Toán tử điều kiện .30 2.5.6. Thứ tự ưu tiên 30 2.6. Cấu trúc điều khiển .31 2.6.1. Cấu trúc điều kiện if … else .31 2.6.2. Cấu trúc switch … case 32 2.6.3. Cấu trúc lặp 32 2.6.4. Cấu trúc lệnh nhảy (jump) 33 2.7. Lớp bao kiểu dữ liệu cơ sở (Wrapper Class) 33 2.8. Kiểu dữ liệu mảng .34 2.8.1. Khái niệm mảng .34 2.8.2. Khai báo mảng .34 2.8.3. Cấp phát bộ nhớ cho mảng .35 2.8.4. Khởi tạo mảng 35 2.8.5. Truy cập mảng .35 2.9. Một số ví dụ minh họa: .36 Chương 3: HƯỚNG ĐỐI TƯỢNG TRONG JAVA .47 3.1. Mở đầu .47 3.2. Lớp (Class) .48 3.2.1. Khái niệm 48 3.2.2. Khai báo/định nghĩa lớp Ngôn ngữ lập trình Java TỔNG QUAN TÀI LIỆU       Những khái niệm lập trình hướng đối tượng Cơ ngôn ngữ Java Cơ đối tượng (Objects), đối tượng liệu đơn giản Lớp (Classes) kế thừa (Inheritance) Giao diện (Interfaces) Packages Giải lỗi thường gặp viết chương trình Bài 1: Những khái niệm lập trình hướng đối tượng Đối tượng gì? Định nghĩa: Đối tượng gói phần mềm bao gồm biến (variables) phươnng thức liên quan (related methods)  Variables: lưu trữ trạng thái (states) đối tượng  Methods: thể hành động (behavior) đối tượng Việc đóng gói có lợi ích:  Tính module (Modularity)  Che giấu thông tin (Information-hiding)  Thông điệp (Message) gì? Những đối tượng phần mềm tương tác giao tiếp với cách truyền thông điệp (sending message) Thông điệp có lợi ích quan trọng:  Mọi tương tác đối tượng thực thông điệp  Những đối tượng khác process, máy khác gửi/nhận thông điệp cho  Lớp (class) gì? Lớp mô tả biến, phương thức cho tất đối tượng thuộc lớp Sự khác đối tượng với lớp:  Đối tượng thể (instance) cụ thể lớp  Thuật ngữ đối tượng (object) nhiều dùng để lớp (class) thể (instance) lớp  Kế thừa (Inheritance) gì?    Lập trình hướng đối tượng đưa thêm định nghĩa: lớp (subclass), lớp cha (superclass), kế thừa (inherit), override Lớp kế thừa toàn biến lớp cha Ngoài ra, lớp kế thừa số phương thức lớp cha Lợi ích kế thừa: lớp cung cấp phương thức chuyên biệt (code reuse) Lập trình viên tạo lớp abstract để định nghĩa phương thức chung SUMMARY         Class khuôn mẫu cho đối tượng Objects tạo từ class Thế constructor Khởi tạo đối tượng Biến phương thức lớp Biến phương thức instance Interface giao thức hành động Implement interface implement tất phương thức interface Interface gì? Trong ngôn ngữ lập trình Java, interface kiểu Giống với class, interface định nghĩa phương thức Khác với class, interface không implement phương thức Interface có lợi ích:      Thể phần chung lớp quan hệ với Khai báo phương thức mà lớp phải implement Phơi bày giao diện đối tượng mà không phơi bày lớp đối tượng Một cách để thực đa kế thừa Bài 2: Cơ ngôn ngữ Java Giao diện (Interfaces) Packages Bài 5: Tạo sử dụng interface Interface gì? Interface tập hợp method khai báo không định nghĩa Sự khác interface abstract class:  Interface implement phương thức  Class implement nhiều interface có super class  Interface không thuộc class hierarchy  Những lớp liên quan implements interface  Khai báo interface    Interface default abstract Tất phương thức interface, default (and only) public abstract (không thể static…) Tất biến khai báo interface, default (and only) public static final Implement interface Class implements nhiều interface Các interface khai báo sau mệnh đề implements public class StockApplet extends Applet implements StockWatcher { … }  Sử dụng interface kiểu tham chiếu  Sau định nghĩa, interface dùng kiểu liệu (data type) Ta gán biển kiểu interface instance class implements interface public class StockMonitor { public void watchStock(StockWatcher watcher, TickerSymbol tickerSymbol, BigDecimal delta) { } } Interface mở rộng   Nếu ta thêm phương thức vào interface, class cũ implement interface bị hỏng Ta định nghĩa interface extends interface cũ, class lựa chọn dùng interface hay interface cũ Static import Ta import thành phần static lớp lệnh: import static class.*; import static class.memberName  Sau chương trình ta tham chiếu đến member memberName import static java.lang.Math.*; … Ta truy cập đến thành phần static tên: PI, E, cos(), round()  Tạo sử dụng package Thế package?   Package tập hợp kiểu (classes, interfaces, enums, annotations) có liên hệ với cung cấp khả bảo vệ truy cập quản lý name space Nhắc lại: access modifier default (không khai báo gì) truy cập với đối tượng package Cách tạo package? Dùng từ khóa package ; đầu file package  Lệnh có phải lệnh file package graphics;  public class Circle extends Graphic implements Draggable { } Cách đặt tên package? Tên package tương ứng với thư mục chứa file sau dịch Vì tên package phải phù hợp với hệ thống file hệ điều hành  Package chứa bên package file khác VD package com.fpt.fss.fmt; …  Sử dụng members package Ta dùng lệnh import  Các lệnh import có phải đứng sau lệnh package VD package com.fpt.fss.fmt; import java.io.*;  Lệnh import java.io.* import class, interface… package java.io mà không import subpackage package java.io  Nếu xảy xung đột tên package, ta phải sử dụng tên đầy đủ: .  Quản lý file nguồn file class (1) Quản lý file nguồn file class (2) Chương 2 Giới thiệu ngôn ngữ lập trình Java1. Giới thiệu công nghệ Java1.1 Lịch sử phát triểnLịch sử phát triển của Java bắt đầu năm 1991 khi SUN tiến hành các dự án lập trình cho vi xử lý dùng trong các thiết bị điện tử khác nhau. C++ không đáp ứng được các yêu cầu này vì C++ cho đem mã nguồn từ máy này sang máy khác nhưng sau khi biên dịch lại hoàn toàn phụ thuộc vào từng bộ vi xử lý cụ thể. Trong khi đó bộ vi xử lý dùng trong các thiết bị điện tử rất đa dạng và có vòng đời khá ngắn ngủi. Nếu ta thay đổi bộ xử lý dẫn đến cần phải thay đổi trình biên dịch C++, điều này gây lên tốn kém. SUN đã thiết kế một ngôn ngữ lập trình mới có tính khả chuyển cao hơn đó chính là Java. Java là tên địa phương nơi xuất xứ của một loại cà phê ngon nổi tiếng.Java được chính thức công bố năm 1995 và ngay lập tức đã tạo lên một trào lưu mới trên toàn thế giới và từ đó đến nay vẫn tạo được sức cuốn hút mạnh mẽ. Bởi vì Java không chỉ đơn thuần là một ngôn ngữ lập trình mà nó là giải pháp cho nhiều vấn đề. 1.2. Cấu trúc của máy ảo Java (Java Virtual Machine)Chương trình ứng dụng hoạt động bằng cách sử dụng các đối tượng của Java (Java Object). Máy ảo Java tạo thành một cầu nối giữa trình ứng dụng viết bằng Java và hệ điều hành.Máy ảo Java bao gồm các thành phần sau : • Trình nạp lớp (Class Loader): đọc bytecode từ đĩa hoặc từ kết nối mạng.• Trình kiểm tra lớp (Class Verifier): Kiểm tra các lớp sẽ không sinh ra các lỗi ảnh hưởng tới hệ thống khi thực thi.• Trình thực thi (Execution Unit): sẽ thực hiện các lệnh được quy định trong từng bytecode.Trong bộ công cụ Java, tệp tin java.exe chính là máy ảo Java.1.3 Các đặc trưng của Java• Java là một môi trường độc lập (Independent Platform)Do cấu trúc của Java nên ta có thể soạn thảo chương trình trên bất kỳ hệ thống nào. Sau khi đã được biên dịch thành tệp tin lớp (*.class) ứng dụng có thể thực thi ở bất kỳ hệ thống nào. Đó là đặc tính mà các ngôn ngữ khác không có. Chương trình Java: tập hợp các đối tượngMáy ảo JavaHệ điều hành1 • Java là một ngôn ngữ lập trình hướng đối tượng thuần túy (Pure Object Oriented Programming)Java là một ngôn ngữ lập trình hướng đối tượng thuần túy, mọi thứ trong Java đều là đối tượng.• Java là một ngôn ngữ có tính khả chuyển (Portibility)Java có tính khả chuyển đối với cả mã nguồn và bản thân mã biên dịch (bytecode)• Java là môi trường xử lý phân tán (Distributed Enviroments)Bytecode không phụ thuộc vào hệ thống vì vậy bytecode có thể nằm phân tán trên mạng. Việc liên kết với thư viện chỉ được thực hiện vào lúc chạy chương trình do vậy mã byte thường gọn nhẹ. Chương trình Java được nạp dần một cách linh hoạt nên không gây quá tải cho mạng. Ngoài ra, Java còn cho phép xử lý đa tuyến đoạn. Cơ chế truyền thông điệp thuận tiện cho việc tổ chức mạng.• Java là môi trường an toànKhi phát triển các ứng dụng phân tán thì một trong nhừng vấn đề được quan tâm hàng đầu là an toàn hệ thống. Java được thiết kế để đảm bảo an toàn cho người dùng Java trên mạng. Java có bốn tầng bảo an:Tầng 1: Mức ngôn ngữ và trình biên dịch. Java không có kiểu con trỏ. Trình biên dịch kiểm tra kiểu rất chặt chẽ. Mọi chuyển đổi kiểu đều phải được thực hiện một cách tường minh. Trình LẬP TRÌNH JAVA Chương LỚP TRONG JAVA GV: Võ Hoàng Phương Dung Nội dung  Các khái niệm lập trình hướng đối tượng  Khai báo lớp  Các lớp lồng  Lớp Abstract  Gói  Phạm vi truy cập  Interface  Thừa kế đa hình 2/25 Các khái niệm  Đối tượng (Object) • Thuộc tính (fields) • Hành vi (methods) Rectangle Width: 50cm Height: 30cm Color: Yellow Draw() changeSize() 3/25 Các khái niệm  Thuộc tính (fields) liệu trình bày đặc điểm đối tượng • Mọi đối tượng lớp phải có thuộc tính giá trị thuộc tính khác • Một thuộc tính đối tượng nhận giá trị khác thời điểm khác  Ví dụ: đối tượng hình chữ nhật có thuộc tính chiều dài, chiều rộng 4/25 Các khái niệm  Phương thức (method) cách đáp ứng chức tác động lên liệu đối tượng • Các phương thức xác định cách thức hoạt động đối tượng thực thi đối tượng cụ thể tạo  Ví dụ: hoạt động chung lớp hình chữ nhật tính chu vi diện tích 5/25 Các khái niệm  Lớp (Class) • Là tập hợp đối tượng loại • Là khuôn mẫu tạo đối tượng • Là kiểu liệu phần mềm Lớp: Rectangle Đối tượng: RectangleA Đối tượng: RectangleB 6/25 Các khái niệm  Các tính chất lập trình hướng đối tượng • Tính đóng gói • Tính thừa kế • Tính đa hình 7/25 Các khái niệm  Tính đóng gói • Đóng gói tiến trình che giấu việc thực thi chi tiết đối tượng • Giới hạn quyền truy cập đến thành phần đối tượng • Cơ chế cho việc che dấu thông tin 8/25 Các khái niệm  Thừa kế (Inheritance) • Xây dựng lớp (subclass) từ lớp cũ (superclass) • Lớp có tất thuộc tính phương thức lớp cũ thêm vào số đặc tính riêng khác • Các lớp định nghĩa lại phương thức thừa kế để xử lý thuộc tính riêng chúng • Ví dụ: Lớp xe đạp leo núi lớp xe đạp đua lớp lớp xe đạp Lớp xe đạp gọi lớp cha 9/25 Các khái niệm  Tính đa hình • Phương thức tên thực khác đối tượng, lớp khác • Ví dụ: hai lớp Hình chữ nhật hình tròn có phương thức tính chu vi, diện tích Nhưng cách tính chu vi đối tượng hình chữ nhật hình tròn lại khác 10/25 abstract class MyAbstractClass { abstract void callme(); void callmetoo() { System.out.println(“Day khong phai abstract"); } } class B extends MyAbstractClass { void callme() { System.out.println(“Thuc thi lop B"); } } public class Main { public static void main(String args[]) { B b = new B(); b.callme(); b.callmetoo(); } } 41/25 Gói (Package)  Là chứa lớp interface  Trong Java, gói thể thư mục  Tác dụng • Nhóm thành phần liên quan • Giới hạn truy cập từ thành phần bên • Tổ chức code dễ quản lý 42/25 Gói (Package)  Khai báo gói package tên_gói;  Khai báo gói đa cấp package pkg1[.pkg2[.pkg3]];  Ví dụ package graphics; public class Rectangle{ … public double calculateArea() {  return width*height;  } } 43/25 Gói (Package)  Truy cập thành phần thuộc gói • Sử dụng tên: graphics.Circle myCircle = new graphics.Circle(); • Sử dụng câu lệnh import để nạp thành phần import graphics.Rectangle; Rectangle myRectangle = new Rectangle(); • Sử dụng import để nạp toàn gói import graphics.*; Circle myCircle = new Circle(); Rectangle myRectangle = new Rectangle(); 44/25 Gói (Package)  Quản lý code • Khai báo gói • Các câu lệnh import • Khai báo thành phần package MyPack; import java.util.Date; public class Main { public static void main(String args[]) { System.out.println(new Date()); } } 45/25 Phạm vi truy cập  Cách khai báo [modifier] class ten_lop{ [modifier] dataType ten_thuoctinh; [modifier] returnedValue ten_phuongthuc{ … } } 46/25 Phạm vi truy cập  Java có phạm vi truy cập cho thành phần • public: truy cập tất thành phần khác • private: truy cập thành phần lớp • protected: truy cập lớp • default (không khai báo): truy cập thành phần gói 47/25 Phạm vi truy cập  Vị trí & phạm vi truy cập 48/25 Phạm vi truy cập o Modifier Alpha 49/25 Interface Khai báo [modifier] interface name { return-type method-name1(parameter-list); LẬP TRÌNH JAVA Chương NGOẠI LỆ GV: Võ Hoàng Phương Dung Nội dung  Định nghĩa ngoại lệ (Exception)  Bắt giữ & xử lý ngoại lệ  Chuyển tiếp (Ném) ngoại lệ  Định nghĩa lớp Ngoại lệ 2/25 Định nghĩa ngoại lệ  Ngoại lệ (Exception): kiện xuất trình thực thi chương trình gây phá vỡ dòng thực thi chương trình  Ví dụ: đọc file không tồn  Lớp Exception  • Là lớp cha cho tất lớp thể ngoại lệ.  • phương thức thông dụng lớp Exception.  toString(): Trả chuỗi mô tả Ngoại lệ.   printStackTrace(): In thông tin chi tiết Ngoại lệ, method gây ngoại lệ, dòng code xảy ngoại lệ.   3/25 Định nghĩa ngoại lệ 4/25 Định nghĩa ngoại lệ     ArithmeticException: xảy Chương trình có lỗi đại số VD: Chia cho 0.  NumberFormatException: Xảy thực chuyển đổi chuỗi không hợp lệ sang kiểu số.  NullPointerException: Xảy đối tượng chưa khởi tạo mà truy cập đến thành phần đối tượng đó.  ArrayIndexOutOfBoundException: Xảy truy cập đến phần tử mảng có số bé không hoặc lớn kích thước mảng.  5/25 Bắt giữ & xử lý ngoại lệ  Cú pháp try { // Khối code gây ngoại lệ } catch(ExceptionType name) { // Khối code xử lý ngoại lệ } … catch(ExceptionType name) {…} finally{ // Khối code giải phóng tài nguyên } 6/25 Bắt giữ & xử lý ngoại lệ  Khối try kèm khối catch finally  Có thể có nhiều khối catch sau khối try  Khối finally thực  Nhiều khối try … catch lồng 7/25 Bắt giữ & xử lý ngoại lệ public class MyException { public static void main(String args[]){ calculate(9,0); } public static void calculate(int num, int i){ try{ System.out.println(num/i); }catch(ArithmeticException e){ System.out.println("error"); } finally{ System.out.println("finished");} } } 8/25 Bắt giữ & xử lý ngoại lệ 9/25 Chuyển tiếp ngoại lệ    Ngoại lệ chuyển đến phương thức gọi, quản lý ngoại lệ tìm thấy, kết thúc throw: Dùng để ném ngoại lệ mà không xử lý phương thức.  throws: Dùng đế khai báo danh sách ngoại lệ mà phương thức ném 10/25 Chuyển tiếp ngoại lệ public class MyException { public static void main(String args[]){ try{ calculate(9,0); }catch(ArithmeticException e){ System.out.println("error"); }finally{ System.out.println("finished"); } } public static void calculate(int num, int i){ if(i==0) throw new ArithmeticException(); else System.out.println(num/i); } } 11/25 Chuyển tiếp ngoại lệ public class MyException { public static void main(String args[]){ try{ calculate(9,0); }catch(ArithmeticException e){ System.out.println("error"); }finally{ System.out.println("finished"); } } public static void calculate(int num, int i) throws ArithmeticException{ System.out.println(num/i); } } 12/25 Chuyển tiếp ngoại lệ void writeList() throws IOException, ArrayIndexOutOfBoundsException { PrintWriter out = new PrintWriter(new FileWriter("OutFile.txt")); for (int i = 0; i < SIZE; i++) { out.println("Value at: " + i + " = " + vector.elementAt(i)); } out.close(); } 13/25 Các loại Exception  Có loại ngoại lệ • Cần kiểm tra: trình biên dịch kiểm tra xem có viết code xử lý ngoại lệ không  Ví dụ: IOException • Không cần kiểm tra  Ngoại lệ runtime (Runtime exception) 14/25 Các loại Exception Ví dụ ngoại lệ cần kiểm tra InputStreamReader reader; BufferedReader bufReader; reader = new InputStreamReader(System.in); bufReader = new BufferedReader(reader); try { String s = bufReader.readLine(); } catch (IOException e) { }  15/25 Định nghĩa lớp ngoại lệ  Có thể tạo lớp xử lý ngoai lệ riêng cách thừa kế từ lớp Exception từ lớp Exception  Cú pháp class MyException extends Exception  {    } LẬP TRÌNH JAVA Chương LẬP TRÌNH GUI GV: Võ Hoàng Phương Dung Nội dung  Giới thiệu GUI (Graphical user interface)  Vật chứa (Container)  Thành phần (Component)  Quản lý cách trình bày (Layout manager)  Xử lý kiện 2/25 Giới thiệu GUI  GUI cung cấp chức nhập liệu theo cách thân thiện với người dùng  Các thư viện: AWT, SWING, SWT…  AWT viết tắt Abstract Windowing Toolkit  AWT lớp Java cho phép tạo GUI chấp nhận nhập liệu người dùng thông qua bàn phím chuột 3/25 Giới thiệu GUI  AWT cung cấp thành phần khác để tạo GUI: • • • • • • Vật chứa (Container ) Thành phần (Component) Trình quản lý cách trình bày (Layout manager) Đồ họa (Graphic) tính vẽ (draw) Phông chữ (Font) Sự kiện (Event) 4/25 Giới thiệu GUI  Gói AWT chứa lớp, giao diện gói khác  Sau mô tả phần nhỏ hệ thống phân cấp lớp AWT 5/25 Vật chứa (Container)  Container vùng mà bạn đặt thành phần giao diện bạn vào  Gói java.awt chứa lớp gọi Container  Frame Panel vật chứa thường sử dụng • Frame cửa sổ độc lập • Panel vùng nằm cửa sổ khác 6/25 Vật chứa (Container)  Frame: constructor để tạo frame • Frame(): Tạo frame không hiển thị (invisible) • Frame(String title): Tạo frame không hiển thị, có tiêu đề 7/25 Vật chứa (Container)  Ví dụ import java.awt.*; public class MyFrame extends Frame { public MyFrame(String title){ super(title); } public static void main(String[] args){ MyFrame myframe=new MyFrame("Hello"); myframe.setSize(300, 200); myframe.setVisible(true); } } 8/25 Vật chứa (Container)  Panel sử dụng để nhóm số thành phần lại với • Hàm khởi tạo: Panel()  Dialog: đối tượng cửa sổ cửa sổ chương trình Có dạng • Modal • Non-modal 9/25 Vật chứa (Container)  Ví dụ public class MyPanel extends Panel { public static void main(String[] args){ MyPanel p=new MyPanel(); Frame f=new Frame("Test Panel"); f.add(p); f.setSize(200,500); f.setVisible(true); } } 10/25 Xử lý kiện  Ví dụ: Xử lý kiện nút nhấn 26/25 Xử lý kiện  Cài đặt giao diện listener thích hợp VD: class MyListener implements ActionListener  Thi hành phương thức listener class MyListener implements ActionListener{ public void actionPerformed(ActionEvent e) { //code } } 27/25 Xử lý kiện  Xác định tất thành phần tạo kiện Đăng ký nghe kiện (event listener) đến thành phần obj.addXX(h) obj: thành phần tạo kiện h: nghe kiện loại XX VD: button1.addActionListener(new myListener()) 28/25 Xử lý kiện  Code class MyListener implements ActionListener{ public void actionPerformed(ActionEvent e) { System.out.print(“Clicked !!!”); } } 29/25 Xử lý kiện public class ButtonEvent extends Frame { private Button btn=new Button("Click Here"); public ButtonEvent(){ super(); this.add(btn); btn.addActionListener(new myListener()); } public static void main(String[] arg){ ButtonEvent myclass=new ButtonEvent(); myclass.setSize(100,200); myclass.pack(); myclass.setVisible(true); } } 30/25 Xử lý kiện  Code public class ButtonEvent2 extends Frame implements ActionListener{ private Button btn=new Button("Click Here"); public void actionPerformed(ActionEvent e) { System.out.print("DDD"); } public ButtonEvent2(){ super(); this.add(btn); btn.addActionListener(this); } 31/25 Xử lý kiện public static void main(String[] arg){ ButtonEvent myclass=new ButtonEvent(); myclass.setSize(100,200); myclass.pack(); myclass.setVisible(true); } } 32/25 Xử lý kiện  Bảng sau kiện khác mô tả chúng 33/25 Xử lý kiện  Các interface listener ComponentListener 34/25 Xử lý kiện  Danh sách listener cho thành phần 35/25 Xử lý kiện  Lấy thông tin event: • Object getSource(): trả lại đối tượng gây event • Ví dụ public void actionPerformed(ActionEvent e) { if(e.getSource()==btn) System.out.print("DDD"); } 36/25 Xử lý kiện  Các lớp thích nghi (Event Adapters) • Nhiều listener interface có nhiều phương thức • Ví dụ: MouseListener có phương thức  mousePressed  mouseReleased  mouseEntered  mouseExited  mouseClicked • Sử ...TỔNG QUAN TÀI LIỆU       Những khái niệm lập trình hướng đối tượng Cơ ngôn ngữ Java Cơ đối tượng (Objects), đối tượng liệu đơn giản Lớp (Classes) kế thừa (Inheritance) Giao diện... Implement interface implement tất phương thức interface Interface gì? Trong ngôn ngữ lập trình Java, interface kiểu Giống với class, interface định nghĩa phương thức Khác với class, interface... diện đối tượng mà không phơi bày lớp đối tượng Một cách để thực đa kế thừa Bài 2: Cơ ngôn ngữ Java Biến (Variables) Variables   Biến mục liệu đặt tên Cách khai báo biến: type name [=

Ngày đăng: 26/10/2017, 17:46

Mục lục

  • Ngôn ngữ lập trình Java

  • TỔNG QUAN TÀI LIỆU

  • Bài 1: Những khái niệm trong lập trình hướng đối tượng

  • Đối tượng là gì?

  • Thông điệp (Message) là gì?

  • Lớp (class) là gì?

  • Kế thừa (Inheritance) là gì?

  • Bài 2: Cơ bản về ngôn ngữ Java

  • Kiểu dữ liệu (1): Primitives

  • Kiểu dữ liệu (2): ví dụ

  • Kiểu dữ liệu (3): tham chiếu

  • Phạm vi của biến

  • Toán tử tính toán (Arithmetic)

  • Thứ tự ưu tiên của toán tử

  • Câu lệnh - statement

  • Câu lệnh điều khiển

  • while, do - while

  • Lệnh xử lý exception try catch finally

  • break, continue, return (branching statements)

  • Life Cycle của một đối tượng

Tài liệu cùng người dùng

Tài liệu liên quan