[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 08/06 13:20 / Filesize : 292 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者】Java質問・相談スレッド102【大歓迎】



1 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 15:21:29 ]
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/

これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド101【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1177938653/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

次スレは>>980あたりで。

29 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 08:50:17 ]
>>28
環境変数(path, classpath)あたりをいじったことある?

30 名前:19 mailto:sage [2007/05/30(水) 09:09:54 ]
>>29
pathは必要に応じて、変数加えたりしています。

自分も問題が起きたとき環境変数に原因があるのかとも思いましたが、
調べたとき、Javaに関わっていた変数は以下の2つでした。

CLASSPATH
jre1.5のインストール場所\lib\ext\QTJava.zip

QTJava
jre1.5のインストール場所\lib\ext\QTJava.zip

1.6をインストール後にも、この変数には変化がなかったので、
問題の原因と思って試しに上の2つを削除したんですが、変化はなかったです。

言われて気付いたんですが、上記の環境変数について調べてなかったので、
ちょっとQTJavaについてググったら、ttp://blue.ap.teacup.com/applet/pierrot/20051116/archive
に、原因っぽいのが書いてあるので、試してみます。




31 名前:デフォルトの名無しさん [2007/05/30(水) 09:28:03 ]
質問よろしくお願いいたします。

Java実行のコマンドラインで
-verbose:gc -Xloggc
を指定すると、ガベージコレクションの内容がファイルに書き出されますが、同様に
-verbose:class
の結果をファイルを指定に書き出すオプションはあるんでしょうか?
ちょっと見付けられなかったので、もしあれば、教えて頂けないでしょうか。

32 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 09:30:49 ]
>>30
環境変数周りは昔から鬼門なんだわ。
path(classpathでない方)にjava関連が残っているならば一度消す。
それで起動しなくなるならば、アンインストールしてインストールしなおす方がいいかも。
classpathの方は、存在自体がウンコの場合があるので、一度環境変数ごと消す方がいい。

リンク先見たが、勝手にclasspath書き換えるのか・・・糞林檎。

33 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 09:32:04 ]
>>31
標準出力をファイル出力なんかにパイプするなりしたら?

34 名前:19 mailto:sage [2007/05/30(水) 10:35:34 ]
>>32
ダメでした・・・

CLASSPATH、QTJavaの2つの環境変数を消して(ほかにJava関連はありませんでした)、
再起動⇒アンインストール⇒再起動⇒jre1.6インスト
したのですが、同様のエラーが以前発生します。

QuickTImeもアンイストしたんですが、意味無かったです。

そもそもCLASSPATHなくても、jre1.5は問題なく動作してたので、何が原因かますますわからなくなってしまいました。

35 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 11:59:04 ]
>>34
コマンドプロンプトを表示して、
java -version
と打つとどうなる?

36 名前:java.lang.Exception [2007/05/30(水) 13:45:33 ]
>> 34
「jre1.6インスト」
そもそもEclipse環境にはJREじゃなくてJDKが必要なんだけど・・・

37 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 13:55:12 ]
> そもそもEclipse環境にはJREじゃなくてJDKが必要なんだけど・・・
ウソはいかん。



38 名前:19 mailto:sage [2007/05/30(水) 14:20:18 ]
>>35
別の作業してたので遅くなりましたが、

>java -version
java version "1.6.0_01"
Java(TM) SE Runtime Environment (build 1.6.0_01-b06)
Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)

と表示されます。

39 名前:デフォルトの名無しさん [2007/05/30(水) 14:21:21 ]
JOptionPaneのボタンに初期状態でフォーカスを当てて、ダイアログを開いてからエンターキーを押すとダイアログが閉じるようにしたいのですが
どのようなメソッドを利用すれば宜しいでしょうか。setFocusable(true);では上手くいきませんでした。
下記サンプルコードです。

public class MainFrame extends JWindow {
private JDesktopPane desktopPane = new JDesktopPane();
private JOptionPane optionPane = new JOptionPane();
public static void main(String[] args) {
MainFrame main = new MainFrame();
main.setSize(300, 300);
main.setVisible(true);
}
public MainFrame() {
desktopPane.setSize(100, 100);
desktopPane.setVisible(true);
this.add(desktopPane);
optionPane = new JOptionPane("TEST", JOptionPane.WARNING_MESSAGE,
JOptionPane.YES_NO_OPTION);
optionPane.setFocusable(true);
JInternalFrame iFrame = optionPane.createInternalFrame(desktopPane,
"TEST");
if (!desktopPane.isAncestorOf(iFrame)) {
desktopPane.add(iFrame, 0);
}
iFrame.setBorder(new BevelBorder(BevelBorder.RAISED));
iFrame.show();
}
}

40 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 14:34:58 ]
>>38
アンインストールはされてないようだね。
pathなどにも入っていないということになれば、レジストリに設定されているという所だろうな。
上書きインストール、アンインストール、その他もろもろ試してダメだとすると、近くに詳しい人いないならばOS入れなおす方が早そう。


41 名前:31 [2007/05/30(水) 14:45:50 ]
>>33
ありがとうございました。頂いた線でやってみたいと思います。

42 名前:19 mailto:sage [2007/05/30(水) 14:47:27 ]
>>40
誤解をまねいてしまったようで、すいませんが、
さきほどのはjre1.6をインストしたときに実行・表示されたものです。
アンインストしたときに同上のコマンドを実行しても、認識はされませんでした。


43 名前:デフォルトの名無しさん [2007/05/30(水) 15:20:16 ]
同フォルダ内にtest.txtがあれば「ふぁいる:test.txtは、そんざいします。」と
その下に「OK:なんとかかんとか」という表示され、
txtがない場合はそんざいしません。という文章が表示されるプログラムを組んだのですが、
二つほど問題が発生しました。
1:OK:の隣りのなんとかかんとかの部分が表示されない。(なんとかかんとか、という文章ではなく違うなにかが表示される予定)
2:test.txtがフォルダ内にない場合には、コンパイルでエラーが出てしまう。

プログラムはこれです→ccfa.info/cgi-bin/up/upload.htmlのup3656
どこが間違ってるか教えてくれないでしょうか。

44 名前:39 [2007/05/30(水) 15:24:11 ]
追記
JInternalFrame.setSelected(true)で見た目上は選択済みの色になったのですが
エンターキーを押すとバックグラウンドのツールで改行が・・・。

45 名前:19 mailto:sage [2007/05/30(水) 15:42:38 ]
結果として解決できませんでしたが、色々とご意見ありがとうございました。
レジストリもわかる範囲でいじってみましたが、うまくいきませんでした。

時間に余裕ができたら、OS入れなおしてみます。それまでは1.5で、やってみます。



46 名前:デフォルトの名無しさん [2007/05/30(水) 19:35:29 ]
firefoxで連続した半角文字を折り返す処理について
下記で紹介されているスクリプトを使ってみたのですが
なぜかまともに動いてくれません・・・。原因がわからない。
このスクリプトを使うとき何か注意しないといけない点とかありますか?

www.koikikukan.com/archives/2005/08/04-235647.php

47 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 21:03:21 ]
>>46
質問する場所を注意しないといけませんね



48 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 21:07:07 ]
>>46

+ JavaScript の質問用スレッド vol.56 +
ttp://pc11.2ch.net/test/read.cgi/hp/1178526934/

49 名前:デフォルトの名無しさん [2007/05/30(水) 22:04:22 ]
あるクラスCLASS1で求めた整数型の値kを別のクラスCLASS2で呼び出したいんですけどどうすればいいんですか?

50 名前:24 [2007/05/30(水) 23:36:39 ]
>>27
ご説明いただいた方法でできました。
ありがとうございます。

51 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 05:22:26 ]
>>49
アルファベットぐらい自分で勉強してから来い

52 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 07:16:45 ]
Javaの参考書を買おうと思うのですが、プログラミングに使ってるソフトがエクリプスならばやはり参考書もエクリプスで解説してるものがいいんでしょうか?

53 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 09:11:59 ]
>>52
その方がいいとは思う。
だけど、Eclipseを使っていて、かつ入門に適した本ってのがない。

個人的にはEclipseの本1冊と、独習Javaあたりを併用するのがいいと思う。
独習Eclipseとか出ないかね。

54 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 11:07:51 ]
コードスタイルについて質問なんですけど、
public class hoge{
public void hage(){
}
}
てやるのが一般的らしいのですが、
public class hoge
{
public void hage()
{
}
}
て書くのは邪道?

55 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 11:26:09 ]
>>54
そんなのはプロジェクトのコーディング規約なわけで、自分だけでやるなら
なんだっていいだろ。
まあ、ECMAぐらいは知っておけ

56 名前:54 mailto:sage [2007/05/31(木) 12:29:25 ]
レスありがとうございます。
そうですか・・・目を慣らさせとくために、コードスタイルを前者に変えて
やって見ようかと思います。

57 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 12:54:15 ]
コードフォーマットはこだわらない。
んなもん、Eclipseで設定して一発変換でしょう。



58 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 15:47:46 ]
>>53
ありがとうございます
とりあえず、知り合いに薦められた「やさしいJava」を買って、そのあとエクリプスの方も買うことにします

59 名前:デフォルトの名無しさん [2007/05/31(木) 16:59:22 ]
Oracle9.2 JDBCを利用して更新可能カーソルを宣言、日付列の更新を行うと例外が発生します。
java.sql.SQLException: 内部エラー: Unable to construct a Datum from the specified input
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1130)
at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:1100)
at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:1583)
at oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1615)
at oracle.jdbc.driver.UpdatableResultSet.updateDate(UpdatableResultSet.java:1481)
at oracle.jdbc.driver.OracleResultSet.updateDate(OracleResultSet.java:2852)
対処法などありましたら教えていただけないでしょうか。

60 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 17:06:43 ]
>>59
なんかぐぐるとこういうのがあったりするけど、DB板で聞いたほうがいいかもね。
eai.ittoolbox.com/groups/technical-functional/seebeyond-l/update-timestamp6-in-oracle-results-in-sqlexception-965046?cv=expanded
聞きなおすときにはOracleとJDBCの正確な版数(たとえば9.2.0.5とかそういうマイナー版数まで含めたもの)も
示したほうが教えてもらえるかも。

61 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 21:44:44 ]
テスト用と割り切った GUI を提供するような仕組みなりプログラムってないものでしょうか。

単に、開発中に動くようになった部分をメンバーに見せるとき、CUI だとあんまりだってだけなのですが。

極論すれば

public static String executeA();
public static String executeB(String);
public static String executeC(String String);

こんなのを用意したら(引数も戻り値も String で結構)、
パラメータの数分のテキストエリアと、実行ボタンが並ぶ。
戻り値はメッセージボックスでフォーマット無視で表示してくれれば構わないのですが。

62 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 22:18:44 ]
>>61
引数を配列で渡してGridLayoutかなんかにfor文でグリグリ貼り付ければできそうな気も
するけど…あとはコンポーネント毎にリスナを登録して…actionPerformedの中がちょっと
面倒かな?そうでもないかな?よくわからないや
単なる思い付きです。

63 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 22:37:50 ]
>>61
javax.swing.JOptionPane 使えば、いくらか似たような事ができそうな気もする。

64 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 23:01:53 ]
>>61
ある程度の制限をかければ可能ジャマイカ?
というか、JUnitのTestRunnerみたいなのでいけそうだけど。

個人的にはCUIでいいと思うけどなぁ
Eclipseのプラグインでリッチなコンソールを作るのはどうだ?w

65 名前:デフォルトの名無しさん [2007/06/01(金) 00:00:13 ]
日本語が含まれているjavaファイルがコンパイル時にエラーになってしまいます・・・。

66 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 00:13:27 ]
エラーも貼らないで相談ですか

67 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 00:21:05 ]
>>62-64
やっぱりそんな所と言うか、地道に一つ作ってあとはコピペ
がよさそうですかね。ありがとうございます。

EclipseのRCPは少し考えたのですが、意外と手ごろと言う感じでなかったので。
スタンドアロンでもいけるあたりはいい感じだったのですけど。



68 名前:ニュースナビゲーター mailto:sage [2007/06/01(金) 00:31:44 ]

人気の高いニュースをすぐ見よう。
「祭」に、のりおくれるな。

2ちゃんねるニュース速報+ナビ
newsnavi.2ch.net/

WWWブラウザの「お気に入り」や「ブックマーク」に登録しよう。

69 名前:デフォルトの名無しさん [2007/06/01(金) 01:36:57 ]
公開鍵と秘密鍵を使用して暗号化、複合化をするメソッドなのですが
いったい何をしているのかよくわからないのでどなたか丁寧なコメントの
書き込みや解説などしてください。お願いします。

public int extMod(int a, int b, int n) {
long ret = a % n;
for(int i=1; i<b; ++i) {
ret = (a * ret) % n;
}
return (int)ret;
}

public int[] encrypt(int e, int n, int[] from) {
int[] to = new int[from.length];
for(int i=0; i<from.length; ++i) {
to[i] = extMod(from[i],e,n);
System.out.println("" + from[i]+" => "+to[i]);
}
return to;
}


70 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 01:53:46 ]
この程度のプログラムで丁寧に解説するって、見たまんまじゃん。
よくわからないじゃなくてホントはまったくわからないんだろ?

71 名前:デフォルトの名無しさん [2007/06/01(金) 02:08:14 ]
まったくといっても過言ではないですね。
すいません。
どうか僕が理解できるように解説してください。お願いします

72 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 03:19:51 ]
コードが何をするのかがわからないのか、
なんでこのコードで目的を達成できるのかがわからないのか。


73 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 03:48:23 ]
javaで2つのDVI-Dに画像を表示というかDVI-Dにデータを
送りたいのですがどうすればいいでしょうか?

74 名前:デフォルトの名無しさん [2007/06/01(金) 08:50:55 ]
JVM間のメモリ共有って技術的に可能ですか?

親JVM
├───┬───┬─ …
子JVM 子JVM 子JVM …

みたいな構成で。

75 名前:デフォルトの名無しさん [2007/06/01(金) 09:30:26 ]
アプレットのテキストエリアに.txtなどのファイルを読み込んで表示させるにはどうすればよいのでしょうか?

76 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 09:47:34 ]
なんかボタンがあって、
それを押すと、忠告が出るやつの
タグってどういうのですか?
インプット何とかってやつw

77 名前:54 mailto:sage [2007/06/01(金) 10:29:01 ]
JOptionPane.show〜Dialog("-------");色々あるから〜は自分で調べてね。



78 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 10:46:10 ]
>>76
お前のソレはjavaScriptの事じゃね?

79 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 12:45:23 ]
いままでの中で一番レベルの低いスレになりそうです

80 名前:デフォルトの名無しさん [2007/06/01(金) 18:26:13 ]
アプレットのテキストエリアに.txtなどのファイルを読み込んで表示させるにはどうすればよいのでしょうか?
どうしても出来ません
教えてください

81 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 18:51:29 ]
アプレットが出来ないのか、テキストエリアが出来ないのか、ファイルの読み込みができないのか、権限を与えるのができないのか、まずは状況を説明汁


82 名前:デフォルトの名無しさん [2007/06/01(金) 21:03:00 ]
テキストファイルはサーバーにあるの?クライアントにあるの?

83 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 22:00:52 ]
finally節の使い所教えてください

84 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 22:03:25 ]
>>83
java.io.Closeable 実装クラスのインスタンスを必ず close() するのに使ったり

85 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 22:29:22 ]
ファイル入力(1000件) → 処理 → ファイル出力(1000件)

1GBくらいある大容量ファイル(改行無しの固定長)を上記の流れを繰り返すことで処理したいのですが、
skipなどを使用しても、入力ファイルから同じ箇所を何回か読んだりしてうまく処理できません。
ファイル分割入力の方法を教えていただけないでしょうか?

86 名前:デフォルトの名無しさん [2007/06/01(金) 22:54:10 ]
String line="";
if(bt==button1){

try{
BufferedReader fin = new BufferedReader(new FileReader("File.txt"));
//String line;
while((line = fin.readLine())!=null){

textArea.setText(line);
// System.out.println(line);
}
fin.close();

}
catch(Exception ee){

System.out.println("読み込みエラー");
System.exit(1);

}
}


このようにしてテキストエリアに"File.txt"の中身を書き込みたいんですが
1行1行上書きされているようで上手くいきません

どなたかいい方法を教えてください

87 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 23:13:45 ]
>>86
TextArea#appendとかではいけない?



88 名前:デフォルトの名無しさん [2007/06/02(土) 01:15:36 ]
>>87
ありがとうございます
出来ました。

89 名前:デフォルトの名無しさん [2007/06/02(土) 12:51:25 ]
公開鍵と秘密鍵を使用して暗号化、複合化をするメソッドなのですが
いったい何をしているのかよくわからないのでどなたか丁寧なコメントの
書き込みや解説などしてください。お願いします。

public int extMod(int a, int b, int n) {
long ret = a % n;
for(int i=1; i<b; ++i) {
ret = (a * ret) % n;
}
return (int)ret;
}

public int[] encrypt(int e, int n, int[] from) {
int[] to = new int[from.length];
for(int i=0; i<from.length; ++i) {
to[i] = extMod(from[i],e,n);
System.out.println("" + from[i]+" => "+to[i]);
}
return to;
}


90 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 13:09:42 ]
>>89
丁寧にいうと、お前には無理。

91 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 17:11:04 ]
指定した範囲の乱数を取得したいのですが、どのようにしたらよいでしょうか?
例えば2以上6以下の範囲でといった感じです。
お願いします。

92 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 17:42:28 ]
>>89-90
>>69-72

あと複合化じゃなくて復号な。二重に間違ってる。

93 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 18:23:23 ]
>>91
えーと「6以下」ってことは6も含むのな?
整数で2, 3, 4, 5, 6のどれかをランダムに取得するなら
int rand = (int)(Math.random() * 5) + 2;
でどうぞ。

実数値で [2, 6) の範囲というのなら、
double rand = Math.random() * 4 + 2;
でいいと思う。


94 名前:デフォルトの名無しさん [2007/06/02(土) 23:16:34 ]
(x,y)座標の集団を管理したいのですが、

int[] pos = {x,y} の形で座標を表して、
これをVectorに格納するという形にすると、

vec.addElement(pos);で座標{x,y}を格納した後、
それをを消そうとして、
int[] pos2 = {x,y};
vec.removeElement(pos2);としても
posとpos2が同じと見なされないみたいで、
消えてくれません。

いい方法はないでしょうか?

95 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 00:03:45 ]
Pointクラスというものがある。

96 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 00:08:21 ]
配列の代わりにListを使う

97 名前:94 mailto:sage [2007/06/03(日) 00:39:57 ]
>>95
J2MEなのでありませんでした orz
>>96
String専用Vectorみたいなもの?

結局座標をStringにしてしまいました。



98 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 00:56:55 ]
専用クラスつくってequalsメソッドをオーバーライド、これだね

99 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 01:57:19 ]
hashCodeのオーバライドも忘れずに

100 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 04:47:35 ]
java+swingでsocketを使ってネットワーク認証を行うプログラムを作っているのですが、IP更新をJAVAから行うことはできますか??
認証をとった後、IPを自動的に更新したいのですが検索しても見つけられなかったもので・・・


101 名前:デフォルトの名無しさん [2007/06/03(日) 08:21:49 ]
Javaを勉強していく上でJavascriptが必要になるときってありますか?

102 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 08:25:40 ]
別に

103 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 08:49:33 ]
Web系が多いから必然的にやることになるわな。
だけど、難しい処理なんてほとんどないから、必要になった時に文法とか関数調べられればそれだけでOKだと思う。

104 名前:デフォルトの名無しさん mailto:age [2007/06/03(日) 10:14:55 ]

 【プログラマーの方々へ】

ageで失礼します。Threadを使う並列処理プログラミングを上手に行う方法を
ご教示ください。

javaのサンプルファイルを見て勉強しますと、「あ、こんなところで
wait();」、「ここでsynchronizedを使うのはなぜ」、「notify();を
わざわざメソッドの最後に書き込むのはどうして」、などの疑問が
噴出します。

C.A.R.ホアの並列処理の教科書を読んで勉強をしたことがあるのですが、
理論と実践は随分違うなと感じます。

実際に現場で並列処理のプログラミングをされていらっしゃる方々、
どうかご教示ください。お願い申し上げます。

105 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 11:14:53 ]
>>104
Threadでの処理が必要だなと感じたらThreadで処理する。
synchronizedでもwaitでも何でも必要なかったらしない
使わざるを得ない、又は使った方が良いパフォーマンスが得られたからから使うって感じかな。
Threadを使ったものと使わないものを二つ用意してパフォーマンスを比べるってのが理解しやすい思うよ。

106 名前:デフォルトの名無しさん mailto:age [2007/06/03(日) 11:44:21 ]
>>105
レスどうもありがとうございます。

そこの判断に利用できるTOOLは何かありますでしょうか。
スレッドの振る舞いを可視化できるようなモノがあったら使ってみたいの
ですが。

107 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 14:01:04 ]
Javaでマルチスレッドなプログラミングをやりたいなら
ダグリー共著の少し前に出た本を読むといいよ



108 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 17:11:48 ]
すみません。初心者なのですが、どうしても分らないので質問させてください。
swingを使っています。

まず、下記のように画像を表示するメソッドを作り、一旦画像を表示させました。

public void imagehyouji(String image){
   label01 = new JLabel(new ImageIcon(image));
   panel02.add(label01);
}

しかし、その後で別の画像の引数を渡してメソッドを呼び出しても、画像が変わらないのです。
このメソッドをどのように改良すれば、メソッドを呼び出すたびに画像を変えられますか?

お手数ですが、どうか教えてください。お願いいたします。

109 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 17:41:51 ]
>>108
画像をセットするメソッド
JLabel#setIcon(Icon icon)

セットしたらコンテナのvalidate()を呼んで描画を更新する

110 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 18:12:38 ]
>>109
できたぁあああああああ
ありがとうございました!( TДT)

111 名前:デフォルトの名無しさん [2007/06/03(日) 20:41:49 ]
org.apache.commons.httpclient について教えてください。
あるサイトにログインし、トップページを表示するようなプログラムを作ろうとしたのですが、
org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
情報: Redirect requested but followRedirects is disabled
と、出てしまいログインすることが出来ませんでした。

処理の流れとしましては
login.hogehoge.xxx/login を post送信
↓(ログイン画面を解析して、setParameterにリクエストパラメータをセットし)
login.hogehoge.xxx/login を post送信
↓(ここでorg.apache.commons.httpclient.HttpMethodDirector isRedirectNeededと出てしまいます)

PostMethodではsetFollowRedirects(true)にするとエラーになったので、GetMethodに変えて
送信してみましたが、GETリクエストは処理されないのか「パスワード」が違います。のHTMLが返ってきました。


正常な流れだと
login.hogehoge.xxx/login を post送信
↓(ログイン画面を解析して、setParameterにリクエストパラメータをセットし)
login.hogehoge.xxx/login を post送信
↓(ここで hogehoge.xxx/index.html にリダイレクトするHTMLが返ってくるはずです)
hogehoge.xxx/index.html に リダイレクト送信

になると思うのです。 ヘッダー情報を細かく開示しないと判断できないでしょうか?^^;
Redirect処理の方法が分からなく躓いていると思うのですが、どなたかご教示願います。

112 名前:デフォルトの名無しさん [2007/06/03(日) 20:43:22 ]
あぁ、すみません、アンカー付いちゃった><

113 名前:デフォルトの名無しさん [2007/06/03(日) 21:50:53 ]
誰か…>>74について…

114 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 22:14:09 ]
>>113
必要性があると思えない。
プロセス(JVM)を分けたいならば、シリアライズなり方法は幾らでもあるだろ?
マルチスレッドじゃダメなのか?
どうしてVMを分けて同じメモリを共有したいんだ?
で、だれ(どのVM)がGCするんだ?

質問の意図が解らないから誰も答えないんだよ。

115 名前:111 mailto:sage [2007/06/03(日) 22:14:35 ]
org.apache.commons.httpclient についてですが、
違う方法(HttpURLConnection)を使ったらできました。

先ほどエラーになった個所では、 ●●へジャンプします。って リダイレクトする
htmlが取得できました。
その後トップページにリダイレクトしたら ログイン後の画面になってました。

116 名前:デフォルトの名無しさん [2007/06/03(日) 22:51:50 ]
>>114
何を興奮してるんです?
可能かどうか聞いただけなんですが

117 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 23:03:20 ]
>>116
随分と偉そうだな



118 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 23:20:08 ]
>>113
おまえには無理

119 名前:デフォルトの名無しさん [2007/06/03(日) 23:24:57 ]
>>118
的確な答え、サンクス

120 名前:webmaster@気まぐれアナスイ mailto:192.168.0.1 [2007/06/03(日) 23:30:07 ]
!(Φ_Φ+)
確かに構成図だけでは何をしようとしているか理解する事は難しいです。
構成図のみで理解し使用目的が分かればprogram.上bug.は起こらないと思います。


121 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 23:34:30 ]
>>113
Cなりなんなりでメモリを共有する親子プロセスを作って、
それぞれのプロセスでJNIを経由してJVM起動すれば
共有できるんじゃないかな。

122 名前:デフォルトの名無しさん [2007/06/03(日) 23:37:41 ]
116ですが
>>114さん失礼しました

そうですね。
普通ならマルチスレッドでやるような事を
無理矢理わざわざJVMのマルチプロセスで実現することは可能なのかなと
そういう事でした。

重ねて、失敬しました

123 名前:デフォルトの名無しさん [2007/06/03(日) 23:41:01 ]
>>121
やはり、JNI絡みになりますかね。
なんとなく理解しました。
ありがとうございます

124 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 01:58:38 ]
>>74
Java共有クラス
www-06.ibm.com/jp/developerworks/java/040709/j_j-shared.html
アプリケーションで実装したという話は聞いたことがない。

125 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 02:36:01 ]
どなたか100もよろしくお願いします。

126 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 07:38:29 ]
>>125
IP更新の意味が誰も解らないと思われ

127 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 07:40:51 ]
Hibernateで値を変えていないのに更新されてしまうことがあります。
なぜですかね?



128 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 08:02:06 ]
>>127
なんの値が更新されてしまうんだ?w

129 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 11:06:20 ]
質問です

Java Runtime Environment Version 6 Update 1(最新版?)をインストールしようとすると

「インストールパッケージを開くことができませんでした。パッケージが
存在し、アクセスできることを確認してください。または、アプリケーションベンダに
問い合わせ、このパッケージが有効なWindowsイントーラパッケージであること
確認してください。」


と言う説明がでました。板違いかもしれませんが誰か詳しい方、初心者に教えて下さい。
宜しくお願いします。








[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<292KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef