Java program on Custom Exceptions, Email application example
PROGRAM:
import java.util.Scanner;public class EmailApplication {
public static void main(String[] args) {
String username, password;
Scanner sc = new Scanner(System.in);
System.out.println("Enter username and password to create account");
System.out.print("Username: ");
username = sc.next();
System.out.print("Password: ");
password = sc.next();
Account acc = new Account(username, password);
System.out.println("Account created successfully!");
acc.login();
}
}
class Account {
String username, password;
public Account(String username, String password) {
super();
this.username = username;
this.password = password;
}
void login() {
String uname, pass;
Scanner sc = new Scanner(System.in);
try {
System.out.println("Enter username and password to login");
System.out.print("Username: ");
uname = sc.next();
if (!uname.equals(username))
throw new UsernameException();
System.out.print("Password: ");
pass = sc.next();
if (!pass.equals(password))
throw new PasswordException();
System.out.println("Login successful!");
} catch (UsernameException u) {
System.out.println(u.getMessage());
} catch (PasswordException p) {
System.out.println(p.getMessage());
} catch (Exception e) {
System.out.println("Exception occured");
}
}
}
class UsernameException extends Exception {
public String getMessage() {
return "Invalid username!";
}
}
class PasswordException extends Exception {
public String getMessage() {
return "Incorrect Password!";
}
}
OUTPUT:
TRIAL 1:
Enter username and password to create account
Username: programing
Password: digest
Account created successfully!
Enter username and password to login
Username: programing
Password: digest
Login successful!
Username: programing
Password: digest
Account created successfully!
Enter username and password to login
Username: programing
Password: digest
Login successful!
TRIAL 2:
Enter username and password to create account
Username: programing
Password: digest
Account created successfully!
Enter username and password to login
Username: programming
Invalid username!
Username: programing
Password: digest
Account created successfully!
Enter username and password to login
Username: programming
Invalid username!
TRAIL 3:
Enter username and password to create accountUsername: programing
Password: digest
Account created successfully!
Enter username and password to login
Username: programing
Password: language
Incorrect Password!