4. 使用私有构造器执行非实例化