Xây dựng lớp EmailException trong Java
Đề bài: Viết chương trình sử dụng ngôn ngữ lập trình Java xây dựng lớp EmailException dùng để biểu diễn lỗi địa chỉ email không hợp lệ. Viết chương trình nhập địa chỉ email từ bàn phím, kiểm tra địa chỉ email, nếu không hợp lệ thì hiển thị thông báo lỗi.
Yêu cầu kiến thức:
- Kiến thức về lớp con kế thừa lớp cha. Ở đây tôi sẽ thiết kế thông báo lỗi bằng cách xây dựng 1 lớp sinh ra thông báo lỗi, lớp này được kế thừa từ lớp Exception.
- Xác định kiểu dữ liệu cho các hàm và các biến cần sử dụng.
- Kiến thức về các hàm xử lý chuỗi đơn giản.
Cấu trúc thư mục:
src
|——EmailException
|——EmailException.java
|——EmailCheck
|——EmailCheck.java
|——Using
|——MainClass.java
Code tham khảo dưới đây được viết trên JDK ver 8.x:
File EmailException.java:
package EmailExceprion;
public class EmailException extends Exception {
// Ham khoi tao
public EmailException(String str) {
super(str);
}
}
File EmailCheck.java:
package EmailCheck;
import EmailExceprion.EmailException;
public class EmailCheck {
// Ham kiem tra dia chi email co dung dinh dang hay chua
// Kiem trc don gian nhu sau:
// Dia chi email chi co 1 ky tu @
// Ky tu @ khong xuat hien ow vi tri dau tien
public void checkEmail(String str) throws EmailException {
// Lay vi tri ky tu @ xuat hien trong chuoi
int vt = str.indexOf('@');
// TH1: Neu khong chua @
if (vt == -1) {
// Nem ra 1 doi tuong loi
throw new EmailException("Khong hop le cho khong chua ky tu '@'");
}
// TH2: Neu @ nam o vi tri dau tien
if (vt == 0) {
throw new EmailException("Khong hop le do '@' nam o vi tri dau tien");
}
// TH3: Kiem tra xem trong chuoi co chua @ nao khac hay khong
vt = str.indexOf('@', vt + 1);
// Neu con chua @
if (vt != -1) {
throw new EmailException("Khong hop le do chua nhieu hon 1 ky tu '@'");
}
// TH4: Dung
System.out.println("Dia chi email dung dinh dang!");
}
}
File MainClass.java:
package Using;
import EmailCheck.EmailCheck;
import EmailExceprion.EmailException;
import java.util.Scanner;
public class MainClass {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// Khai bao doi tuong
EmailCheck emailCheck = new EmailCheck();
// Nhap chuoi
System.out.print("Nhap vao chuoi email: ");
String str = sc.nextLine();
// Kiem tra
try {
emailCheck.checkEmail(str);
} catch (EmailException ex) {
System.out.println("Loi: " + ex.getMessage());
}
sc.close();
}
}
Kết luận:
- Bạn có thể tham khảo thêm khóa học lập trình Java từ cơ bản đến nâng cao. Xem tại đây
- Bạn có thể tham khảo thêm khóa học lập trình C từ cơ bản đến nâng cao. Xem tại đây
- Bạn có thể tham khảo thêm khóa học Thành thạo lập trình C#. Xem tại đây
- Bạn có thể tham khảo thêm khóa học Ôn tập OOP cơ bản trong Java. Xem tại đây