1. Trang chủ
  2. » Giáo Dục - Đào Tạo

MOB1022 slide7 enumerations, autoboxing, static import, and annotations

28 81 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 28
Dung lượng 1,1 MB

Nội dung

LẬP TRÌNH JAVA BÀI 7: ENUMERATIONS, AUTOBOXING, STATIC IMPORT, AND ANNOTATIONS PHẦN MỤC TIÊU     Enumerations Autoboxing Static Import Annotations ENUMERATION Enumeration kiểu liệu chứa tập số Các giá trị enumeration mặc định static final Để tạo enumeration, sử dụng từ khóa enum public enum Transport{ CAR, TRUCK, AIRPLANE, TRAIN, BOAT } CAR, TRUCK, … gọi số liệt kê ENUMERATION Khai báo: Transport tp; Trong phép gán tp = Transport.CAR; Trong phép so sánh if (tp == Transport.TRAIN) Trong câu lệnh switch switch(tp){ case CAR: case TRUCK: … } ENUMERATION Phương thức values() Lấy mảng số Transport tps[] = Transport.values(); Phương thức valueOf(const) Lấy số có giá trị const tp = Transport.valueOf("TRAIN"); ENUMERATION Thuộc tính Phương thức khởi tạo Phương thức get ENUMERATION Phương thức ordinal() Cho biết vị trí số enum Vị trí bắt đầu Phương thức compareTo(contst) Cho biết số đứng trước hay đứng sau vị trí số cho trước AUTOBOXING Autoboxing: Tự động chuyển đổi kiểu liệu nguyên thủy thành kiểu đối tượng Các kiểu liệu nguyên thủy đối tượng (object) nên có số hạn chế thao tác làm giảm hiệu suất làm việc Chỉ có object truyền theo kiểu tham chiếu vào method AUTOBOXING Tất class bao bọc (class wrapper) kế thừa từ class abstract Number Number Byte Short Integer Long Float Double AUTOBOXING Mỗi kiểu liệu nguyên thủy có class wrapper tương ứng Kiểu nguyên thủy Các lớp bao byte Byte short Short int Int long Long float Float double Double AUTOBOXING  Autoboxing: Tự động chuyển kiểu phép gán: Integer iobj = 100; int I = iobj;  Autounboxing: Tự động chuyển kiểu biểu thức iobj++; iobj += 10; AUTOBOXING Ưu điểm việc sử dụng class Number: Làm tham số cho phương thức mà phương thức bắt buộc tham số truyền vào phải kiểu đối tượng Có nhiều phương thức chuyển đổi giá trị kiểu nguyên thủy  kiểu đối tượng chuyển đổi từ dạng string sang dạng số (decimal, octal, hexadecimal, binary) AUTOBOXING List li = new ArrayList(); for (int i = 1; i < 50; i += 2) li.add(i);  Autoboxing li.add(Integer.valueOf(i)); public static int sumEven(List li) { int sum = 0; for (Integer n: li) if (n % == 0)  Unboxing sum = sum + n; sum = sum + return sum; n.intValue(); } LẬP TRÌNH JAVA BÀI 7: ENUMERATIONS, AUTOBOXING, STATIC IMPORT, AND ANNOTATIONS PHẦN STATIC IMPORT Java sử dụng từ khóa import muốn sử dụng class package khác Java bổ sung từ khóa ‘static’ với từ khóa import để thuận tiện cho việc sử dụng phương thức static có class mà không cần phải viết tên class STATIC IMPORT Gói java.lang chứa class Math, class có phương thức tính tốn số học như: bậc 2, tính số mũ, tính e mũ … Các phương thức static Thơng thường, muốn tính bậc số ta viết: x = Math.sqrt(1000) STATIC IMPORT  Sử dụng import static java.lang.Math.sqrt; thì, dùng cần viết: x = sqrt(1000);  Hoặc import static java.lang.Math.*; import static java.lang.System.out; thì: y = pow(10,2); out.println(“Hello there !”); ANNOTATION Annotation dạng metadata (siêu liệu) dùng để mô tả đối tượng phương thức Annotation tập giá trị chứa thông tin gắn gọn, mô tả đối tượng VÍ DỤ VỀ ANNOTATION Khai báo Annotation @interface MyAnno{ String value(); String owner(); } Sử dụng Annotation @MyAnno(value="Class scope", owner=“Anna") public class MyClass{ public static void main(String[] args) { System.out.println("Test annotation !"); } } ANNOTATION Khai báo Annotation @interface MyAnno{ String value(); String owner(); } Sử dụng Annotation với phương thức @MyAnno(value="Method scope", owner=“Anna”) public void display() { System.out.println(“Annotation method testing"); } VÍ DỤ ANNOTATION Annotation mô tả class field ANNOTATION Annotation Ý nghĩa @Deprecated Method đánh dấu khơng sử dụng nữa, tồn tính tương thích @Override Thơng báo cho trình biên dịch biết phương thức bên phương thức viết lại kế thừa từ lớp cha @SuppressWarnings Thơng báo cho trình biên dịch tắt cảnh báo ANNOTATION public class example { @Deprecated public void showSomething() { System.out.println("Method has been depricated"); } public static void main(String[] args) { example obj = new example (); obj.showSomething(); } } ANNOTATION Sử dụng @Override public class Child extends Parent{ @Override public void hi(){ System.out.println("Hello !"); } } TỔNG KẾT NỘI DUNG BÀI HỌC     Enumerations Autoboxing Static Import Annotations ... 7: ENUMERATIONS, AUTOBOXING, STATIC IMPORT, AND ANNOTATIONS PHẦN STATIC IMPORT Java sử dụng từ khóa import muốn sử dụng class package khác Java bổ sung từ khóa static với từ khóa import để... viết: x = Math.sqrt(1000) STATIC IMPORT  Sử dụng import static java.lang.Math.sqrt; thì, dùng cần viết: x = sqrt(1000);  Hoặc import static java.lang.Math.*; import static java.lang.System.out;...MỤC TIÊU     Enumerations Autoboxing Static Import Annotations ENUMERATION Enumeration kiểu liệu chứa tập số Các giá trị enumeration mặc định static final Để tạo enumeration, sử dụng

Ngày đăng: 27/10/2019, 22:25

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w