質問: new MainSystem(); ms.createTest(12).printf(); } } ``` ↑のコードなのですが、メソッドの中で無名クラスをつくってインスタンスを返しています。この中で作ったHogeを実装した無名クラスに対して、アクセス修飾子がublicなprintfメソッドを外側で実行すれば思ったとおりの結果が返ってくるのですが、protected、またはなにもつけなければエラーになります。 なぜpublicでなければならないのでしょうか。 教えていただきたいです
回答: すみません やはり支離滅裂なことを質問していました 内部クラス以前にインターフェースの抽象メソッドを実装するときはpublicでなければならなかったですね。はやとちりしてしまい申し訳ないです