トップページ⇒tech
1001コメント323KB

【初心者・ネタ】Java質問・相談スレ【大歓迎】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
さーじゃんじゃん質問しよう。
お前らとりあえずがんがってください
そして誰か教えてください。

関連スレ
初心者無視! Java相談室 その9
http://pc.2ch.net/test/read.cgi/tech/1021555964/
調べようとする優秀な奴は↑へどうぞ。

0175デフォルトの名無しさんNGNG
>>174
今の仕様の携帯Javaだと、自分でサーバ立ててインターネット経由で
HTTPパケットで送信することしかできなそう。
0176デフォルトの名無しさんNGNG
プログラマー板で紹介されてたので載っけときます

Java的リンク
http://www.geocities.co.jp/SiliconValley/6064/java_link.html
0177デフォルトの名無しさんNGNG
>>176
いいね
0178デフォルトの名無しさんNGNG
>>176
すげぇ量だな。俺んち、トップページへリンクしてくれよ
0179デフォルトの名無しさんNGNG
初心者です。

動的メソッドと静的メソッドの使い分けがよくわかりません。
変数なら使い分ける必要があるけど、なんでメソッドをいちいち動的に割り当てるのでしょうか?
全部静的で問題ないような気がするんですけど。
0180デフォルトの名無しさんNGNG
>>179 Javaに静的メソッドはない。
Java使ってる限り動的束縛強制ギプスからはどうやっても
逃れられないのでそんな事悩む必要なし。

ポリモーフィズムについて勉強してから
C++スレにでも行ってごらん。
0181179NGNG
>>180
ええ、本には関数の前にstaticをつけると静的メソッドになるって
かかれていたんですけど。

ポリフォーフィズムはこれから勉強します。
0182デフォルトの名無しさんNGNG
>>179
メソッドってのは動的に割り当てたりするもんじゃない。
(というか、「動的メソッド」という言い方は普通使わない。)
0183180NGNG
>>181
お、そっちの「静的」か、
カンチガイすまナンダ。
つーか全部その「静的」メソッドだけでプログラミングすると実質的に
構造がC(C++でない)と変わらなくなる。
オブジェクト指向言語の意味がない。
(仕事でやると↓でヒーローになれる)
http://pc.2ch.net/test/read.cgi/prog/1021560641/l50

メソッドはあくまで「オブジェクト」の動作の定義ってのが
オブジェクト指向の前提。staticが例外。
0184181NGNG
>>183
つまりstaticなメソッドでも動くけど、暗黙の了解で使うなってことですか?
0185デフォルトの名無しさんNGNG
そうじゃない。
その本に書いてないの?
0186デフォルトの名無しさんNGNG
ダブルディスパッチってなんですか?
0187デフォルトの名無しさんNGNG
>>184
役割が違うので互いに単純に代替できるようなものではない。
必要性があるからこそJavaにも取り入れられたわけで
gotoほど忌み嫌われる存在ではない。
しかし使いどころが分からずに乱用すると困った事になるのも事実。
0188デフォルトの名無しさんNGNG
XMLファイルに登録してある内容を読んで、箇条書きのHTMLを作成したいんですが、XMLファイル
の読み方というのがよくわかってません。
今はnew BufferedInputStream(new FileInputStream("test.xml"))でループさせてstringに入れて
るんですが、これでいいんでしょうか? 他にやり方があったら教えてください。
0189デフォルトの名無しさんNGNG
XML読むなら最初はDOMを利用する方法がわかりやすくていいと思いますよ。
CrimsonとかXercesとかのソフトウェアはXMLドキュメントをObject化してくれます。
また、単純にHTML吐き出したいのならXSLTというソフトウェアを利用すると再利用性の高いコードがかけると思います。

see
http://xml.apache.org
0190デフォルトの名無しさんNGNG
>>184
ユーティリティなどのわざわざオブジェクトとしてインスタンス化する必要のないようなメソッドは静的メソッドとして実装するとコードとがシンプルになり、メモリが節約できます。
私はがんがんユーティリティを作るほうなので、静的メソッドを結構多用しますが、それによって、クラスの結合度などが高まってしまって失敗したりと一長一短です。
とりあえず静的メソッドのことは忘れて設計してはどうでしょうか。そのほうがオブジェクト指向に関する理解が早まると思います。
0191デフォルトの名無しさんNGNG
>>189
RESありがとうございます。

>XML読むなら最初はDOMを利用する方法がわかりやすくていいと思いますよ。
>CrimsonとかXercesとかのソフトウェアはXMLドキュメントをObject化してくれます。
まさしくそのDOMでできそうです。これから調べてみます。
シーケンシャルファイルとして読むなんて泥臭いこと、普通はしませんよね^^;。

>また、単純にHTML吐き出したいのならXSLTというソフトウェアを利用すると再利用性の高いコードがかけると思います。
XSLTはお客さんから「自分とこで保守できないのでNG」と言われましたw。

情報、ありがとうございました!
019299NGNG
-------風俗の総合商社・MTTどこでも-------

〇デリバリーヘルス〇デートクラブ〇女性専用ホストクラブ〇
〇ハードSM奴隷クラブ〇レズビアン倶楽部〇ホモ・オカマ倶楽部
〇変態痴女と遊ぶ会〇痴漢・覗き趣味の会〇変態同好会・各種!
●楽しく遊べます! 090-8002-8356番
-----------美男・美女会員など多数在籍中-----------
  http://www.mttdocomo.jp/
-----女性アルバイト随時募集・高収入(日払い)月100万円可能-----
-----レズビアン・スタッフ●ホモスタッフ●女性専用ホストスタッフ同募-----
http://www.mttdocomo.jp/
------------------------------------------------

0193デフォルトの名無しさんNGNG
>>191
中身をXSLT+XSLTプロセッサで作ろうが全部Javaで作ろうが、
顧客がメンテするのは元のXMLファイルだけだと思うのだが...
もしかして、191はJavaのソース込みで納品して、191の顧客は
そのソースをメンテするつもりだとでもいうのだろうか。
0194デフォルトの名無しさんNGNG
VAJでの
デバッグの方法がわかりません、
ステップでのやり方をだれか教えてください。
0195デフォルトの名無しさんNGNG
>>193
SIがプログラムだけを外注してんじゃないの。
そんでそのSIはXSLTが使えないと。
ありえなさそうでありえる話っぽいなぁ。
0196デフォルトの名無しさんNGNG
javaで書いたファイルを、exeファイルみたいに
ダブルクリックだけで起動するにはどうしたらいいんですか?
0197デフォルトの名無しさんNGNG
>>196
JARにする。JDKドキュメントの「JDKのツール」の項目に解説あるから嫁。
マニフェストファイルにMain-Classを登録するのがミソ。
0198196NGNG
>>197
ありがとうございます、勉強します
0199デフォルトの名無しさんNGNG
>>194
F5でステップイン、F6でステップオーバー、F7でステップアウト
でもVAJはサポート打ちきり、Studioに移行するから
あまりおぼえんでよい
0200 NGNG
swingでテキストが二つ並ぶような画面を作成中なのですが、
undoの処理で悩んでいます。
なにかヒントになるWeb,書籍など情報はありませんか??
0201デフォルトの名無しさんNGNG
Java1.2で、publicではないコンストラクタを持つクラスを
別のパッケージから、リフレクションのConstructerクラスのnewInstance(Object[])で生成しようとすると
IllegalExceptionが出て生成できないんですが、だめなんですか?
メソッドやフィールドはprivateでもリフレクションでうまくいったんですが。
0202 NGNG
JUnit対象のクラスやメソッドをテストする雛型を吐いてくれるツールってありますか?
eclipseあたりでできるとハッピーなのですが。
0203デフォルトの名無しさんNGNG
>>202
eclipseでできるよ。対象クラスを選択して右クリック。
new -> Java -> JUnit -> TestCase
あとは、テストしたいメソッドを選択して生成。
0204**********NGNG
>>201
できたぞ。
メソッドやフィールドと同じ方法で。
0205 NGNG
>>203
どうもです。
中身は勝手に作ってくれないの?w
0206デフォルトの名無しさんNGNG
>>200
JTextAreaつかってんなら、JFCのデモでいいんじゃん?
0207デフォルトの名無しさんNGNG
>>204
使用されるほうのクラスで、setAccessible(true)としないとだめなのかな。
0208**********NGNG
ソース上げ

import java.lang.reflect.*;

public class reflecttest{
public static void main(String args[]){
try{
Class cls =Class.forName("test");
Constructor con = cls.getDeclaredConstructor(null);
con.setAccessible(true);
Object o = con.newInstance(null);

}catch(Exception e){e.printStackTrace();}
}
}

public class test{
private test(){
System.out.println("キター");
}
}

これがしたいんでしょ?
0209デフォルトの名無しさんNGNG
今、書籍「独習Java」で勉強しているのですが、付属のCD-ROMを
なくしてしまいました。。。。。。
練習問題・章末問題の解答が。。。
どなたか、「独習Java」の解答(Win版)アップしてくださいぃぃ。
まじ困ってます。
0210デフォルトの名無しさんNGNG
>>209
もっかい買え
0211デフォルトの名無しさんNGNG
>>209
ってか独習Javaやめれば?
もっといい本あるよ。
0212デフォルトの名無しさんNGNG
publicとなにもつけないのとでは
何が違うのですか?
0213デフォルトの名無しさんNGNG
スコープ
0214デフォルトの名無しさんNGNG
ねーねーオブジェクト指向やポリモーフィズム
について詳しく書いてある本ってなんか
ないですかね?
0215デフォルトの名無しさんNGNG
>>214
Java Examples in a Nutshell
http://www.oreilly.com/catalog/jenut2/
で十分だと思う
0216デフォルトの名無しさんNGNG
スコープじゃないだろ、アクセス制御でしょ。
0217デフォルトの名無しさんNGNG
>>215
英語かい!
すみません、英語はきついな〜
0218デフォルトの名無しさんNGNG
>>217
日本語版あるでよ
0219デフォルトの名無しさんNGNG
>>218
まじっすか!ありがとう!
明日書店であさります。
0220209NGNG
もう一回買えって・・・(泣
もっといいのもあるみたいですが、せっかく買ったんで最後まで
やってみるつもりです。。。

ていうか、どなたか「独習Java」の問題の答えください・・・
まじ、困ってますぅぅぅぅ。。。(泣
0221デフォルトの名無しさんNGNG
>>220
問題書けば答えてくれるかも
0222デフォルトの名無しさんNGNG
以下のような文字コードを編集するには、どのようなツールを用いればよいのでしょうか。
( ????.preperties_ja というようなファイルでよく見かけます。 )

「\u5546\u54C1\u4E00\u89A7」

0223デフォルトの名無しさんNGNG
> ねーねーオブジェクト指向やポリモーフィズム
> について詳しく書いてある本ってなんか
> ないですかね?

「Javaの格言」 あたりはどうかな。アレに書いてあることをマネして、Java で一つアプリケーション
(Web アプリケーションはあまりよくないと思う。Swing とか GUI 使うやつがいいよ)作ってみると
もうマスターしたも同然。
0224デフォルトの名無しさんNGNG
多分 foo_ja.properties の形式だと思うが、JDK に付いている
native2ascii を使え。DOS 窓から以下を叩け。

native2ascii -reverse foo_ja.properties > bar_ja.properties

リダイレクト先間違えて既存ファイル消すなよ。
0225デフォルトの名無しさんNGNG
>223
たとえば
class Ex{
public static void main(String args[]){
int i=3,x=5,s=7;
System.out.println(i+x+s);
}
}
で書けるものを
class Ex{
int i,x,s;
}
class Ex2 extends Ex{
public static void main(String args[]){
Ex ex=new Ex();
ex.i=3;
ex.x=5;
ex.s=7;
System.out.println(ex.i+ex.x+ex.s);
}
}
で書くメリットがわからないんです。
ちなみに独習Javaはもってます。(7章で詰まりました)
アプレットや制御ステートメントは少しは理解してると思います。
その本で理解できるでしょうか?初心者なんですみません。
0226デフォルトの名無しさんNGNG
>>225
精進しまひょ
もっと複雑なものを考えるとか
UMLにしてみるとか
0227デフォルトの名無しさんNGNG
windows CE(PocketPC?)用のJDKってあるんでしょうか?
0228デフォルトの名無しさんNGNG
>>209
図書館に行けばあるかも。
0229デフォルトの名無しさんNGNG
>>225
あんがい、君みたいな人が多いのかもな。
おかげで、CやコボからJavaへは移行しやすいとか?
0230 NGNG
>>206
THX!
ついでにundo関連についての”考え方”が
書いてあるWebってありませんか?

JFCのデモのソースを読んだのですが難しすぎて・・・。
0231デフォルトの名無しさんNGNG
>>230
API Reference
googleにないの?
0232デフォルトの名無しさんNGNG
>>225
教習所のなかぐるぐる回ってるだけじゃ
車のありがたみが分からないのと一緒。
0233デフォルトの名無しさんNGNG
これからアプリを作ろうと思っているんですけど、ネタを振ってください。
独習Javaでまだ二日しかJava経験がありませんが。

あまり難しくないけど、いろいろな標準クラスを使うやつがいいです。
形ができたら公開しようと思います。
0234デフォルトの名無しさんNGNG
C++用のリファクタリングブラウザをお願い。
標準クラスだけでばっちり作れると思います
0235_NGNG
Robocodeで最強のロボ作れ
0236233NGNG
>>235
いまIBMのページを調べましたが、おもしろそうですね。
「高機能のロボット格闘シミュレーション・エンジンで、Javaプログラミング学習がずっと楽しくなる」
というのが気に入りました。

http://www-6.ibm.com/jp/developerworks/java/020329/j_j-robocode.html
0237デフォルトの名無しさんNGNG
がんばって、robocode スレを盛り上げてくれ。
0238デフォルトの名無しさんNGNG
[localhost:~/Documents/java_test] nao% cat test_034_pre_02.java
//
// while
//
public class test_034_pre_02 {
public static void main (String [] args) {
int i = 7;

while (--i > 0) {
System.out.println (i);
}
}
}
[localhost:~/Documents/java_test] nao% java test_034_pre_02
6
5
4
3
2
1

上記の前置デクリメントの場合、0を出力しないで終了するけれど、
後述の後置デクリメントだと、0まで出力するのはどうしてなの?

[localhost:~/Documents/java_test] nao% cat test_034_post_02.java
//
// while
//
public class test_034_post_02 {
public static void main (String [] args) {
int i = 7;

while (i-- > 0) {
System.out.println (i);
}
}
}
[localhost:~/Documents/java_test] nao% java test_034_post_02
6
5
4
3
2
1
0

Javaは初めてのプログラム言語で、初めてまだ3日目。。。
0239デフォルトの名無しさんNGNG
[localhost:~/Documents/java_test] nao% cat test_034_pre_02.java
//
// while
//
public class test_034_pre_02 {
public static void main (String [] args) {
int i = 7;

while (--i > 0) {
System.out.println (i);
}
}
}
[localhost:~/Documents/java_test] nao% java test_034_pre_02
6
5
4
3
2
1

上記の前置デクリメントの場合、0を出力しないで終了するけれど、
後述の後置デクリメントだと、0まで出力するのはどうしてなの?
0240デフォルトの名無しさんNGNG
[localhost:~/Documents/java_test] nao% cat test_034_post_02.java
//
// while
//
public class test_034_post_02 {
public static void main (String [] args) {
int i = 7;

while (i-- > 0) {
System.out.println (i);
}
}
}
[localhost:~/Documents/java_test] nao% java test_034_post_02
6
5
4
3
2
1
0

Javaは初めてのプログラム言語で、初めてまだ3日目。。。
0241デフォルトの名無しさんNGNG
三重カキコになってしまった。。。
ゴメン。。。
0242デフォルトの名無しさんNGNG
大馬鹿者の>>241を晒しあげ
0243242NGNG
>>241
--iはiに1を加算してからその値を返す。
i--はiを返した後にiに1を加算する。

それを理解すればなぜそうなるのか分かるでしょ。
0244243NGNG
加算じゃねー、減算だ。
0245デフォルトの名無しさんNGNG
ワラ
0246241NGNG
>>243レス、ありがとう。
デクリメント演算子の役割は本を読んで(一応)理解しているつもり
だけれど、疑問点は次の点なんです。
whileのループ変数に( i > 0 )の場合に、実行しろという文なのに、
後置デクリメントの場合、(i >=0)と書かれているのに、
System.out.printlnが0を出力するのはなぜなのかというのが、疑問。

もしかして、
While (i-- > 0) の時点では、i = 1だけれども、
System.out.printlnの時点では、i = 0となっていると理解すればいい
の?
0247241NGNG
自己レス、ゴメン。
理解できた。
0248TL使いNGNG
TurbolinuxServer6 で コンパイルとおるプログラムを
TurbolinuxServer7 で コンパイルしたらエラーになっちゃった。なんでだろ。

エラー内容は 入力された文字が全角記号だったら云々かんぬん
とかいう判定文にて 「unclosed character literal」とか言われちゃうの。
0249質問ですNGNG
JAVAで日付、時間をとりたいんですけど
明日の日付はどうすればいいのでしょうか。
本日の日付なら

java.util.Date currentTime = new java.util.Date();
calendar.setTime(currentTime);

こんな感じでとれたんですが・・・。
0250デフォルトの名無しさんNGNG
>>249
3600 * 24秒足す。
0251デフォルトの名無しさんNGNG
86400000000ns足す
0252質問ですNGNG
えーと・・・スーパーど初心者ですみません。
どのタイミングで足せばいいのでしょうか・・・。
お願いします。
0253デフォルトの名無しさんNGNG
日時処理はなるべく Calendar クラス使え。

Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, +1);
0254質問ですNGNG
>>250サマ>>251サマ>>253サマ
できましたぁ〜ありがとうございます!

修行不足ですみません・・・。
0255デフォルトの名無しさんNGNG
すいません
どこに聞けばいいのかわからないので書きます
これってそんなに怖いんですか?
わかんない人はあけないでください
http://www.rental-web.com/~azuma/pha/medusa/Medusa.gif
0256デフォルトの名無しさんNGNG
>>255
巨大真っ白 (透明?) 画像。
つーか、半角のブラクラ判定スレへどうぞ。
0257デフォルトの名無しさんNGNG
>>256
んじゃ、いってきます ありgとです
0258デフォルトの名無しさんNGNG
JavaでFTPを扱うライブラリってありますか?
ソケットからゴリゴリ書くしかないんでしょうか。
0259デフォルトの名無しさんNGNG
>>258
http://www.google.com/search?num=100&hl=ja&safe=active&q=ftp+library+java&btnG=Google+%8C%9F%8D%F5&lr=
こんなに一杯
0260デフォルトの名無しさんNGNG
>>256
どうやって判断したんですか?
私のマシンのNetscapeにいれたら応答しなくなりましたよ
0261258NGNG
THX。日本語で探したのが悪かったみたいです。
0262デフォルトの名無しさんNGNG
FTP程度だったら ソケットからゴリゴリ(?)書いても
そんなに手間にならんと思うけど…

FTPでRandomAccessFileってできないかなぁ…
読み込みだけだったらすげー簡単だけど。
0263デフォルトの名無しさんNGNG
>>248
OSのlocale設定でも見直せば?
該当部分のソースも書かない、
エラーメッセージも全部書いてない、
では他に答えようが…
0264デフォルトの名無しさんNGNG
print文で疑問があります。

[localhost:~/Documents/java_test] nao% cat test_041.java
//
// return
//
public class test_041 {
public static void divide (double n1, double n2) {
if (n1 == 0) {
System.out.println ("Enter the number except 0.");
return;
}
else if (n2 == 0) {
System.out.println ("Enter the number except 0.");
return;
}
else {
System.out.print (n1 + " / " + n2);
System.out.print (" = ");
System.out.println (+ n1 / n2);
System.exit (0);
}
}

public static void main (String [] args) {
if (args.length == 2)
divide (Double.parseDouble (args [0]), Double.parseDouble (args[1]));
else {
System.out.println ("How to use : enter command number number");
System.exit (1);
}
}
}

このソースの中にあるdivide名のメソッド中にある
else {
System.out.print (n1 + " / " + n2);
System.out.print (" = ");
System.out.println (+ n1 / n2);
System.exit (0);
}

を

else {
System.out.println (n1 + " / " + n2 " = " + n1 / n2);
System.exit (0);
}

と書き換えると、コンパイル時にエラーが出てしまいます。
どうしてなのでしょうか?
0265デフォルトの名無しさんNGNG
>>260
ネスケ用の画像ブラクラか。俺 IE だから分かんなかった。
ヘッダ部で無駄に巨大なサイズ指定して OutOfMemory で無応答にさせるタイプかな。
実際、ダウンロードして Fireworks で開こうとしたらメモリ足らんと言われた。
ファイルサイズ的には 146 バイト。手元にバイナリエディタが無いので詳細は不明。
0266デフォルトの名無しさんNGNG
>>265
ご名答。Width と Height が 65535 に設定されてた。
G00D8YE NETSC4PE とか書いてあるしあほくさい。
0267デフォルトの名無しさんNGNG
double x=0.12345;
System.out.print(x);

の表示を小数点以下3桁にしたいんですけどどうやればいいんですか?
0268デフォルトの名無しさんNGNG
>>264
n2の後ろに+入れれ
0269デフォルトの名無しさんNGNG
>>267
NumberFormat nf = new DecimalFormat("0.000");
double x = 0.12345;
System.out.print(nf.format(x));
0270デフォルトの名無しさんNGNG
>>269
できた^^
ありがと。
0271264NGNG
>>268
ありがとう。コンパイルも正常にできた。
多謝多謝。
0272201NGNG
>>208
なんと、Java1.3なら大丈夫だった。Java1.2はできないらしい(?)
0273デフォルトの名無しさんNGNG
超初心者な質問ですいません。JAVAをインストールして、
その次のPATHを通すやり方がよくわかりません。
環境変数に何をどう書き込めばいいのか・・・
XPなのですが、JAVAの初心者向けのサイトなどないでしょうか?
0274デフォルトの名無しさんNGNG
www.hatena.org
■ このスレッドは過去ログ倉庫に格納されています