Javaでは、すべてのクラスが、Objectクラスを継承している。
独自にCustomObjectクラスを定義する。
中身は何も定義しなくても、Objectを継承する。
MainClass.javaでは、
StringはObjectを継承してるので、アップキャスト問題なし。
CustomObjectもObjectを継承してるので、アップキャスト問題なし。
ObjectはtoStringメソッドを持っているので、どちらも呼び出せる。
str = ABC obj = ABC custom.toString() = CustomObject@15136019 obj2.toString() = CustomObject@15136019
中身は同じ。
Sample/java/Object/Object/src/Object at master · bg1bgst333/Sample · GitHub