Bài giảng - Giao án: Bài giảng Java chương 2 javabeans

29 866 0
Bài giảng - Giao án: Bài giảng Java chương 2 javabeans

Đ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

LẬP TRÌNH JAVA NÂNG CAO Chương 02: JavaBeans Bộ môn: Lập trình máy tính Nội dung chương 02  Tổng quan về JavaBeans  Công nghệ phần mềm dựa trên các thành phần  Các thuộc tính của thành phần JavaBeans  Introspector  Xử lý sự kiện của thành phần JavaBeans  Các bước xây dựng JavaBeans  Lớp BeanInfo  Tích hợp JavaBeans với các thành phần khác Giới thiệu JavaBeansJavaBeans là gì? – Các thành phần phần mềm được viết bằng Java – Các thành phần kết nối và cấu hình – Builder Tools cho phép kết nối và cấu hình Beans – Mở đầu cho ‘Age of Component Developer’ – Đưa các phương pháp công nghệ vào trong công nghệ phần mềm (e.g. electronics…) Định nghĩa  JavaBeans là một thành phần phần mềm tái sử dụng được, có thể thao tác một cách trực quan trong ‘builder tool’.  JavaBeans API cung cấp một framework cho phép định nghĩa các thành phần phần mềm có thể nhúng và tái sử dụng được.  JavaBeans là những giao tiếp lập trình được, để tạo ra những khối mã xây dựng sẵn và có thể dùng lại được Công nghệ phần mềm dựa trên thành phần  Nhu cầu sử dụng lại mã – Công nghệ phần mềm thay đổi nhanh chóng – Tính phức tạp của dự án cùng với khối lượng các đoạn mã lệnh khổng lồ  Xây dựng phần mềm từ các thành phần – Phần mềm được lắp ráp từ các thành phần – Thành phần là những đối tượng nhỏ độc lập hoàn toàn với ứng dụng (ví dụ: button) Các thuộc tính của thành phần JavaBeans  Thuộc tính: biểu diễn trạng thái của Beans – Biểu diễn trạng thái của thành phần JavaBeans – Thay đổi thuộc tính sẽ thay đổi diện mạo và hành vi của thành phần  Thay đổi thuộc tính của thành phần – Thay đổi trực tiếp bằng các dòng lệnh – Sử dụng các công cụ trực quan (ví dụ JBuilder)  Các phương thức truy cập: setter/getter Thuộc tính có chỉ số  Thuộc tính có chỉ số (Indexed properties) – Lấy và đặt các phần tử giá trị mảng public void setXXX(int index, type value); public void setXXX(type values[]); public type getXXX(int index); public type[] getXXX(); Thuộc tính thể hiện sự thay đổi  Bound properties: Phát sinh sự kiện khi thay đổi giá trị  Cài đặt một thuộc tính thông báo cho các thành phần Beans khác biết khi nó thay đổi giá trị: cài đặt hai phương thức đăng ký và loại bỏ đối tượng listener public void addPropertyChangeListener( PropertyChangeListener l) { changes.addPropertyChangeListener(l); } và: public void removePropertyChangeListener(PropertyChangeListener l) { changes.removePropertyChangeListener(l); } Ví dụ: Tạo thành phần A import java.util.*; import java.beans.*; public class A{ protected PropertyChangeSupport changeAgent = new PropertyChangeSupport(this); private int size = 0; public int getSize(){ return size; } public void setSize(int newSize){ int oldSize = size; size = newSize; changeAgent.firePropertyChange("size", new Integer(oldSize), new Integer(newSize)); } public void addSizeListener(PropertyChangeListener lsn){ changeAgent.addPropertyChangeListener(lsn); } public void removeSizeListener(PropertyChangeListener lsn){ changeAgent.removePropertyChangeListener(lsn); } } Ví dụ: Sử dụng A import java.util.*; import java.beans.*; public class UseA{ public static void main(String[] arg){ A bean = new A(); bean.addSizeListener(new myListenerA()); bean.setSize(11); } } class myListenerA implements PropertyChangeListener { public void propertyChange (PropertyChangeEvent e) { Integer newVal = (Integer)e.getNewValue(); Integer oldVal = (Integer)e.getOldValue(); String propName = e.getPropertyName(); System.out.println("Change " + propName + " from " + oldVal + " to " + newVal); } } [...]... kế phương thức Thiết kế sự kiện Kiểm tra JavaBeans Thuộc tính phải thể hiện đúng bản chất Phương thức phải hỗ trợ được tính năng mà thành phần JavaBeans cung cấp Sự kiện phải kết nối được với thành phần JavaBeans khác Đóng gói JavaBeans Đóng gói JavaBeans Lớp BeanInfo.class: Chứa thông tin về các thuộc tính, phương thức, tình huống, biểu tượng mà thành phần JavaBeans cung cấp Tập tin kê khai (manifest... thân thành phần JavaBeans là nơi phát sinh sự kiện Đối tượng listener là các đối tượng khác Đăng ký đối tượng listener với thành phần JavaBeans public void add ( e) public void remove ( e) Xây dựng một JavaBean Chuẩn bị: Mục đích của thành phần JavaBeans? Các chức năng của thành phần JavaBeans? Hướng phát triển của thành phần JavaBeans? Thiết... tượng mà thành phần JavaBeans cung cấp Tập tin kê khai (manifest file): Liệt kê tất cả các tập tin mà thành phần JavaBeans sử dụng Đặt tên: smith/proj/beans/BeanName.class Java- Bean: True Đóng gói JavaBeans: Sử dụng chương trình jar.exe đi kèm với bộ JDK Cách dùng: jar {ctx}[option][jar-file][manifest file] files BeanInfo Cung cấp thêm thông tin, sử dụng các đối tượng FeatureDescripter Các lớp con:... mousePressed(MouseEvent e) {} public void mouseReleased(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} } Xử lý sự kiện bên trong (tt) Cách 2: bản thân thành phần JavaBeans cài đặt cho các giao tiếp listener và đăng ký với hệ thống thông qua biến this Ví dụ: public class BeanTest extends Panel implements Mouselistener{ addMouseListener( this); public void mouseClicked(MouseEvent... hai phương thức public void addVetoableChangeListener (VetoableChangeListener lsn){ } public void removeVetoableChangeListener (VetoableChangeListener lsn){ } Ví dụ: Tạo thành phần B import java. util.*; import java. beans.*; public class B{ protected VetoableChangeSupport veto = new VetoableChangeSupport(this); private int size = 0; public int getSize(){return size; } public void setSize(int newSize){... addSizeListener(VetoableChangeListener lsn){ veto.addVetoableChangeListener(lsn); } public void removeSizeListener(VetoableChangeListener lsn){ veto.removeVetoableChangeListener(lsn); }} Ví dụ: Sử dụng B import java. util.*; import java. beans.*; public class UseB{ public static void main(String[] arg){ B bean = new B(); bean.addSizeListener(new myListenerB()); bean.setSize(10);System.out.println("> size after setting "... throw (new PropertyVetoException("Value greater than 100", e)); } System.out.println("Change " + pName + " from " + oV + " to " + nV); }} Introspection Introspection là bộ phân tích, qua đó Java xem xét các đoạn mã của chương trình để tìm ra những phương thức dùng để xây dựng và áp dụng cho từng thuộc tính cũng như tình huống cụ thể Ví dụ: public int getWeight() public void setWeight(int newWeight) Tạo... tượng sản sinh sự kiện Đối tượng tiếp nhận và xử lý sự kiện phát sinh từ đối tượng khác: đối tượng listener Sự kiện bên trong Bản thân hệ thống là nơi phát sinh sự kiện Đối tượng listener là thành phần JavaBeans ComponentListener: nhận biết sự kiện đối tượng thay đổi kích thước (resize), di chuyển (move), hiện ra (show) hay ẩn đi (hidden) FocusListener: sự kiện đối tượng nhận Focus KeyListener: sự kiện... các đối tượng FeatureDescripter Các lớp con: – BeanDescripter, PropertyDescripter, IndexedPropertyDescripter, EventSetDescripter, MethodDescripter, ParameterDescripter BeanInfo ICON để biểu diễn Bean Giao diện Customizer (wizard for set up) Tham chiếu Property Editor Liệt kê các đặc tính với descriptions Liệt kê các phương thức với descriptions Phương thức thiết lập các đặc tính mặc định MyBean mb . TRÌNH JAVA NÂNG CAO Chương 02: JavaBeans Bộ môn: Lập trình máy tính Nội dung chương 02  Tổng quan về JavaBeans  Công nghệ phần mềm dựa trên các thành phần  Các thuộc tính của thành phần JavaBeans. phần JavaBeans  Các bước xây dựng JavaBeans  Lớp BeanInfo  Tích hợp JavaBeans với các thành phần khác Giới thiệu JavaBeans  JavaBeans là gì? – Các thành phần phần mềm được viết bằng Java – Các. mềm (e.g. electronics…) Định nghĩa  JavaBeans là một thành phần phần mềm tái sử dụng được, có thể thao tác một cách trực quan trong ‘builder tool’.  JavaBeans API cung cấp một framework cho

Ngày đăng: 17/04/2014, 11:34

Từ khóa liên quan

Mục lục

  • LẬP TRÌNH JAVA NÂNG CAO

  • Nội dung chương 02

  • Giới thiệu JavaBeans

  • Định nghĩa

  • Công nghệ phần mềm dựa trên thành phần

  • Các thuộc tính của thành phần JavaBeans

  • Thuộc tính có chỉ số

  • Thuộc tính thể hiện sự thay đổi

  • Ví dụ: Tạo thành phần A

  • Ví dụ: Sử dụng A

  • Thuộc tính ràng buộc

  • Ví dụ: Tạo thành phần B

  • Ví dụ: Sử dụng B

  • Introspection

  • Phương thức mẫu cho thuộc tính

  • Phương thức mẫu cho sự kiện

  • Xử lý sự kiện

  • Sự kiện bên trong

  • Xử lý sự kiện bên trong

  • Xử lý sự kiện bên trong (tt)

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

Tài liệu liên quan