枚举
特点:
-
应enum关键字定义枚举类
-
枚举类默认继承java.util.Enum类
-
枚举类的构造方法只能使用private修饰符,如果构造方法省略修饰符,则默认使用private
-
枚举类的所有对象(实例)必须在枚举中显式列出,否则这个枚举类将永远不能创建实例对象
-
枚举类的所有对象,系统会自动添加public static final修饰符
final的作用是内存地址不变,枚举类中对象的常量可以用get/set方法修改
package d14;
/*
枚举
特点:
1.应enum关键字定义枚举类
2.枚举类默认继承java.util.Enum类
3.枚举类的构造方法只能使用private修饰符,如果构造方法省略修饰符,则默认使用private
4.枚举类的所有对象(实例)必须在枚举中显式列出,否则这个枚举类将永远不能创建实例对象
5.枚举类的所有对象,系统会自动添加public static final修饰符
final的作用是内存地址不变,枚举类中对象的常量可以用get/set方法修改
作用/使用场景:
存储固定不变的账户、IP地址、密钥等信息
不经常换的,但是需要与第三方对接
*/
public enum User {
//定义对象
u1(),u2("张三","abc123",100.00);
private String name;
private String pass;
private double money;
private User() {
}
private User(String name, String pass, double money) {
this.name = name;
this.pass = pass;
this.money = money;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
}
单例模式
设计模式:软件开发规范
单例模式 一个类,有且只能有一个对象
单例模式的写法:
- 枚举
- 懒汉式
- 饿汉式
懒汉式例子
public static Person p;
private Person(){
}
public static Person getInstance(){
if (p == null) {
p = new Person();
}
return p;
}
饿汉式例子
//饿汉式:在类初始化时,已经自行实例化(在程序执行之前,先完成实例化,在程序执行过程中直接返回创建好的实例化对象)
private static final Person P = new Person();
private Person() {
}
public static Person geInstance() {
return P;
}
异常
package d14;
//执行顺序ctr/catch>finally>return
public class TestExpe {
public static void main(String[] args) {
}
public static int showException() {
try {//可能出现的异常用try包括
int[] a = new int[5];
System.out.println(a[4]);
return 1;
} catch (Exception e) {捕获异常
//打印异常信息
e.printStackTrace();
System.out.println("出现异常");
return 2;
}finally {
//无论出不出现异常,这里边的代码都会执行
//如果try中有return返回值,则先执行完finally中的代码,在返回数据
System.out.println("666666666");
}
}
}