質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

3回答

283閲覧

ファイルの分割について勉強をしています。

GK.1225

総合スコア22

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2019/04/14 19:33

編集2019/04/15 02:22

ファイルの分割について勉強をしています。
以下のようなコードを作って、コンパイルしたところこのようなエラーが出ました。


**C:\Users\fbric\Desktop\情報実験>javac RectangleEditor.java
.\Command.java:15: エラー: シンボルを見つけられません
r.setRectangle(h);
^
シンボル: メソッド setRectangle(int)
場所: タイプRectangleの変数 r
エラー1個

C:\Users\fbric\Desktop\情報実験>**


自分でも調べましたが、シンボルを見つけられないというエラーは様々な原因があると知り、
経験のある人に聞くべきだと考え質問に至りました。なぜエラーが出たのか、どうすればエラーが出なくなるのか教えていただきたいです

import java.io.*;
class RectangleEditor
{
public static void main(String[] args) throws IOException
{
BufferedReader br =
new BufferedReader(new
InputStreamReader(System.in));
System.out.println("操作を選んでください");
System.out.println("1.create 4.delete 7.displayboard 0.exit");
String str = br.readLine();
//入力された文字列をstrに記録する。
//char res = str.charAt(0);
//入力した文字列から文字を取り出す。
int num = Integer.parseInt(str);
//文字列を変換してint型の変数にする
switch(num)
{
case 1:
System.out.println("createが入力されました");
Command c = new Command();
c.setCommand();
break;
case 4:
System.out.println("deleteが入力されました");
break;
case 7:
System.out.println("displayboardが入力されました");
break;
case 0:
System.out.println("exitが入力されました");
break;
}
}
}


import java.io.*;
class Rectangle
{
private int haba;
private int takasa;
private int x;
private int y;
int h;
public void setRecatngle(int ha)
{
haba=0;
takasa=0;
x=0;
y=0;
System.out.println("長方形を作成しました");
haba=h;
System.out.println
("幅が"+haba+"に変更されました");
}
}


import java.io.*;
class Command
{
public void setCommand()throws IOException
{
System.out.println("ボードの要素(幅)を入力してください");
BufferedReader br =
new BufferedReader(new
InputStreamReader(System.in));
String str = br.readLine();
//入力された文字列をstrに記録する。
int h = Integer.parseInt(str);
System.out.println("幅は"+h+"です");
//文字列を変換してint型の変数にする
Rectangle r = new Rectangle();
r.setRectangle(h);
//haba = h;
//takasa = t;
//x = x1;
//y = y1;
}
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/04/14 20:51

コードはマークダウンのcode機能を利用してご提示ください
GK.1225

2019/04/15 02:04

ご指摘ありがとうございます。 マークダウンについてよく知らなかったので次の投稿から気をつけたいと思います。
m.ts10806

2019/04/15 02:08

質問編集してご対応いただければと
GK.1225

2019/04/15 02:15

マークダウン機能の使い方が分かりません...
swordone

2019/04/15 02:24

質問編集画面でコードの部分を反転選択し、<code>というボタンをクリックする。 「ここに言語を入力」と書かれた部分を「java」と書き換える。
m.ts10806

2019/04/15 02:24

https://teratail.com/help#about-markdown または質問投稿画面左下「Markdown記法を使うと回答が得られやすくなります」 とりあえずコードだけ対応するのであればコード部分を選択して<code>ボタン
swordone

2019/04/15 03:02

質問内容に直結する修正をしないでください。解決したならベストアンサーを決めて終了してください。質問の原因を修正すると、後から見た時この回答とのやりとりが意味不明なものになります。
GK.1225

2019/04/15 03:05

修正はしてないのですがどこか変わりましたでしょうか? マークダウンについて理解出来てないのでそこが理解できてから終了しようとおもっています
guest

回答3

0

あれ、importを定義していないような気がします。
こう書かないとコンパイルが通らなかったはずです。
こちらでも参考にして下さい。

import Rectangle

投稿2019/04/15 02:27

stdio

総合スコア3307

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

swordone

2019/04/15 02:29

もしそうなら一つ上の行でコンパイルエラーになるはずなので違うと思います。
stdio

2019/04/15 03:07

スペルミスとは... 基本的に私は関数の名前ミスが嫌いだからその辺はコピペか選択しかしない上に、teratailの仕様上行数が分からない。質問者の書き方も悪いから気づかなかったです。 これからはちゃんとcodeを押して囲って下さい。
guest

0

ベストアンサー

Recatngle と Rectangle

public void setRecatngle(int ha)
r.setRectangle(h);

投稿2019/04/15 02:21

kodai

総合スコア759

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

GK.1225

2019/04/15 02:46

ご指摘の部分を直したところコンパイルが通りました! ありがとうございます!
guest

0

**C:\Users\fbric\Desktop\情報実験>javac RectangleEditor.java
.\Command.java:15: エラー: シンボルを見つけられません
r.setRectangle(h);

「setRectangle という名前のメソッドはありません。」という意味です。
Rectangle クラスはご自身で定義しているクラスなので、よく確認してください。

投稿2019/04/14 21:00

nskydiving

総合スコア6500

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

GK.1225

2019/04/15 02:47

ご指摘の通り、クラスのスペルが間違っていて正しく定義できていませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問