首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在java中,匿名类会占用PermGeneration还是MetaGeneration?

在Java中,匿名类不会占用PermGeneration或MetaGeneration。在Java 8之前的版本中,PermGeneration是用于存储类的元数据和常量池等信息的区域,而MetaGeneration是Java 8中引入的用于存储类的元数据的区域。然而,匿名类的定义是在堆中进行的,而不是在PermGeneration或MetaGeneration中。匿名类的定义会在运行时动态地生成,并且会被加载到堆中的新对象中。因此,匿名类不会占用PermGeneration或MetaGeneration。

需要注意的是,Java 8之后的版本已经移除了PermGeneration,取而代之的是MetaSpace。MetaSpace是在堆外分配的内存空间,用于存储类的元数据信息。同样地,匿名类的定义也不会占用MetaSpace。

总结起来,无论是在Java 8之前的版本还是Java 8之后的版本,匿名类的定义都不会占用PermGeneration、MetaGeneration或MetaSpace。匿名类的定义是在堆中进行的。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券