【发布时间】:2010-10-18 07:32:53
【问题描述】:
我有一个包裹
public abstract class Player { /*...*/ }
还有这些
public abstract class GamePlayer extends Player { /*...*/ }
public abstract class TournamentPlayer extends Player { /*...*/ }
public abstract class StatelessPlayer extends Player { /*...*/ }
包的用户需要播放器,但为了在不破坏它的情况下使用包,我要求他们永远不要直接扩展播放器。相反,它们应该扩展提供的子类之一。
问题:如何防止用户直接扩展 Player?
我正在寻找一种方法来明确表明该禁令是有意的。
【问题讨论】:
标签: java inheritance api-design