Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

JAVA質問

解決したいこと

image.png
これを用いて
image.png
これを表示させたいです。

※privateありで考えなければいけません。

該当するソースコード・ 自分で試したこと

image.png

image.png
自分の中では、これでいいのかと思ったのですが、実行させた結果、
image.png
こうなってしまいました。

どこを変えたらいいのでしょうか。
お願いします。

0

2Answer

・追加するメソッドの名前は、getAbcとする。ただし、Abcはフィールド名である。

これは、例えば、getheight、getlongthといったAbcをフィールド名に置き換えたメソッドを追加するという意味ではないでしょうか。

1Like

まず、できればコードは写真ではなく、
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 アクセス修飾子
などのワードを駆使しながら頑張って調べて実装してみてはいかがでしょうか。

1Like

Your answer might help someone💌