项目场景:
使用内部类报错:Cause: java.lang.IllegalArgumentException: argument type mismatch
原因分析:
由于内部类没有添加static,在执行代码过程中程序找不到Student对象,mybatia找不到映射的Student对象而报错
在Java中,内部接口(也称为嵌套接口)必须是静态的,因为内部接口被嵌套在另一个类或接口中,并且不依赖于外部类的实例。如果内部接口不是静态的,那么在创建内部接口对象之前,必须先创建外部类对象,这样会增加代码的复杂性和内存的开销。
静态内部接口可以像静态内部类一样,被外部类直接访问。也就是说,我们可以通过外部类名来访问内部接口,而不需要先创建外部类的对象。
解决方案:
在内部类中添加static