バレンティン:
私はコンピュータサイエンスの学生ですし、私は現在のオーバーロードメソッドに取り組んでいます。
私は貴様のパラメータで乱数を取得するためのオーバーロードメソッドをした:低バウンドし、バウンド高いか低いだけ結合しました。
それはより良い行うことです。
/**
* Return a random double in [low; sup[
*/
public static double getDouble(int low, int sup) {
return low + Math.random() * (sup - low);
}
/**
* Return a random double in [0; sup[
*/
public static double getDouble(int sup) {
return getDouble(0, sup);
}
それとも、私がしなければなりません。
/**
* Return a random double in [low; sup[
*/
public static double getDouble(int low, int sup) {
return low + Math.random() * (sup - low);
}
/**
* Return a random double in [0; sup[
*/
public static double getDouble(int sup) {
return Math.random() * sup;
}
簡単に言うと、私の質問は、両方の間で最良のどのような方法ですか?ありがとうございました。
GhostCat敬礼モニカC.:
ソフトウェア開発における現実の大きな問題の一つは、コードで重複。
あなたは絶対に、常にコードの同じセグメントを最小限にするために努力しています。
確かに、あなたの例では、あなたが選択したバージョンはほとんど無関係です。あなたのコードはまさにそれだろう、と改めて触れることがないならば、両方のオプションが読めると罰金です。
しかし、チャンスは、物事は時間をかけて強化または変更する必要があることです。そして、オプション1は、以下の注意と勤勉さを少し払うする必要があります。したがって、あなたはその1つのために行きます。
また、それは、このような微妙な考えることは完全に罰金であることに注意してください。ないこの特定の例は非常に重要ですが、そのスキルを訓練するため。だから、あなたは準備ができているとあなたは10行に収まらない高い複雑なコードを記述する必要が毎日来て準備したこと!
そして、はい、これは特異的に結び付けられていないのオーバーロード。言った:コードの重複を最小限に抑えることは常にあなたの最優先事項の一つでなければなりません。時には、あなたは妥協する必要がありますが、あなたはない怠惰な気分やインパルスのうち、意識的な決定としてそう。