在Java中定义常量(Constant) ,简化代码
2015-07-03 17:59
639 查看
/**
* Method One,采用接口(Interface)的中变量默认为static final的特性。
*/
interface ConstantInterface
{
String SUNDAY = "SUNDAY";
String MONDAY = "MONDAY";
String TUESDAY = "TUESDAY";
String WEDNESDAY = "WEDNESDAY";
String THURSDAY = "THURSDAY";
String FRIDAY = "FRIDAY";
String SATURDAY = "SATURDAY";
}
/**
* Method Two ,引入的Enum类型。
*/
enum ConstantEnum
{
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
/**
* Method Three,在普通类中使用static final修饰变量的方法。
*/
class ConstantClassField {
public static final String SUNDAY = "SUNDAY";
public static final String MONDAY = "MONDAY";
public static final String TUESDAY = "TUESDAY";
public static final String WEDNESDAY = "WEDNESDAY";
public static final String THURSDAY = "THURSDAY";
public static final String FRIDAY = "FRIDAY";
public static final String SATURDAY = "SATURDAY";
}
/**
* Method Four,方法四类似方法三,但是通过函数来获取常量。
* http://www.ibm.com/developerworks/cn/java/l-java-interface/index.html
*/
class ConstantClassFunction {
private static final
String SUNDAY = "SUNDAY";
private static final String MONDAY = "MONDAY";
private static final String TUESDAY = "TUESDAY";
private static final String WEDNESDAY = "WEDNESDAY";
private static final String THURSDAY = "THURSDAY";
private static final String FRIDAY = "FRIDAY";
private static final String SATURDAY = "SATURDAY";
public static String getSunday() {
return SUNDAY;
}
public static String getMonday() {
return MONDAY;
}
public static String getTuesday() {
return TUESDAY;
}
public static String getWednesday() {
return WEDNESDAY;
}
public static String getThursday() {
return THURSDAY;
}
public static String getFirday() {
return FRIDAY;
}
public static String getSaturday() {
return SATURDAY;
}
}
public class TestConstant {
static final String day = "saturday";
public static void main(String[] args) {
System.out.println("Is today Saturday?");
System.out.println(day.equalsIgnoreCase(ConstantInterface.SATURDAY));
System.out.println(day.equalsIgnoreCase(ConstantEnum.SATURDAY.name()));
System.out.println(day.equalsIgnoreCase(ConstantClassField.SATURDAY));
System.out.println(day.equalsIgnoreCase(ConstantClassFunction
.getSaturday()));
}
}
* Method One,采用接口(Interface)的中变量默认为static final的特性。
*/
interface ConstantInterface
{
String SUNDAY = "SUNDAY";
String MONDAY = "MONDAY";
String TUESDAY = "TUESDAY";
String WEDNESDAY = "WEDNESDAY";
String THURSDAY = "THURSDAY";
String FRIDAY = "FRIDAY";
String SATURDAY = "SATURDAY";
}
/**
* Method Two ,引入的Enum类型。
*/
enum ConstantEnum
{
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
/**
* Method Three,在普通类中使用static final修饰变量的方法。
*/
class ConstantClassField {
public static final String SUNDAY = "SUNDAY";
public static final String MONDAY = "MONDAY";
public static final String TUESDAY = "TUESDAY";
public static final String WEDNESDAY = "WEDNESDAY";
public static final String THURSDAY = "THURSDAY";
public static final String FRIDAY = "FRIDAY";
public static final String SATURDAY = "SATURDAY";
}
/**
* Method Four,方法四类似方法三,但是通过函数来获取常量。
* http://www.ibm.com/developerworks/cn/java/l-java-interface/index.html
*/
class ConstantClassFunction {
private static final
String SUNDAY = "SUNDAY";
private static final String MONDAY = "MONDAY";
private static final String TUESDAY = "TUESDAY";
private static final String WEDNESDAY = "WEDNESDAY";
private static final String THURSDAY = "THURSDAY";
private static final String FRIDAY = "FRIDAY";
private static final String SATURDAY = "SATURDAY";
public static String getSunday() {
return SUNDAY;
}
public static String getMonday() {
return MONDAY;
}
public static String getTuesday() {
return TUESDAY;
}
public static String getWednesday() {
return WEDNESDAY;
}
public static String getThursday() {
return THURSDAY;
}
public static String getFirday() {
return FRIDAY;
}
public static String getSaturday() {
return SATURDAY;
}
}
public class TestConstant {
static final String day = "saturday";
public static void main(String[] args) {
System.out.println("Is today Saturday?");
System.out.println(day.equalsIgnoreCase(ConstantInterface.SATURDAY));
System.out.println(day.equalsIgnoreCase(ConstantEnum.SATURDAY.name()));
System.out.println(day.equalsIgnoreCase(ConstantClassField.SATURDAY));
System.out.println(day.equalsIgnoreCase(ConstantClassFunction
.getSaturday()));
}
}
相关文章推荐
- Java基础编程:反射工具类
- 深入理解Java的接口和抽象类
- Java - What is Abstraction in Java
- java中重载与重写的区别
- JAVA实现图片裁剪
- JAVA对象属性复制
- 搭建和配置Spring与jdbc整合的环境
- Java NumberFormat 类
- Android Studio vs. Eclipse: What You Need To Know
- eclipse安装maven插件
- [转] Java快速教程
- Spring MVC 3.0 深入及对注解的详细讲解
- Oauth2.0 用Spring-security-oauth2 非常简单
- Spring Security 与 Oauth2 整合 步骤
- java垃圾回收机制(二)
- Java - What is Static and Dynamic binding
- Eclipse导出项目兼容androidstudio
- Caused by: java.lang.UnsatisfiedLinkError: Couldn't load BaiduMapSDK_v3_0_0 from loader dalvik.syste
- java 垃圾回收机制(一)
- Java生成和解析XML格式文件和字符串的实例代码