
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> Eclipseで作業中、自作の何もメソッドを定義していないインターフェイス
> に、equals()やwait()があったので疑問に思ったのです。
> 全てのクラスがObjectを継承するように、どのインターフェイスも必ず持
> つメンバがあるのかなと思いました。
型がインタフェースの変数に対してEclipseがメソッドの補完候補としてequals()は表示するのにclone()は表示しないのは、clone()がprotectedなメソッドだからではないでしょうか。
インタフェースはpublicなメソッドしか持てないので、型がインタフェースの変数に対してclone()が候補として表示されることはなさそうに思います。
が、Enumに対しては、そのEnumのprotectedなメソッドへアクセス可能な文脈ではclone()が候補として表示されるだろうと思います。
public enum OreEnum {
ORE;
void oreore() {
OreEnum e;
}
}
としたとき、関数oreore()内で変数 e に対するメソッドの補完候補には clone() が表示されるのではないでしょうか。
手元にEclipseは無いので確かめられませんが、NetBeansではそのようになりました。
>としたとき、関数oreore()内で変数 e に対するメソッドの補完候補には clone() が表示されるのではないでしょうか。
Eclipseでもそのようになりました。
>clone()がprotectedなメソッドだからではないでしょうか。
Enum で試してみた結果、その通りだと思います。
インターフェイス変数に色々なメソッドが定義されていると思っていましたが、その変数にはインターフェイスの実装への参照が入っていたのを忘れていました。それならObjectから継承されたメンバがあるのは当然ですよね。空のインターフェイス変数に対する補完では、class と this があるだけでした。勘違いでつまらない質問をしてしまいました。すいません。
回答ありがとうございました。
No.1
- 回答日時:
> インターフェイスはObjectを継承しないのですか?
しません。
Objectクラスはスーパークラスですが、インターフェイスはクラスではありませんから。
> しかしそれ以外のメソッドは定義されていたので、何らかのクラスを継承しているのでしょうか?
何らかのクラスは継承されていませんが、何らかのインターフェイスを継承している可能性はあります。
列挙型とはjava.lang.Enumクラスのことを指してるのでしょうか?
よくわからなかったので回答は控えます。
この回答への補足
回答ありがとうございます。
インターフェイスはクラスでは無いんですね。それならclone()が無いのは納得です。
Eclipseで作業中、自作の何もメソッドを定義していないインターフェイスに、equals()やwait()があったので疑問に思ったのです。
全てのクラスがObjectを継承するように、どのインターフェイスも必ず持つメンバがあるのかなと思いました。
>列挙型とはjava.lang.Enumクラスのことを指してるのでしょうか?
そうです。これもEclipseでEnumの「Enum型名.メンバ名.」と打つと色々メソッドが出てくるので、何処からか継承されてきたのかと思いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
レコード件数の表示
-
String.containsの反対機能はあ...
-
別クラスのmainメソッドの実行
-
コマンドライン引数のチェック
-
Java初級 引数に適用できません
-
StringBufferからStringへキャ...
-
CSVから読み込んだデータの保持...
-
C# でメソッドに送られてきたOb...
-
実行画面で表示されるエラーの...
-
変数名の付け方
-
「タイプ初期化子が例外をスロ...
-
エクセルVBAで、条件に一致する...
-
「インスタンス」の意味をわか...
-
サーブレットコンテキストの意...
-
VB.NETでフォーム上にExcelのよ...
-
インスタンス参照でアクセスで...
-
final修飾子を使っているのに、...
-
クラス間でのデータ参照
-
private static という変数の修飾
-
オブジェクトレベルとメタレベル
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコード件数の表示
-
Java初級 引数に適用できません
-
String.containsの反対機能はあ...
-
別クラスのmainメソッドの実行
-
abstract と static を一緒に付...
-
StringBufferからStringへキャ...
-
説明文書でのメソッド・変数の...
-
Java初心者です、エラーの意味...
-
YYYYMMDD書式の日付に対する適...
-
コマンドライン引数のチェック
-
Google Apps Script で getRang...
-
staticのメリット、デメリット
-
メソッドの引数に指定されてい...
-
スーパークラスからサブクラス...
-
return new使用時
-
メソッド宣言の戻り値の型にク...
-
インターフェースについて
-
CSVから読み込んだデータの保持...
-
問題の意味が分かりません
-
JavaからCへ
おすすめ情報