java内部类并实例化问题 Published on Nov 15, 2022 in Java with 0 comment ```java @Data public class MailOperationContent { private String theme; private List toMail; private List ccMail; private List bccMail; private List fromMail; private BTMailSecretlevelEnum secretLevel; private Long mailSize; private Integer attachmentNum; private List mailAttachmentInfos = new ArrayList<>(); @Data public class MailAttachmentInfo { private String attachmentName; private String attachmentSecretLevel; } ``` 但是我想实例化 MailAttachmentInfo 这个类 采用: ```java mailAttachmentInfo = new MailOperationContent.MailAttachmentInfo(); ``` 但是编译报错 这个时候就会出现编译错误:"xxx.OuterClass" is not an enclosing class 解决办法:若要创建内部类的实例,需要有外部类的实例才行,或者是将内部类设置为静态的。 方法一: ```java mailAttachmentInfo = new MailOperationContent().new MailAttachmentInfo(); ``` 方法二:将内部类设置为静态的 ```java @Data public static class MailAttachmentInfo { private String attachmentName; private String attachmentSecretLevel; } ``` 本文由 admin 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。