• 締切済み

InputReader OutputReaderクラスの使い方

yusukeyの回答

  • yusukey
  • ベストアンサー率56% (17/30)
回答No.3

当初の問題は解決されたということですね? せっかくですから何をどうしたら解決したのか書き記してはいかがでしょうか? 皆さんで情報共有することを目的とした場所ですから。 また、NoClassDefFoundError は当初の問題とは別の現象のようですので焦点を明確にするためにも別の質問として登録されてはいかがでしょう。

rozannu
質問者

補足

デバックツールeclipseでエラーの部分を1つ1つつぶして いく(ちなみにeclipseはどのように直すかを明記してくれます。)事で問題を解決しました。今回のソースでは public class AJ1002 extends OutputWriter{ public TSAJ1002(String string) { super(string); } のようにコンストラクタの追加(他のimportファイルにも)がほとんどの修正個所だったようです。 まだ、実行ができないので別の質問として登録させて いただきます。

関連するQ&A

  • 【Java】親クラスでMainメソッドの出力

    Javaについてです。 コマンドライン引数を複数渡し、数値の判定をtry/catchで行う。 catchメソッドには「stringFlg = true;」のみ。 渡ってきた値が数字のみの場合は、数値*数値の文字数を出力し、 数字のみでない場合は文字列を逆から1文字ずつ出力する。 上記のプログラムを下記のように変更したいです。 Testクラスで別パッケージのTest2クラスを継承し、Test2のLogメソッドを呼び出す。 引数で渡ってきた値をMainメソッドでコンソールに出力していたところを Logメソッドでコンソールに出力する。 Mainメソッドを呼びだそうとするとコンパイルエラーが起きる上に、 Mainメソッド内でLogメソッドをどこで呼び出せばいいのかイマイチ分かりません。 教えて下さい。 現時点のソースコードです。 package Test; import Test2.Test2; public class Test extends Test2 { public static void main(String[] args) { Test2 Log = new Test2(); boolean stringFlg = false; for (String arg : args) { try { int num = Integer.parseInt(arg); int nums = num * arg.length(); Log.Log(); stringFlg = false; } catch (NumberFormatException e) { stringFlg = true; }if(stringFlg){ char[] chars = arg.toCharArray(); for (int i = chars.length - 1; i >= 0; i--){ char str = chars[i]; Log.Log(); } } } } } package Test2; import Test.Test; public class Test2 { public void Log() { Test2 test2 = new Test(); System.out.println(test.main(args[0])); //コンパイルエラー } }

  • StringクラスのcompareToメソッド

    ArrayListに登録した文字列を五十音順にソートしようと思いComparator を使用して 以下のようなサンプルプログラムを作ってみました。 ところが想定していたような {赤ちゃん、富士山、山口県}とはならず {富士山、山口県、赤ちゃん} というような結果になりました。 compare() の戻り値の部分を return ((String)arg1).compareTo((String)arg0); に変更しても{赤ちゃん、山口県、富士山} となり辞書の並びとは異なる結果になりました。 辞書順に並べるにはなにかよい方法はありますでしょうか。 public class compareTest { public static void main(String[] args) { ArrayList<String> array = new ArrayList<String>(); String a = "赤ちゃん"; String b = "山口県"; String c = "富士山"; array.add(a); array.add(b); array.add(c); for(int i=0;i<array.size();i++) { System.out.println("ソート前=" + array.get(i)); } Collections.sort(array, new testComp()); for(int i=0;i<array.size();i++) { System.out.println("ソート後=" + array.get(i)); } } } public class testComp implements Comparator { public int compare(Object arg0, Object arg1) { return ((String)arg0).compareTo((String)arg1); } }

    • ベストアンサー
    • Java
  • packageについて

    以下のことでどうしてもエラーが出てしまうのですが、 package jp.co.se.app.test.a; public class a1{ //メソッド public void go(){ System.out.println("hoge"); } } package jp.co.se.app.test.b; import jp.co.se.app.test.a.a1; public class main{ public static void main(String [] args){ a1 aa = new a1(); aa.go(); } } a1クラスはもちろんコンパイルできますが、 mainクラスでは、シンボルを解釈できません:a1 と出てしまいます。 c:\jp.co.se.app.test.b>javac -classpath c:\jp main.java なにが原因なんでしょうか? どなたか教えてください!

    • ベストアンサー
    • Java
  • Integer クラスについて教えて下さい

     今晩は、java初心者です、宜しくお願いします。    Integerクラスについて下のように「i1 = new Integer("1");」と書いても「i2 = new Integer(1);」 と書いても、どちらも数字として認識されているようです。  正式な書き方としてはどちらなんでしょうか、宜しくお願いします。 ========================================================================= public class Test1 { public static void main(String[] args) { Integer i1 = new Integer("1"); System.out.println((i1+2)); Integer i2 = new Integer(1); System.out.println((i2+3)); } }

    • ベストアンサー
    • Java
  • Dimensionクラスの使い方

    Javaを始めたばかりの者です。 参考書を読みながら進めていて下記のソースコードで Dimensionクラスを使用している箇所で行き詰まりました。 使われていたのは、以下のコード --------------------------------------------------------------------------------------------------------------------- import java.awt.*; import javax.swing.*; import java.util.*; class xxx{  static public void main(String[] argv){  /*標準入力からmsgに文字列を入力*/  String msg = scan.next();  /*JLabelクラス型のオブジェクト型変数を作成し、インスタンスを生成*/  JLabel label = new JLabel(msg);  /*JLabelのインスタンスのコンストラクタに入力されたmsgのサイズを取得*/  Dimension dim = label.getPreferredSize();  ・・・etc  } } ---------------------------------------------------------------------------------------------------------------------- 自分が今まで使ってきたクラスは下記のような感じで使っていましたが、ここではnewしていない。 これは、どういうことなんでしょうか? クラス名 dim = new クラス名(); インスタンス作成 = コンストラクタの呼び出し。 new演算子はクラスのコンストラクタを呼び出している理解ですが Dimension dim = label.getPreferredSize(); 上記のコードではDimentionクラスのインスタンスは作られていないということだと思います。 ということは、 ここでは何をしているのでしょうか? どなたか、教えて下さい。

    • ベストアンサー
    • Java
  • サブパッケージについて

    jp.co.checkに格納したCheckDataクラスを jp.co.dataのmainメソッドで呼び出したいのですが、 C:\j\jp\co\alpha\subject>javac data\ex31.java data\ex31.java:7: check.CheckData にアクセスできません。 クラスファイル .\check\CheckData.java は不正です。 ファイルにクラス check.CheckData が含まれていません。 削除するか、クラスパスの正しいサブディレクトリにあるかを確認してください。 check.CheckData a = new check.CheckData(); というエラーメッセージが出ます。 作成したソースは package jp.co.data; public class ex31 { public static void main(String args[]) { int x = 333; check.CheckData a = new check.CheckData(); a.checkNum(x); } } これと以下の package jp.co.check; public class CheckData { public int checkNum(int a) { if(a > 0) System.out.println("true"); } } 2つです、どなたか教えてください。

  • このクラスをもとに2

    import java.lang.*; import java.io.*; import java.util.*; class SimpleReader{ public static void main(String[] argv) throws IOException{ InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String s; System.out.print("Input: "); System.out.flush(); s = br.readLine(); } } このクラスをもとにプロンプト「Input: 」を出力して、文字列を入力させ、その文字列を反転(例えば"abc"→"cba")させて出力しつづけ、「end」と入力すると終わるプログラムを教えてください。

    • ベストアンサー
    • Java
  • このクラスをもとに…。

    import java.lang.*; import java.io.*; import java.util.*; class SimpleReader{ public static void main(String[] argv) throws IOException{ InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String s; System.out.print("Input: "); System.out.flush(); s = br.readLine(); } } このクラスをもとにプロンプト「Input: 」を出力して、文字列を入力させ、その文字列をそのまま出力しつづけ、「end」と入力すると終わるプログラムを教えてください。

  • mainクラスのpublicの意味を教えて下さい

     お早う御座います、JAVA初心者です、宜しくお願いします。  main クラスの public をコメントアウトしてもエラーもなく走ります。  これは、「public static void main(String[] args)」を持っているクラスを自動的に「main クラス」と判断しているということでしょうか。 ============================================================ class Sub { void disp() { System.out.println(" a "); } } /*public*/ class Main { public static void main(String[] args) { Sub s = new Sub(); s.disp(); } }

    • ベストアンサー
    • Java
  • メソッド宣言内でクラス名が書かれる理由

    public static void main(String arg[]){ 上記は、メソッド宣言ですが、このメソッド宣言の中に書かれているStringは、「標準クラスの1つ」だと聞いています。(標準クラスの意味さえ僕はわかりませんが、、参考書に書かれてあるのを見てもチンプンカンプン) 何故Stringは標準クラスの1つなのに、メソッド宣言の中に書かれているんですか? 質問1:私の仮説では、メソッドがどこのクラスに属するかを明示するためにメソッド宣言内にStringが書かれていると考えてます。それでよろしいですか? 質問2:メソッド宣言とは本質的にどういうことですか?プログラミング初心者の僕でもわかるように解説お願いします。

    • ベストアンサー
    • Java