DAO如何只向外部暴露接口,并屏蔽具体实现类呢?比如有个玩具类的DAO:ToyDAO,然后有几个具体的实现类比如玩具狗DogImpl和玩具鸭DuckImpl一般情况下是上层调用ToyDAO来操作具体的实现类,而不是直接找做具体实现类请问除了人为约束之外,怎么在程序中控制禁止程序员直接创建具体实现类? 比如禁止这种DogImpl dog = new DogImpl()[解决办法]