- 不要在枚举类里面定义 name 属性,因为枚举类有自定义的name属性
- 枚举类的特殊性:枚举可以加一些自定义变量,枚举是单例的,它也可以有构造方法,只是默认情况下不是而已,也可以提供自定义的变量,然后获取set、get方法,但是如果有set的话,线程不是安全的;所以一般是构造方法就可以;枚举类是 final 类,可以使用Lombock的注解@Getter
相关推荐
【AIOPS实战】Dify+Zabbix:构建智能告警分析助手的核心架构与实现
本文详细介绍了如何利用Dify平台与Zabbix-MCP接口构建智能告警分析助手,实现自然语言查询告警、智能分析和报告生成。该系统通过AIOPS技术显著提升运维效率,支持中英文混合查询、自动根因分析,并内置多种优化方案确保稳定可靠。
Java 基础知识33(枚举类Enum)
Java基础知识 33 枚举类 枚举类的对象是有限且固定的。使用enum关键字定义。 枚举是一种特殊的类: (1)枚举类可以实现一个或多个接口,不能显示的继承其他父类。因为使用enum定义的枚举类默认继承了java.long.Enum类,java.long.Enum实现了Comparable,Serializable两个接口。 (2)使用Enum定义,非抽象的枚举类默认使用final修饰符,因此枚举类不能派生子类。 (3)枚举类的构造器只能用private访问控制符,默认为private。 (4)枚举类的所
告别复杂配置!5分钟在Vue/React项目中集成讯飞语音听写WebSocket API
本文详细介绍了如何在Vue/React项目中快速集成讯飞语音听写WebSocket API,实现高效语音识别功能。通过对比不同通信方案,突出WebSocket在实时语音交互中的优势,并提供框架适配、音频处理及性能优化等关键技术点,帮助开发者5分钟内完成专业级语音听写功能集成。
Java学习笔记#09 Lombok @Getter和@Setter
Lombok的@Getter和@Setter文档翻译,以及一些我自己的笔记
机房电脑的“还原”秘密:如何应对重启即清零的困境
机房电脑重启后自动还原是常见的现象,这主要依靠硬件还原卡或软件还原系统(如冰点还原)实现。这类技术会定期将系统盘恢复初始状态,但通常不保护非系统盘。要高效使用公共电脑,建议:1)将个人文件存储在D/E盘;2)使用绿色便携软件;3)必要时可尝试通过热键临时关闭还原功能;4)养成云端备份习惯。掌握这些技巧既能遵守机房规定,又能保证学习资料安全,培养良好的数字资产管理能力。
手把手教你编写PCIe设备驱动:基于Linux内核的实战教程
本文详细介绍了基于Linux内核的PCIe设备驱动开发全流程,包括环境准备、设备探测、中断处理、DMA配置等核心内容。通过实战代码示例和Makefile编写指南,帮助开发者快速掌握PCIe驱动开发技术,实现高性能设备驱动开发与优化。
java 枚举(enum) 全面解读
简介 枚举是Java1.5引入的新特性,通过关键字enum来定义枚举类。枚举类是一种特殊类,它和普通类一样可以使用构造器、定义成员变量和方法,也能实现一个或多个接口,但枚举类不能继承其他类. 原理分析 枚举类型使用的最常用类型就是枚举常量.下面通过一个简单的Demo来说明枚举的原理. // 定义 public...
告别手动画图!用SUMO的netedit快速搭建高速公路交织区路网(附完整XML文件)
本文详细介绍了如何使用SUMO的netedit工具高效构建高速公路交织区路网,避免手动绘图的低效与错误。通过实战案例和XML文件示例,帮助交通工程专业学生快速掌握复杂道路结构建模技巧,特别解析了spreadType参数设置和速度单位换算等关键操作。
Lombok注解之@Getter
生成属性的get方法。注意:与setter不同的是,@Getter注解会生成final修饰的属性。
葵花 Himawari 8/9号数据学习记录-01-数据初识
葵花卫星学习记录,第一章:卫星的来源与卫星数据的波段介绍
非易失存储器读写
24C256、IIC_SCL、IIC_SDA
通用型枚举常量类
解决多if else 取值问题 import lombok.Getter; import java.util.EnumSet; import java.util.HashMap; import java.util.Map; /** * CommonEnum端枚举 */ public interface CommonEnum { /** * 模板类型 0话术 1短信 */ @Getter enum TeamTypeEnum { TALK
Win11用户文件夹中文名修改全攻略
本文详细介绍了Windows 11系统中修改中文用户文件夹名称的完整步骤。操作包含七个关键环节:前期数据备份、账户名称修改、管理员账户激活、用户文件夹重命名、注册表路径更新、收尾操作及注意事项。特别强调需要同步修改账户名、文件夹名和注册表关联路径,并建议操作前备份重要数据。文中还针对常见问题提供了解决方案,如软件报错时的符号链接创建方法。整个过程需谨慎操作,建议在管理员权限下逐步执行,修改完成后需验证系统及软件功能是否正常。
JAVA 中枚举类注意事项
参考自:http://blog.youkuaiyun.com/helloapps/article/details/5715360 今天看JAVA的东西发现JAVA中定义枚举类型,和C/C++有些不同寻常,于是网上查阅了,可以总结如下: 1.枚举元素列表必须写在枚举类的最前面,且每个元素之间用逗号隔开,元素列表结束位置后若没有其他内容,则可以不写分号,否则必须要写。 2.枚举类中所有的构造器是privat...
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
Java 枚举类用法、注意事项
维基百科定义: 枚举(enum): 在数学和计算机科学理论中,一个集的枚举是列出某些有穷列集的所有成员的程序。枚举是一个被命名的整型常数的集合,枚举在日常生活中很常见,例如表示星期的 SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY 就是一个枚举。 项目中常用写法示例: /** * 逻辑删除标志位枚举类 * @a...
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
Java中的枚举类,为什么要用枚举类以及使用注意事项和细节
Java中的枚举类,为什么要用枚举类以及使用注意事项和细节
ssm框架搭建
这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载
82. Java 枚举类 - 使用枚举时的注意事项与最佳实践
Java 枚举类是一种用于表示固定常量集的强大工具,但在使用时需注意潜在风险,特别是在修改枚举值时可能影响旧代码、序列化数据和外部依赖。修改枚举可能导致编译错误、运行时错误和序列化问题。为避免这些问题,建议避免删除或重命名已有枚举值,提供兼容处理方式,并显式列出所有 case。此外,枚举并不适用于所有场景,如动态扩展的值或频繁变更的数据,此时可考虑使用配置文件或数据库。最佳实践包括确保枚举的稳定性、提供兼容性方案,并根据具体需求选择合适的方案。
Java--枚举类型(枚举类型介绍 & 定义枚举类型 & 枚举类型的使用 & 枚举类型的注意事项 & 遍历枚举项)
1. 枚举类型 1.1 大量使用常量来表示数据存在以下问题: 示例: public static final String WEI_XIN = "weixin"; public static final String WEI_XIN_URL = "https://weixin.qq.com/"; public static final String ZHI_FU_BAO = "zhifubao"; public static final String ZHI_FU_BA
JAVA基础——枚举,枚举实现的三种方式,常用枚举类方法,枚举注意事项
一、 自己实现枚举类 枚举概述:是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。 举例:一周只有7天,一年只有12个月等。 回想单例设计模式:单例类是一个类只有一个实例 那么多例类就是一个类有多个实例,但不是无限个数的实例,而是有限个数的实例。这才能是枚举类。 格式一:(无参构造) public class Week1 { public static final Week1 MON =new Week1(); public static final Week1 TUE =new Week1
Java基础之枚举类--详解
Java基础之枚举类–详解 文章目录Java基础之枚举类--详解1.自定义枚举类2.enum3.枚举注意事项4.Enum里面的一些方法简单概述1.name();2.ordinal();3.values();增强for循环4.valueOf();5.compareTo();小小练习enum注意事项结语 1.自定义枚举类 引入概念: 我们什么时候开始使用枚举类呢? 引入一个小案例: 我们生活中有春夏秋冬 那么这些属性都是固定的 这些名称都是不允许被修改的,那么我们可以自己定义一个类进行操作,这个类, 是不允许
枚举类详解----java
枚举类 1. 枚举概述 枚举是指将变量-- – 列出来, 变量得值只限于列举出来的值得范围内是有限个实类(了解即可) 自己定义的: 因为要直接获取对象 而且不可更改 所以必须是final 而且用了static,相当于是调用了静态方法 通过构造产生对象 Java提供了枚举类 第一个版本: 第二个版本 第三个版本:抽象方法 这样定义抽象方法必须在这个类中定义抽象方法 :如下: ...
第十三章 枚举类和注解
13.1、枚举类 13.1.1、概述 概述:枚举是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。举例:一周只有7天,一年只有12个月等 格式:public enum 枚举名称 {} 13.1.2、自定义枚举类 13.1.2.1、第一版 public class Direction1 { // 创建几个实例 public static final Direction1 FRONT = new Direction1(); public static final Direction1 BEHI
Java基础15:深入剖析Java枚举类
更多内容请关注微信公众号【Java技术江湖】这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM、SpringBoot、MySQL、分布式、中间件、集群、Linux、网络、多线程,偶尔讲点Docker、ELK,同时也分享技术干货和学习经验,致力于Java全栈开发!(关注公众号后回复”资料“即可领取 3T 免费技术学习资源以及我我原创的程序员校招指南、Java学习指...
java enum类型的字段 set_JAVA enum枚举类型的使用
1. 枚举类型的定义范围:1)枚举类型可以是单独的一个class文件/*** This enum is declared in the Season.java file.*/public enumSeason {WINTER,SPRING,SUMMER,FALL}2)同样可以定义在其他类里面public classDay {privateSeason season;publicString get...
【Java基础】Java 中的枚举类
在 Java 编程中,枚举类(enum)是一个非常实用且强大的特性,自 Java 5 引入以来,它为开发者提供了一种优雅的方式来表示一组固定的常量。枚举类主要用于信息标志和分类,能显著提升代码的可读性、可维护性和安全性。枚举类使用enum关键字来定义,它是一种特殊的类,用于封装一组固定的常量。在这个例子中,SeasonSPRINGSUMMERAUTUMN和WINTER。每个枚举常量都是Season类的一个实例,并且它们是全局唯一的。
枚举类型 (enum)和java中ordinal()方法的注意事项
枚举类型是int型的常量 默认值是从0开始依次加1 若赋值,在被赋值的成员基础上依次加1,之前未赋值的成员为默认值;
318



被折叠的 条评论
为什么被折叠?



