2016-07-23 4 views
2

任意の型ラッパークラス(Numberクラスのサブクラス)に存在するtoString()メソッドは、numberをパラメータとして渡しているのに静的ですが、オブジェクトを呼び出すときは静的ではありません。 Floatクラスのように
: -
オブジェクト上で起動する場合の数FloatクラスtoStringメソッド

static String toString(float num) 

を渡す: -

String toString() 

答えて

2

彼らは二つの異なる方法です。

1.静的メソッドは

public static String toString(float f) 

そうではないインスタンスに、クラスに関連付けられている、静的メソッドです。 インスタンスを呼び出す必要はありません。したがって、静的メソッドがインスタンスメソッド

public String toString() 

例えばInteger.toString(f)


2.を実行して、静的に呼び出され のでクラスのインスタンスにはなく、クラス自体に関連付けられている、インスタンスメソッドであります。 インスタンスを呼び出して呼び出す必要があります。


我々は静的toString(myLong)メソッドが何を行うためのインスタンスメソッドを持ってできるようにしたいと仮定し、あなたの質問に答えるために。 myLong.toString(myLong)

これを実現するには、元の静的メソッドが静的修飾子を持つものと静的修飾子を持たないもの(インスタンスメソッド)の2つの味で提供されていたはずですが、インスタンスメソッドはそのインスタンスの状態を使用してtoString()を実行しません。
なぜ、インスタンスメソッドを作成する必要がありますか?

関連する問題