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

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

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

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

Q&A

解決済

1回答

12877閲覧

java : 他のjavaファイルのクラス変数を呼び出したい

mymt_akck

総合スコア14

Java

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

0グッド

0クリップ

投稿2020/02/22 10:37

編集2020/02/22 10:39

やりたいこと

  • あるjavaファイルから、別のjavaファイルにあるクラスで定義したクラス変数(下記unit)を呼び出し、出力したいと考えています。

状況

ファイル

  • Sect6_3.java(実行して出力するファイル)

java

1public class Sect6_3{ 2 public static void main (String[] args){ 3 System.out.println(FixedPhone.units); //unitsの初期値「0」をプリントしたい 4 } 5}
  • FixedPhone.java(呼び出す先のファイル)
public class FixedPhone extends Telephone{ String iS; static int units = 0; //呼び出したい中身 public FixedPhone(String telNum, String site){ tN = telNum; iS = site; units++; } public void receiveCall(String caller){ System.out.println("rrrrrrrrrrrrrrr"); System.out.println("Calling" + caller + "->" + tN + "(site" + iS + ")"); } }
  • Telephone.java(FixedPhoneのスーパークラス)
public class Telephone{ String tN; public void receiveCall(String caller){ System.out.println("rrrrrrrrrrrrrrr"); System.out.println("Calling" + caller + "->" + tN); } public void talkSomething(String msg){ System.out.println("[" + msg + "]"); } public void hungUp(){ System.out.println("bye"); } }

実行内容とエラー文

cmd

1C:\path>javac Sect6_3.java 2 3C:\path>java Sect6_3.java 4Exception in thread "main" java.lang.IllegalAccessError: class Sect6_3 tried to access field FixedPhone.units (Sect6_3 is in unnamed 5module of loader com.sun.tools.javac.launcher.Main$MemoryClassLoader @5204062d; FixedPhone is in unnamed module of loader 'app') 6 at Sect6_3.main(Sect6_3.java:3)

確認済み事項

  • 上記全てのファイルは同じディレクトリにあり、最新の状態でjavac実行済みです。
  • 公式ドキュメントも確認しました。

環境

  • win10
  • java 13.0.1

お願い

  • どこをどのように直したらよいのか分からないので、共有いただけると幸いです。よろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

エラーが起きるのはソースファイルを指定しているためだと思います。

> C:\path>java Sect6_3.java

コンパイルが出来ているのであれば、実行するのは以下のコマンドになります。

> C:\path>java Sect6_3

投稿2020/02/22 11:19

rubytomato

総合スコア1752

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

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

mymt_akck

2020/02/23 06:41

こちらの通りで解決しました。ごく初歩的なミスでした。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問