Java之预定义

Posted zoewong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java之预定义相关的知识,希望对你有一定的参考价值。

作为Java初学者的我,提供一个类似C#的预处理机制。若有不足之处,敬请各位大佬指正(感觉没有,哈哈哈哈哈哈)!

Java 没有类似 C++的宏,也没有类似C#的预定义 #if...#endif

C#里的预定义使用方式有两步如下:

A、在C#使用预定义时,一般可以在项目属性的【生成】--【常规】--【条件编译符号】处指定该变量,或者使用#define。

B、再在使用处使用#if……#endif

Java官方没有提供类似的机制。

鄙人,有个办法:在项目中添加一常量类,存储本系统用到常量,在此处设立一个标志,相当于C#里A步操作。

型如: 

public static final String ExtraName_NotificationFromWifi = "Noti_FromWiFi";

再在需要使用的地方使用

 if (Constants.ExtraName_NotificationFromWifi == "XXXX")来判断,以实现类似C#里的B步操作

如果要实现类似C#里#if……#elif……#else……#endif多条件操作,可以先定义一个枚举,然后再使用Swith方式,形如

public  static final EnumNotificationType NOTIFICATION_TYPE = EnumNotificationType.FromWifi;
public enum EnumNotificationType{
FromWifi,
FromNet
   ……
}

在其他要使用预定义的地方使用Switch控制。


 

以上是关于Java之预定义的主要内容,如果未能解决你的问题,请参考以下文章

iText7高级教程之html2pdf——2.使用CSS定义样式

iText7高级教程之html2pdf——2.使用CSS定义样式

VSCode创建自定义用户片段

Java中面向对象的三大特性之封装

java 代码片段

Java语言基础之方法的设计