JAVA質問
解決したいこと
※privateありで考えなければいけません。
該当するソースコード・ 自分で試したこと
自分の中では、これでいいのかと思ったのですが、実行させた結果、
こうなってしまいました。
どこを変えたらいいのでしょうか。
お願いします。
0
※privateありで考えなければいけません。
自分の中では、これでいいのかと思ったのですが、実行させた結果、
こうなってしまいました。
どこを変えたらいいのでしょうか。
お願いします。
・追加するメソッドの名前は、getAbcとする。ただし、Abcはフィールド名である。
これは、例えば、getheight、getlongthといったAbcをフィールド名に置き換えたメソッドを追加するという意味ではないでしょうか。
まず、できればコードは写真ではなく、
Markdownのコードブロック
という機能を使って
貼るようにした方が親切です。(回答者がコードをコピーして実行できるので)
エラーの原因はString getAbcメソッド
内で
変数定義をしているからですね。
恐らく、課題か何かの練習問題だと推測しますが、
この問題が求めていることは、
// 変数名は全て例です
public hoge;
protected piyo;
指定なし hogera;
private hogehoge;
といった アクセス修飾子 についての理解を深めることではないでしょうか。
そして、一番制限が厳しいprivate
について
アクセサ と呼ばれるメソッドを利用してアクセスすることがゴールでしょう。
つまり
class Dog {
private double height;
private double length;
private double weight;
private String name;
// heightのgetter
public double getHeight() {
return height;
}
// lengthのgetter
public double getLength() {
return length;
}
// weightのgetter
public Sdouble getWeight() {
return weight;
}
// nameのgetter
public String getName() {
return name;
}
}
のように実装するよう出題されています。
ただ、上記の状態だと、値を取得するメソッド(getter)だけなので
「0.0」と表示するように値を設定するメソッド(setter)が必要になります。
答えを全て書いてしまうと、
学習の妨げになってしまうかと思うのでこの辺りで留めておきます。
残りはJava アクセサ
やJava アクセス修飾子
などのワードを駆使しながら頑張って調べて実装してみてはいかがでしょうか。