java javabean中枚举类型内存'_浅析对java枚举类型的认识

枚举在Java中是一种特殊的类,与普通类不同,它不需要new操作即可使用。枚举常用于配置信息和错误信息返回,如颜色代码或状态码,提供更直观的代码阅读体验。相较于静态常量,枚举会占用更多内存,因此在资源敏感的环境中(如Android)应谨慎使用。枚举包括对象、属性、构造方法和getter/setter,可以直接通过枚举名称访问其成员。
摘要由CSDN通过智能技术生成

而想弄明白枚举类型是什么,就要把他和类进行对比了。用ecplise创建一个类,你要使用这个类就得new一个对象出来对吧(当然了,别较真,说我用他的静态属性和方法);而当你用ecplise创建一个枚举类型时,在使用时是不需要再new的,它本身就创建好了几个对象在其内部,这也就是枚举和类的最大区别。

269938857cdbb40b0b101bd45f8f595e.png

首先,先创建一个枚举,看一下它到底是什么东西。

073a7e765fc2bd110f9cb18fd922ecf6.png

我们给这个枚举对象加入两个对象(red和green),一个属性,一个构造方法,还有setget方法,这样一个简单的枚举类型就创建好了。

22452f2ea3507888ae4480ba94a2b0a3.png

说说枚举的用处:一般用于配置信息,比如颜色 赤=1、橙=2、黄=3、绿=4、青=5、蓝=6、紫=7,这就可以创建一个枚举类型,你可以把数字存储到数据库,在代码里面显示汉字,这样使得代码易懂。(当然了,你非得在数据库中存储汉字也行)。再比如,用于错误信息返回:成功=1、失败=-1、部分成功=0,这样你在代码里面写的时候,别人一看就一目了然,你写0、1、-1谁知道什么意思。当然了最终的值还是数字,可是再别人读你程序的时候,看到的是有具体意思的单词。说了这么多,可能还是有点迷惑,下面就是项目中的栗子。

71f23b236a3a9619e642a61e8d4680fc.png

说说我的理解:java中一切皆对象,不例外,枚举(声明好的枚举类(暂且叫他枚举类))也是一个对象。枚举在创建完成之后就是一个对象(相对于类来说,对于类的对象需要new出来,才是一个对象,而对于枚举来说,不需要new,本身就是一个对象,仿佛枚举类的所有成员和方法都是静态的意思),枚举的结构一般包括【对象,属性,构造方法,setget方法】;对于一个创建好的枚举对象,可以通过枚举名称+对象名称+setget进行操作。

017b6ca3cb5a87ac27dffd88ef85260d.png

关键点:一个创建好的枚举类型本身就声明好了自己的对象。

58b8d5de73cddcb3a54b9ed81c96be79.png

占内存:Enums often require more than twice as much memory as static constants. You should strictly avoid using enums on Android.意思就是相对于类的静态属性来说,枚举要多占一些内存空间。占内存:Enums often require more than twice as much memory as static constants. You should strictly avoid using enums on Android.意思就是相对于类的静态属性来说,枚举要多占一些内存空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值