mybatis generator 针对联合主键生成两个基础类文件,为什么要这么做?

假如我有一张表里的主键是联合主键(即由两个字段共同组成主键),mybatis generator会默认生成两个基础文件,假设domainObjectName我定义的是TestEntity,那么会生成一个TestEntity的类和一个TestEntityKey类,其中,TestEntity继承TestEntityKey,请问在什么情况需要生成两个文件,即为什么Mybatis Generator会有这样的功能?(PS:后来查了资料,发现可以通过modelType设置其是否需要生成两个文件,但我想知道为什么会有这样的需求)

便于代码的重构,把实体和实体的关系隔绝到两个类,互相不干扰。