★★Java質問・相談スレッド140★★
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2010/07/20(火) 17:30:09プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
ttp://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
★★Java質問・相談スレッド138★★
http://pc12.2ch.net/test/read.cgi/tech/1272685619/
次スレは>>950あたりで。
過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
0002デフォルトの名無しさん
2010/07/20(火) 17:34:20■ AWT と Swing は --
Java低速GUI Swing 9
http://pc12.2ch.net/test/read.cgi/tech/1261232019/
■ SWT は --
Java 高速GUI SWT 3
http://pc12.2ch.net/test/read.cgi/tech/1164877399/
■ Java 3D APIは --
【徹底討論】Java3Dの可能性について考える
http://pc12.2ch.net/test/read.cgi/tech/1033703640/
■ NTT DoCoMo の iモード携帯電話用 Java (iアプリ) は --
iモード携帯電話用Java(iアプリ) Part21
http://pc12.2ch.net/test/read.cgi/tech/1276164970/
■ DoCoMo 以外は --
CLDC+MIDP+携帯電話用Javaスレッド part 9
ttp://pc12.2ch.net/test/read.cgi/tech/1249357352/
■ Androidアプリの作成は --
【Google】Androidアプリ作成part5
http://pc12.2ch.net/test/read.cgi/tech/1279354196/
■ 課題・宿題は --
★★ Java の宿題ここで答えます Part 69 ★★
http://pc12.2ch.net/test/read.cgi/tech/1267796762/
0003デフォルトの名無しさん
2010/07/20(火) 17:42:39NetBeans Part6
http://pc12.2ch.net/test/read.cgi/tech/1273665879/
■ Eclipseに関する雑談は --
Eclipse統合M29【Java/C++/Ruby/Python/Perl】
※dat落ちしてるのでとりあえずここでどうぞ
統合開発環境Eclipseプラグイン開発QA
http://pc12.2ch.net/test/read.cgi/tech/1081517094/
**** 開発環境が必要の場合は ****
■ J2SE 5.0 (1.5.0)
ttp://java.sun.com/j2se/1.5.0/ja/
■ Java SE 6
ttp://java.sun.com/javase/ja/6/
**** 実行環境だけが必要の場合は ****
■ Java ソフトウェアのダウンロード
ttp://www.java.com/ja
0004デフォルトの名無しさん
2010/07/21(水) 22:30:58このサイトを見ながら環境設定をしているのですが、JAVA_HOMEの設定をして
コマンドプロント上でset JAVA_HOMEを実行させても
環境変数 JAVA_HOMEが定義されていません と表示されてしまいます。
システム環境設定で JAVA_HOME=c\java\jdk 1.6.0_21
と入力し、スペル間違いは無いはずなのですが。。
どなたか解決方法わかる方いませんでしょうか?
0005デフォルトの名無しさん
2010/07/21(水) 22:35:160006デフォルトの名無しさん
2010/07/21(水) 22:40:47このサイト見ながらやってもダメですか?
0007デフォルトの名無しさん
2010/07/21(水) 22:48:120008デフォルトの名無しさん
2010/07/21(水) 22:56:07ちゃんとインストールしたディレクトリに変更してあります。
ちなみにF:\Java\jdk 1.6.0_21に保存したのでその場所を指定しました
0009デフォルトの名無しさん
2010/07/21(水) 22:56:26説明するのめんどうだから端的に、いっぺんログインしなおして試してみるといい。
0010デフォルトの名無しさん
2010/07/21(水) 23:02:19ありがとうございます
一度再起動してみようと思います
0011デフォルトの名無しさん
2010/07/21(水) 23:02:45今回の問題の次に、"F:\Java\jdk" というファイルが見つかりません、とか出るだろうと予言。
こういう場合に jdk のコマンドを使う際には
> "%JAVA_HOME%\bin\javac.exe" test.java
とか "" で囲む必要があったと思う。老婆心。
0012デフォルトの名無しさん
2010/07/21(水) 23:06:2511 は不要。問題ない。
0013デフォルトの名無しさん
2010/07/21(水) 23:12:10>>11さんもあらかじめ次のトラブルの予想をしてくれたようで・・・
ありがとうございます。問題なく解決できました。
最後にこんな初歩の初歩のような質問をして申し訳ありませんでした。
私もこのスレ住人のように質問に答える事が出来るくらいにJavaを理解していきたいと思います
0014デフォルトの名無しさん
2010/07/22(木) 04:19:010015デフォルトの名無しさん
2010/07/22(木) 04:57:560016デフォルトの名無しさん
2010/07/22(木) 10:50:490017デフォルトの名無しさん
2010/07/22(木) 11:51:14もうちょっと日本語上達させてから書き込もうな
0018デフォルトの名無しさん
2010/07/22(木) 13:13:44または、ライブラリはありますか?
inspect, describeなどは無いようですが?
0019デフォルトの名無しさん
2010/07/22(木) 13:28:18java.lang.reflect
0020デフォルトの名無しさん
2010/07/22(木) 14:16:01自演お疲れ様です
0021デフォルトの名無しさん
2010/07/22(木) 16:38:59オブジェクト(インスタンス)の中身でもOKですか?
デバックでは「インスタンスの中が現在どうなってるか」って場面多いと思うんだけど、
そんなとき、インスタンスの状態調べるライブラリあってもよさそうだけど、無いですか。
0022デフォルトの名無しさん
2010/07/22(木) 17:16:230023デフォルトの名無しさん
2010/07/22(木) 21:55:33自分でAPIドキュメント調べろ。19の好意に甘えるな。
0024デフォルトの名無しさん
2010/07/22(木) 22:02:310025デフォルトの名無しさん
2010/07/22(木) 22:14:540026デフォルトの名無しさん
2010/07/22(木) 23:12:10flash使いで最近javaでandroid開発を始めたものですが、
文字列で変数にアクセスする方法を調べています。
たとえば(以下as3.0コード)
var i0:int = 0;//int変数作成
trace( this[ "i" + "0" ] );//上記のi0変数にアクセスして0が出力できる
みたいな事をjavaでしたいです。
色々調べたんですが探し方が悪いのか
見つからないので方法があれば教えていただきたいです。
0027デフォルトの名無しさん
2010/07/22(木) 23:39:34クラスのフィールド変数ならリフレクション使えば出来る
Class clazz = Class.forName(クラス名);
Field f = clazz.getDeclaredField("i0");
f.setAccessible(true); // privateなら
int i = f.getInt(取り出したいクラスのインスタンス);
メソッド内の変数なら無理かと
0028デフォルトの名無しさん
2010/07/22(木) 23:40:56毎回結果が違うんですけど、変な風に最適化が働いてループ打ち切られてる?
public static void main(String[] args) {
int a = 0;
int b = 0;
for (int i = 0; i < 0x7FFFFFFF; i++) {
a += i % 360;
b++;
}
System.out.println(a);
System.out.println(b);
}
0029デフォルトの名無しさん
2010/07/22(木) 23:55:29おおー、これです
早速調べたんですが、なるほど、APIで提供されている訳ですね
初めての・・・みたな本に書いてない訳だ
大変勉強になりました。ありがとうございます
0030デフォルトの名無しさん
2010/07/23(金) 01:40:29Eclipse3.5同梱のJRE環境に限った話では、見た感じ問題なさそう。
-1073756799
2147483647
-1073756799
2147483647
-1073756799
2147483647
-1073756799
2147483647
-1073756799
2147483647
java version "1.6.0_14"
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Java HotSpot(TM) Client VM (build 14.0-b16, mixed mode)
サーバは知らない。
0031デフォルトの名無しさん
2010/07/23(金) 08:03:54んなわけねーだろ、言語仕様で決まってるんだからさ
と思って実行してみたら、本当に動作がおかしいでやんのワロタ
003231
2010/07/23(金) 08:22:20バグデータベースに報告ある?
public static void main(String[] args) {
int a = 0;
for (int i = 0; i < Integer.MAX_VALUE; i++) {
a = i;
}
System.out.println(a);
}
0033デフォルトの名無しさん
2010/07/23(金) 11:16:380034デフォルトの名無しさん
2010/07/23(金) 15:33:16クライアントがサーバにファイルをアップロードすると、
サーバは接続済みの全てのクライアントにそのファイルを流す。
これを実現するためのサーバ側のコードで悩んでいます。
まずアップロードされたファイルを受け取るためにソケットからinputStreamを取得しますが、
これを各ソケットのoutputStreamに流す時に、どのように実装すればいいのか分かりません。
一つのinputStreamをfor文で複数のoutputStreamに流そうとしても、最初のoutputStreamにしか流せないようです。
これはinputStreamが内部でどこまでデータを取り出したかを管理(?)してるからでしょうか。
他の案としては、一時的なファイルを作ってしまってそのファイルを複数のソケットが読めばできそうですが
どう考えても良いやり方とは思えません。
結局、巨大なbyte配列で一時的にデータを溜めるぐらいしか思いつきません。
何かよい方法は無いでしょうか。
0035デフォルトの名無しさん
2010/07/23(金) 15:53:39003634
2010/07/23(金) 16:07:30返信ありがとうございます。
そこまで考えていませんでした。。
なるほど確かにメモリに溜めるのは無理がありますね。
ということは、ファイル化する方法は悪い方法ではないのでしょうか?
ファイル名管理したりなど少し手間がかかりそうですが。
0037デフォルトの名無しさん
2010/07/23(金) 17:55:01inputstreamから数キロバイトの配列に読み込んで、全部のoutputstreamへ送信
の繰り返しじゃいかんのん?
0038デフォルトの名無しさん
2010/07/23(金) 18:05:08ObjectAnalyzer
0039デフォルトの名無しさん
2010/07/23(金) 18:18:42恐ろしい
こんなコード書かれたらたまらんわ
004034
2010/07/23(金) 18:29:54おおなるほど!これでいけそうです。
while (-1 != (n = inputStream.read(w))) {
outputStream.write(w, 0, size);
}
こんな感じのお決まりコードをコピペして使ってたから
出力部分はひと塊としか考えられていなかった。酷い頭の堅さだ。。
アドバイスありがとうございました。
0041デフォルトの名無しさん
2010/07/23(金) 23:55:050042デフォルトの名無しさん
2010/07/24(土) 13:13:07public class Parent {
Child child;
}
public class Child {
Parent parent;
}
こんなふうに相互に参照するとインスタンスを消しても、
参照が残ってしまってメモリリークするという噂を聞いたんですが、本当ですか?
0043デフォルトの名無しさん
2010/07/24(土) 13:17:240044デフォルトの名無しさん
2010/07/24(土) 14:35:09http://java.sun.com/javase/ja/6/docs/ja/api/java/lang/ref/package-summary.html
の最後の到達可能性で言うならば、両インスタンス共に不可到達なだけなのでGCされる。
004542
2010/07/24(土) 14:37:12JavaのGCはそんなにアホではないですよね。
004644
2010/07/24(土) 14:38:240047デフォルトの名無しさん
2010/07/24(土) 14:54:19参考:Wikipedia ガベージコレクション
http://ja.wikipedia.org/wiki/%E3%82%AC%E3%83%99%E3%83%BC%E3%82%B8%E3%82%B3%E3%83%AC%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3#.E5.AE.9F.E8.A3.85
Java
http://ja.wikipedia.org/wiki/Java#.E3.82.AC.E3.83.99.E3.83.BC.E3.82.B8.E3.82.B3.E3.83.AC.E3.82.AF.E3.82.B7.E3.83.A7.E3.83.B3
参照カウント
http://ja.wikipedia.org/wiki/%E5%8F%82%E7%85%A7%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88#.E7.9F.AD.E6.89.80
参照カウント方式だと、リークするようにも書けてしまいますが、
Javaで採用しているマーク・アンド・スイープ方式(を利用する世代別ガベージコレクション)
だと、あるオブジェクトAが別のオブジェクトBを参照していた場合でも、
A自体がどこからも参照されていなければBもGC対象になります。
0048デフォルトの名無しさん
2010/07/24(土) 15:05:30Streamってそんなもん。1回読んだらそれっきり。
BufferedStrem(BufferedInputStream)使えば一度読んだところにも戻れるよ。
まあ、
> 巨大なbyte配列で一時的にデータを溜める
と考え方は同じだけど。
004942
2010/07/24(土) 15:06:24JavaのGCは到達不可能なものを解放する方法なので大丈夫ということですね。
どうもありがとうございます。
0050デフォルトの名無しさん
2010/07/24(土) 16:41:23//code
}
こういうふうに書かれるものってなんですか?キーワードを教えて下さい
0051デフォルトの名無しさん
2010/07/24(土) 18:12:30匿名内部クラス(Anonymous Inner Class)でござる。
ttp://milkyway.merseine.nu/100java/Java/Java045.html
0052デフォルトの名無しさん
2010/07/24(土) 20:36:15そういう、特定のファイル名に対して外部アプリケーションを関連付けるっていうのは
どこで設定してるの?
変更・追加可能?
0053デフォルトの名無しさん
2010/07/24(土) 20:44:11これってeclipseから参照されたりするの?
各クラスの説明としてポップアップしたりとか
0054デフォルトの名無しさん
2010/07/24(土) 21:04:04設定の「一般」「コンテンツ・タイプ」のXMLのAntビルドファイルかと思う。
>>53
するする。jarのプロパティにある、ソースとjavadocを指定する項目。
005553
2010/07/24(土) 21:56:05複数プロジェクトで共通の外部ライブラリは同じフォルダにまとめて参照しようとしてるんだけど
外部ライブラリっていう単位でまとめるとjavadocのファイル名が被るんだよね
index.htmlとか
普通はどうするもの?
005653
2010/07/24(土) 21:57:59普通にさらにサブフォルダ作ればいけるわ
0057デフォルトの名無しさん
2010/07/24(土) 22:13:37このクラスはどうやれば使えるのでしょうか。教えてください
0058デフォルトの名無しさん
2010/07/25(日) 03:06:54staticメンバしかないからインスタンス作らずに、
FFT.fft(xxxx);
で呼べます。
0059デフォルトの名無しさん
2010/07/25(日) 18:52:18パッケージってどういう単位なの?
全く関係無いプロジェクトがパッケージエクスプローラーに並列に並んでるのっておかしいもの?
階層化したい気がしてきたんだが
0060デフォルトの名無しさん
2010/07/25(日) 19:03:15java.lang とか java.util とか java.io とかがパッケージです
自分の作ったクラスを特にパッケージ化してないのなら、デフォルトパッケージとかいうのに入ってるはずです
プロジェクトを階層化というか何かグループ化したいのなら、ワーキングセットが役に立つかもしれません
0061デフォルトの名無しさん
2010/07/25(日) 20:00:21ワーキングセットが求めていたものだった
thx
0062デフォルトの名無しさん
2010/07/25(日) 20:22:22return frogMan;
}
ドット5ってなに?
guiceのサンプルコードにあったんだけど
0063デフォルトの名無しさん
2010/07/25(日) 20:30:310064デフォルトの名無しさん
2010/07/25(日) 22:12:03gnu.getopt.Getoptを使いたいんですが、
ない言われます.
どなたか考えられる原因をエスパーして下さい
0065デフォルトの名無しさん
2010/07/25(日) 22:18:030066デフォルトの名無しさん
2010/07/26(月) 01:39:57パッケージ名からいってJavaのコアライブラリじゃない。
何かのjarファイルをCLASSPATHに含む必要があります。
0067飛び出せ!名無しくん
2010/07/26(月) 02:32:06public static final class id {
public static final int label=0x7f050000;
}
そして、以下のメッセージが表示されました。
R.java was modified manually! Reverting to generated version!
なぜ手動で追加できないんですか?
0068デフォルトの名無しさん
2010/07/26(月) 07:33:31手動で編集してもまたすぐに自動生成されたものに上書きされますので無駄です
0069デフォルトの名無しさん
2010/07/26(月) 14:41:54Runtimeを利用して
Runtime rt = Runtime.getRuntime();
rt.exec("hoge.exe");
として起動はできたのですがそのプログラムの終了の仕方がわかりません
ご教授ください
0070デフォルトの名無しさん
2010/07/26(月) 16:51:14Process proc = rt.exec("hoge.exe");
//強制終了したいなら
proc.destroy();
//終了を待ちたいなら
proc.waitFor();
0071デフォルトの名無しさん
2010/07/26(月) 17:15:25AだけにserialVersionUIDを明示すればよさそうに思うけど、
Bにも明示しなければいけないとある。
何故、serialVersionUIDはAに継承できないんですか?
0072デフォルトの名無しさん
2010/07/26(月) 17:34:24みたいにフィールド宣言してないから serialVersionUID は
A に宣言してあればよいのでは? という疑問だとする。
次のバージョンで B に
public class B extends A implements Serializable { private int field; }
みたいにフィールド追加によって直列化互換性を破壊する可能性があるんだから、
B 自体にも serialVersionUID は必要。
0073デフォルトの名無しさん
2010/07/26(月) 18:26:01ありがとうございます。
javaはパッケージを新しく追加しなきゃいけないものとデフォルトで使えるものをどう区別しているんですか?
0074デフォルトの名無しさん
2010/07/26(月) 20:44:210075デフォルトの名無しさん
2010/07/26(月) 20:54:17> パッケージを新しく追加しなきゃいけないもの
ってimportしなくてもパッケージ名を省略してクラス名だけで利用できるものっていう意味?
それは言語仕様で決まってる。
http://www.nurs.or.jp/~sug/soft/java/java26.htm
0076デフォルトの名無しさん
2010/07/26(月) 21:25:41ありがとうございます!
0077デフォルトの名無しさん
2010/07/26(月) 21:34:55なんでだろw
OS: WindowsXP pro sp3
>java -server -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Server VM (build 17.0-b16, mixed mode)
>java -server Test
124278795
692451
>java -server Test
7564635
42211
>java -server Test
9223011
51427
>java -server Test
9401275
52451
>java -server Test
8854651
49379
>java Test
-1073756799
2147483647
007877
2010/07/26(月) 21:53:26jdkのjavacでコンパイルした物は正しい結果になったわ。
eclipseとjavacでコンパイルした物を、jadで逆コンパイルしても同じソースになったけど、
javapで逆アセンブルしたら、少し違うコードが出力されていた…けど俺には読めないw
0079デフォルトの名無しさん
2010/07/26(月) 21:57:310081デフォルトの名無しさん
2010/07/27(火) 01:49:03特にswitch文はSun(当時)の純正VMがJava言語仕様を踏み倒した実装だった
のでEclipse側が絶対こっちが正しいと主張して、既知の非互換になっていた。
eclipseのクラス出力パスとantのコンパイル出力先を違うパスにして、antの
javacタスクにfork="true"およびexecutable="javacのフルパス"を入れると、
ant経由なら必ずJDKでコンパイルされます。
0082デフォルトの名無しさん
2010/07/27(火) 09:09:32serialVersionUIDで互換性維持はわかるけど、 「B自体にもserialVersionUID が必要」がわからない。
BはAを継承してるけど、AのserialVersionUID は継承できないってこと?
(仕様がそうなっているのなら、何のために)
Aを継承するB, Bを継承するCがあった場合、A, B, CのそれぞれのフィールドにserialVersionUIDを
明示せず、Aのみに明示すればよい方法はありますか。IDは全部同じ。
0083デフォルトの名無しさん
2010/07/27(火) 10:17:21継承はできない。java.io.Serializableの仕様に従って
B、C にはコンパイル実装依存のserialVersionUIDが勝手に付加される。
警告黙らせるだけなら
javac -Xlint:-serial B.java C.java
IDEの警告黙らせたいなら使ってるIDEのヘルプ漁れ。
0084デフォルトの名無しさん
2010/07/27(火) 10:18:40○コンパイラ実装依存
0085デフォルトの名無しさん
2010/07/27(火) 10:48:15継承はできない。java.io.Serializableの仕様に従って、だけど、
たしかに、マニュアルに「明示的に宣言」とある。
次の疑問は、その理由。継承させると、どのような問題を邪気させるというのだろうか。
0086デフォルトの名無しさん
2010/07/27(火) 11:24:04>>72に書いてあるけど、たとえば
//バージョン1
class A implements Serializable { public static final long serialVersionUID = 0; }
class B extends A implements Serializable { }
//バージョン2
class A implements Serializable { public static final long serialVersionUID = 0; }
class B extends A implements Serializable { private int field; }
で、BがAのserialVersionUIDを継承できたとする。
するとバージョン1のBを直列化したものとバージョン2のBを直列化したものには互換性がない、
にもかかわらずserialVersionUIDが同じという事態が発生する。
serialVersionUIDは大抵privateなので
継承元がserialVersionUIDを宣言しているかを一々確認するのは、
素直にBにserialVersionUIDをつけるより手間がかかる。
serialVersionUIDが付いているかどうかだけならコンパイラは簡単にチェックできるが
AのserialVersionUIDを継承できる場合にBがAのserialVersionUIDを継承しつつ、
前のバージョンからフィールドを追加したかまではコンパイラはチェックできない。
0087デフォルトの名無しさん
2010/07/27(火) 11:47:310088デフォルトの名無しさん
2010/07/27(火) 14:29:2272の意味が理解できなく。。。
互換性ね。でも、
1)serialVersionUID=1Lで、AのインスタンスをwriteObjectでファイルに保存し、
その後、Aのフィールドにint fieldを追加してクラスAを変更してからでも、readObjectでdeserializeできるよね。
変更の仕方によっては、互換性なくなると思うけど。
2)もちろん、フィールド変更しなくてもserialVersionUID変更すると、互換性はない。
0089デフォルトの名無しさん
2010/07/27(火) 16:06:40それはとりあえずエラーが出るか否かを気にしてるだけ。
互換性があるかどうかとは関係ないし、実装が変わればエラー出ても文句言えない。
0090デフォルトの名無しさん
2010/07/27(火) 19:13:07実行→実行の構成→Javaアプリケーション
で新規作成して共通タブから実行/デバッグのお気に入りに表示するようにチェックしたんだけど
どこに出てくるの?これ
実行のとこ開いても、「サーバで実行」「Java Bean」の2つがあるだけなんだけど
ここの一覧に出てくるのかと思ってやったんだけど
009190
2010/07/27(火) 20:45:130092デフォルトの名無しさん
2010/07/27(火) 20:59:570093デフォルトの名無しさん
2010/07/27(火) 21:35:55double h1 = this.height;
double h2 = ((Student)o).height;
return h1 > h2 ? 1 : -1;
}
tp://www.lcv.ne.jp/~kenmio/yomimono/yomimono105.htm
Student型をObject引数で受け取って、それもまたStudent型にキャストしてますが、
引数を最初からStudent型にはできないのですか。
それからStudent型の引数であれば、Object引数で受け取ったからといって
引数そのものが変わるわけでもないし、わざわざキャストしなくてもStudent型
のインスタンスだとコンパイラが判断できてもおかしくないと思うのですが。
スーパークラスのメソッドをサブクラスのインスタンスからアクセスできても
その逆はできないというきまりになっているようですが、この場合の引数は
Student型と決まっているのでそれはないと思うのですが。
0094デフォルトの名無しさん
2010/07/27(火) 21:44:51と
public int compareTo(Object o)
は別々の異なるメソッドですので、
public int compareTo(Student o)
を実装しても、Comparableを実装したことにはなりません。
引数がObjectなら、Student以外のObjectを渡すことも出来るので、
本当にStudentかどうかわかりません。
publicメソッドはどこからでも呼べますので、呼び出し元は不定です。
0095デフォルトの名無しさん
2010/07/28(水) 01:17:440096デフォルトの名無しさん
2010/07/28(水) 14:25:17Eclipseはそのまま使うとIBMのjavacやらJVMが使われるから、
何も考えずに使う分には、まあそうとも言える。
けどそれってほんの入り口だし、どのIDEを使うかを決めるのには
他にももっと判断すべきことがあると思う。
0097デフォルトの名無しさん
2010/07/29(木) 05:50:42普及率でeclpseを使うしかなさげ
0098デフォルトの名無しさん
2010/07/29(木) 12:04:17Exception in thread "main" java.lang.NoClassDefFoundError: Test/class
Caused by: java.lang.ClassNotFoundException: .home.saruno.ドキュメント.JAVA.study.Test
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: Test. Program will exit.
ubuntu10.04、コマンドプロンプトでTest.classをコンパイル後に実行すると上記のようなエラーが出てしまいます。
eclipse上ではコンパイルも実行も出来るのですが、どうすればコマンドプロンプトで実行できますか?
0099デフォルトの名無しさん
2010/07/29(木) 12:51:270100デフォルトの名無しさん
2010/07/29(木) 12:59:47$JAVA Test
でも駄目です
0101デフォルトの名無しさん
2010/07/29(木) 13:04:320102デフォルトの名無しさん
2010/07/29(木) 13:11:540103デフォルトの名無しさん
2010/07/29(木) 13:34:140104デフォルトの名無しさん
2010/07/29(木) 14:17:52としてください。(空白は全角です。)
0105デフォルトの名無しさん
2010/07/29(木) 14:33:28とかやってるだろ?
0106デフォルトの名無しさん
2010/07/29(木) 14:57:40jaba /home/〜〜〜/Testのようにパスの指定しての実行については調べてみます
0107デフォルトの名無しさん
2010/07/29(木) 15:11:210108デフォルトの名無しさん
2010/07/29(木) 15:47:170109デフォルトの名無しさん
2010/07/30(金) 16:44:17それともデータの本体はCassandraでインデックスのみLucandraに置くんでしょうか?
0110デフォルトの名無しさん
2010/07/30(金) 22:05:25メソッドhungupがクラスTelephoneで定義されているからです。スーパーク
ラス(Telephone)で定義されているメソッド(hungup)を、そのサブクラス
(CellularPhineやFixedPhone)で上書きした場合、インスタンスの型
(CellularPhineやFixedPhone)でその振る舞いが上書きしたメソッドに従う
ということになります。これをポリモルフィズムと言います。
一方、ObjectはStudentのスーパークラスですが、インスタンス変数height
は持っていません。Object型のインスタンス変数heightについて何かしようと
思えば当然エラーが出ます。さらにポリモルフィズムはインスタンス変数では
なく、メソッドの話です。
0111デフォルトの名無しさん
2010/07/30(金) 22:45:51難しいなLucandra
0112デフォルトの名無しさん
2010/07/31(土) 09:31:56StrutsとかつかってWebアプリ作っていると馴染みは薄いね
でもたまーに使わないとできない要件とかあったりするよね
0113デフォルトの名無しさん
2010/07/31(土) 13:00:13Javaで全然仕事したことないから分からん
0114デフォルトの名無しさん
2010/07/31(土) 13:29:55そういう事例って結構あるもんなのかな?
0115デフォルトの名無しさん
2010/07/31(土) 23:52:36どういうやり方が一般的?
ある程度htmlエディタでデザインを整えたhtmlファイルがあって、
それに表を挿入するパターンなのだが。
0116デフォルトの名無しさん
2010/08/01(日) 00:01:210117デフォルトの名無しさん
2010/08/01(日) 03:21:38FreeMarkerだべさ
0118デフォルトの名無しさん
2010/08/01(日) 06:00:57ある行の内容が入力内容と一致したらそのファイル名を出力する
といったプログラムを書きたいのですが
うまくいきません
line = reader.radLine();
がうまく機能していないようで
試しに
System.out.println(line);
で表示したところ
□a□s□dd□
のようなよくわからない文字列を表示してよくわからなくなってしまました
どなたかご教授ください
0119デフォルトの名無しさん
2010/08/01(日) 08:25:040120デフォルトの名無しさん
2010/08/01(日) 13:11:520121デフォルトの名無しさん
2010/08/01(日) 14:38:150122デフォルトの名無しさん
2010/08/01(日) 16:09:19Hoge select() {
try{
PreparedStatement stmt=...;
ResultSet rs=...;
// ...
} finally{
try{
rs.close();
stmt.close();
} catch(SQLException e) {}
}
というプログラムを見るのですが、これだとrs.close()が例外を投げた場合
stmt.close()が呼び出されないのですが、rs.close()が失敗するとstmt.close()も
必ず失敗するという決まりがあるのでしょうか?
0123デフォルトの名無しさん
2010/08/01(日) 16:47:43http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/sql/Statement.html#close()
rs.close()が失敗するとstmt.close()も失敗するかどうかは、jdbcドライバの実装によると思うが、
closeしなくてもガベージコレクションで自動的にcloseされるみたいですね。
0124デフォルトの名無しさん
2010/08/01(日) 22:43:10英語の文字列と日本語の文字列を区別することは可能でしょうか
0125デフォルトの名無しさん
2010/08/01(日) 22:52:40その文字列中の各文字を調べてひらがなとかが混じってれば日本語だと判定するとかでどうでしょうか。
0126デフォルトの名無しさん
2010/08/01(日) 23:15:17英語でいろいろ問題があることが挙げられてるけどあれだけでも解決しない。
0127デフォルトの名無しさん
2010/08/02(月) 07:00:02http://www.koders.com/java/fid2E7B27F41ADBE1E39D69A4A4AC071AF622510C80.aspx?s=140
あってもなくても何もかわらない気がするのですが…。
0128デフォルトの名無しさん
2010/08/02(月) 07:27:49boolean addPoint の有効範囲を制限してる。
もしくは書いた人の美意識を満足させてるんじゃないかと。
0129デフォルトの名無しさん
2010/08/02(月) 16:12:37ファイルのダウンロードはすでに問題なく動作しており以下のようになっております。
HTML側
onclick="location.href='./OpenFile?file=' + hensu;"
Servlet側
strFile//受け取ったファイル名
ServletOutputStream out;
out = response.getOutputStream();
File inFile = new File(strFile);
InputStream in = new FileInputStream(inFile);
int data = -1;
long longCount = 0;
while ((data = in.read()) != -1){
out.write(data);
longCount++;
if(longCount % 200 == 0){
out.flush();
}
}
in.close();
out.close();
int dispCount= getFromDatabase('DispCount');
dispCount++;
setDatabase('DispCount', dispCount);
この状態でHTMLをクリックするとファイルのダウンロードダイアログが表示されます。ダイアログを表示した時点で「表示カウント」を
+1してDBに書き込んでいるのですがキャンセル時だけ+2されているようで困っています。原因をご存知の方いらっしゃいませんか?
IE6,7,8で同じ
tomcat-5.0.30
j2re1.4.2_08
0130デフォルトの名無しさん
2010/08/02(月) 20:14:12よろしければ、概要から発展まであるわかりやすいサイトがあれば教えてください。
0131デフォルトの名無しさん
2010/08/02(月) 21:08:26勉強になりました
ありがとうございました
0132デフォルトの名無しさん
2010/08/02(月) 21:24:54http://struts.apache.org/1.3.10/userGuide/index.html
0133デフォルトの名無しさん
2010/08/03(火) 02:20:51変数の有効範囲が変わるんですね。
解説ありがとうございます。
0134デフォルトの名無しさん
2010/08/03(火) 11:23:00ありがとうございます。
よろしければ日本語のサイトもご存じであれば教えてください。
0135デフォルトの名無しさん
2010/08/03(火) 15:50:490136デフォルトの名無しさん
2010/08/03(火) 18:15:000137デフォルトの名無しさん
2010/08/03(火) 21:57:13int a = dd.getHours();
ではダメなんですが・・・。
0138デフォルトの名無しさん
2010/08/03(火) 22:15:21普通にとれたけど。ddにnew Date()は代入している?
int a = new Date().getHours();
System.out.println(a);
ところでDate#getHoursは、@Deprecatedだからあまり使うべきじゃぁない。
0139デフォルトの名無しさん
2010/08/03(火) 23:14:51自己解決しました。
もう1つ質問させて頂きたいのですが、
dd = new Date();
date = dd.getDate();
として、dateに日を入れるようにしました。
次に、
<script language="JavaScript" src="./maru.pl"></script>
<script language="JavaScript">
<!--
document.write(date); #####
// -->
</script>
上の#####のwrite( ) の中に変数(date)を入れたいのですが、
どうすれば変数扱いになるでしょうか。
0140デフォルトの名無しさん
2010/08/03(火) 23:17:30>>1
0141デフォルトの名無しさん
2010/08/03(火) 23:26:050142デフォルトの名無しさん
2010/08/03(火) 23:29:43これってパール?w
0143デフォルトの名無しさん
2010/08/03(火) 23:31:160144デフォルトの名無しさん
2010/08/03(火) 23:40:08今どきの釣りはこれだろw
0145デフォルトの名無しさん
2010/08/03(火) 23:50:060146デフォルトの名無しさん
2010/08/04(水) 02:16:36プロセス毎にユニークな(プロセスID的な)値を得る方法を教えてください。
最初は疑似乱数を使用する方法を考えたのですが、
この場合、シード自体がユニークな値の必要があります。
他に考えた方法
B. JNIもしくはJNAを使用してプロセスIDを取得する
C. GUID発行サーバを設置する
0147デフォルトの名無しさん
2010/08/04(水) 03:12:260148146
2010/08/04(水) 03:57:50適当な解説が見つかりました。
Get a unique identifier - Real's Java How-to
http://www.rgagnon.com/javadetails/java-0518.html
0149デフォルトの名無しさん
2010/08/04(水) 06:28:56text = "line1\nline2\nline3\nline4";
がある時に"line1\nline2\nline3" と "line4" を取得するために
以下のようなコードを書いてるんですが長すぎる気がします。
もっとスッキリした書き方はできないでしょうか?
String str1 = "";
String[] arr = text.split("\n");
for(int i = 0; i < arr.length - 1; i++){
if (i == arr.length - 2) str1 += arr[i];
else str1 += arr[i] + "\n";
}
String str2 = arr[arr.length -1];
0150デフォルトの名無しさん
2010/08/04(水) 07:01:00String text = "line1\nline2\nline3\nline4";
String str1 = text.substring(0, text.lastIndexOf("\n"));
String str2 = text.substring(text.lastIndexOf("\n") + 1);
0151デフォルトの名無しさん
2010/08/04(水) 09:31:47lastIndexOfなんて便利なメソッドがあったんですね。
ありがとうございます。
0152デフォルトの名無しさん
2010/08/05(木) 09:04:45「starship_state01.png」画像を読み込み、その後、同じ
「starship_image」変数に「starship_state02.png」を
読み込むのは問題無いのでしょうか?
private Drawable starship_image;
.
.
starship_image = context.getResources().getDrawable(R.drawable.starship_state01);
starship_image.setBounds(x, y, theWidth, theHeight);
starship_image.draw(canvas);
starship_image = context.getResources().getDrawable(R.drawable.starship_state02);
starship_image.setBounds(x, y, theWidth, theHeight);
starship_image.draw(canvas);
0153デフォルトの名無しさん
2010/08/05(木) 11:28:240154デフォルトの名無しさん
2010/08/06(金) 00:26:58九九の表の作成方法を教えてください。
0155デフォルトの名無しさん
2010/08/06(金) 01:09:260156152
2010/08/06(金) 01:32:27レス、ありがとうございます。
他のプログラミング言語(Objective-c 等)では、他のイメージを同じ変数
に読み込む場合、一度メモリからリリースしておかないとメモリリークに
なってしまうので、Java では大丈夫なのかなと思い質問させてもらいました。
大丈夫なのですね。ありがとうございました。
0157デフォルトの名無しさん
2010/08/06(金) 02:10:48System.out.println("1 2 3 4 5 6 7 8 9");
System.out.println("2 4 6 8 10 12 14 16 18");
System.out.println("3 6 9 12 15 18 21 24 27");
System.out.println("4 8 12 16 20 24 28 32 36");
System.out.println("5 10 15 20 25 30 35 40 45");
System.out.println("6 12 18 24 30 36 42 48 54");
System.out.println("7 14 21 28 35 42 49 56 63");
System.out.println("8 16 24 32 40 48 56 23 72");
System.out.println("9 18 27 36 45 54 63 72 81");
0158デフォルトの名無しさん
2010/08/06(金) 02:39:58python最強伝説ですね?
0159デフォルトの名無しさん
2010/08/06(金) 03:44:58synchronizedブロック実行中にobjectそのものにnullを突っ込まれたらNullPointerで落ちますよね?
privte static Hogerable object;
synchronized (object) {
if (object != null) {
return object.doHoge();
}
}
0160デフォルトの名無しさん
2010/08/06(金) 08:58:47クラスの設計者がちゃんと作ってりゃ大丈夫じゃね?
てかそのコードだとsynchronizedの後のnullチェックが良くわからない。
objectがnullの場合synchronizedのところでぬるぽじゃね?
0161デフォルトの名無しさん
2010/08/06(金) 11:09:320162デフォルトの名無しさん
2010/08/06(金) 13:46:38public class Main {
public static void main(String[] args) {
Person x = new Person("太郎", 5);
x.who(); //�@´
x.who("次郎"); //�A´
x.who(10); //�B´
x.who("次郎", 10); //�C´
}
}
http://www.lcv.ne.jp/~kenmio/yomimono/yomimono11.htm
添付ファイル「Java謎+落とし穴」(前橋和弥)によると、下の場合だとメソッドオーバーロード
できないとのことですが、引数の型を自動選択するのがオーバーロード機能ではないですか?
class ShapeDraver {
Static void draw(Policyline policyline){略1}
Static void draw(Circle circle){略2}
Static void draw(Rectangle rectangle){略3}
}
void drawAllShapes(Drawable drawable){
for(int i=0 ; i<shapes.length ; i++){
ShapeDrawer.draw(shape[i]);
}
}
0163デフォルトの名無しさん
2010/08/06(金) 14:03:46オーバーロードはされる。
ただし、オーバーロードされたメソッドの中からどのメソッドを呼ぶかは、
コンパイル時に決定される。
実行時に解決したいなら
interface Shape { void draw(Renderable target); }
class Circle implements Shape { public void draw(Renderable target){ /*円を描く*/ } }
みたいにオーバーライドした方がいい。もしくは、
if (shapes[i] instanceof Circle) ShapeDrawer.draw((Circle)shapes[i]);
みたいに分岐するか。
0164154
2010/08/06(金) 18:41:16>>157 説明不足ですみません、単に表を表示させるのでなくて
プログラムに計算させてcmd上に表示させたいのです。
0165デフォルトの名無しさん
2010/08/06(金) 18:43:16質問が悪かったかもですが、つまりsyncronizedブロックは
・オブジェクト操作
・変数への代入そのもの
の両方をブロックしてくれんの?
という質問です。
0166デフォルトの名無しさん
2010/08/06(金) 19:24:05他のスレッドが synchronized (object) している間はブロックの中に入れないだけだぞ。
見た目が synchronized (object) であっても参照先が別のオブジェクトだったら素通しだし。
0167デフォルトの名無しさん
2010/08/06(金) 21:09:100168デフォルトの名無しさん
2010/08/07(土) 02:12:44ロックを持ってるのは変数そのものじゃなくて、変数が指してる先のオブジェクトだということを理解しているか?
0169デフォルトの名無しさん
2010/08/07(土) 07:25:11「Object型は int型に変換できません。」というエラーが出てしまいました。
ArrayList が Integer であることを明示するにはどこに指定したらよいのでしょうか?
0170デフォルトの名無しさん
2010/08/07(土) 08:05:56ArrayList<Integer>
0171デフォルトの名無しさん
2010/08/07(土) 08:31:13import static org.apache.commons.lang.ArrayUtils.toPrimitive;
:
:
@SuppressWarnings("serial")
ArrayList<Integer> arrayList = new ArrayList<Integer>(){{
add(1);
add(2);
add(3);
}};
Integer[] integers = arrayList.toArray(new Integer[0]);
for(int i : integers) System.out.println(i);
int[] ints = toPrimitive(arrayList.toArray(new Integer[0]));
for(int i : ints) System.out.println(i);
0172デフォルトの名無しさん
2010/08/07(土) 09:07:19どうすればよいでしょうか。
String test ="a1 > a2";
int a1 = 1;
int a2 = 2;
if(test){ //ここの条件チェックで、このままだとtestをBooleanにするか?と聞かれます
System.out.println("OK");
else
〜〜〜
0173デフォルトの名無しさん
2010/08/07(土) 09:21:54ひょっとして、a1がa2より大きかったら、if文の中に入って欲しいのか?
そしたらjavax.script.ScriptEngineしかなさそう。
もしくはevalを実装しているライブラリを探すしかないと思う。
0174デフォルトの名無しさん
2010/08/07(土) 09:33:53なにか制約の違い(おそらくマルチスレッドがらみ?)はあるんでしょうか。
全く同じ実行可能 jarファイル(antによってマニフェスト生成)を
・ダブルクリック(Windows Vista + java1.6.0_14-b08)によって起動
・コマンドラインからjava -jar hoge.jar (←クラス、クラスパスは記述せず、マニフェストを参照)
とした場合で動作が違うようなのです。
と、いうよりも前者のダブルクリック起動だとまともに動作しません。
現象としては2つ目のスレッドを発行すると動かず、ログすら出さずに消失します
(1つ目のスレッドは普通に動作します)。
もちろんeclipse上では完全に動きます。
0175デフォルトの名無しさん
2010/08/07(土) 10:12:02関連付けがjreでコマンドラインのパスはjdk/jreになってたのが原因くさいです・・
5時間もこんなことで;ORACLEめぇえええ・・もうすこし検証します;
0176デフォルトの名無しさん
2010/08/07(土) 11:03:02javaの謎の6.1.1にもあるように、コンパイルの段階で、引数が異なる同名
のメソッド(この場合三つのdraw)は別メソッドとして扱うように変換される
ということです。これがオーバーロード。実行時に引数の個数や型によって、
どのメソッドが呼ばれるか判断されます。
3.2.1のリストにあるように、配列shapesの型はShapeであって、あくまでコ
ンパイラはshapes[i]の型はShapeであるとみなします。その各要素にどのイン
スタンス(Polylineなのか、Circleなのか。。)が代入されるかは実行時でな
いと分かりません。よって、6.1.2のメソッドdrawの呼び出しでは、引数
shapes[i]のインスタンスの型がコンパイル時には判明しないので、上のどの
drawを呼び出すべきが決定できないということになります。つまりコンパイル
できないのでエラーになります。
0177デフォルトの名無しさん
2010/08/07(土) 12:21:32「メソッド呼出し文脈は,恒等変換(5.1.1), プリミティブ型拡大変換 (5.1.2),
又は参照型拡大変換 (5.1.4)を可能とする。」
は、参照型縮小変換は不可能とするという意味じゃない?
縮小変換ってごく特殊な場合を除いて実行時エラー起こすよな。
0178デフォルトの名無しさん
2010/08/07(土) 13:50:12int と Integer は別物なんですね。
同じものだと勘違いしていました、ありがとうございます。
0179デフォルトの名無しさん
2010/08/07(土) 16:35:290180デフォルトの名無しさん
2010/08/07(土) 21:41:27ありがとうございます。
ヒントだけでも助かります。
調べてみますねー。
0181デフォルトの名無しさん
2010/08/07(土) 23:25:22もう後戻りできないとか、他に取り柄が無いとかですかね?
0182デフォルトの名無しさん
2010/08/07(土) 23:26:40Javaなんか使い続けてて仕事無くならないですかね?
0183デフォルトの名無しさん
2010/08/07(土) 23:31:580184173
2010/08/07(土) 23:32:31文字をif文の判断対象にするようなことは普通できないし、するべきじゃないと思う。
だけど、もし自分が「何とかしてJavaScriptのevalのようなことを実現しろっ!」って
すごまれたら、ScriptEngineで工夫して何とかしようとするかなぁ。といった感じ。
0185デフォルトの名無しさん
2010/08/07(土) 23:45:55>>182
正直、次から作るシステムはScalaで作りたいww
Javaが古めかしい言語であることに異論はない。でも言語の学習コストなんてたかが知れていると思うな。
LISPをしらない自分はScalaの文法は衝撃だったけど。まぁ慣れだよね。
0186デフォルトの名無しさん
2010/08/07(土) 23:52:500187デフォルトの名無しさん
2010/08/07(土) 23:53:48Javaの悪口hそっこまでだt
0188デフォルトの名無しさん
2010/08/08(日) 00:14:53いまだにコボラーのおっさんが幅きかせている世界もあるんだぜ
0189デフォルトの名無しさん
2010/08/08(日) 00:18:25プログラムは全く書かないらしいが、徹夜漬けの俺より給料高い。
0190デフォルトの名無しさん
2010/08/08(日) 03:42:33Mirror API では
com.sun.mirror.declaration.AnnotationMirror.getElementValues
を使ってアノテーションのパラメータが、
明示的に与えられたものか、
default によって与えられたものかを
区別することができると思います。
リフレクションAPIを使ってこのような区別をしたいのですが可能でしょうか?
もし可能であればやり方を教えていただければと思います。
0191デフォルトの名無しさん
2010/08/08(日) 09:09:43一応出来ました。ありがとうございました。
ScriptEngineManager sem = new ScriptEngineManager();
ScriptEngine se = sem.getEngineByName("js");
int a1 = 2;
int a2 = 1;
String judge = "a1 > a2";
String test = "var a1="+a1+";var a2="+a2+";if("+judge+"){println('ok');}else{println('ng');}";
se.eval(test);
この方法でどうしてもやれっていう訳ではなくて、
自分が今無理矢理やろうとしている事が、
どう実現出来るか判らないので、質問させてもらいました。
DBと連携させて、変数枠10個くらい毎回動的に入れたものを
条件値で分析調査したいと言った時に、
条件値も同じくDBに入れたとすればString値だし、
どういう実装方法がいいでしょうか。
a1 > a2 のときもあれば、a1 < a2 < a3 やら 1.1*a1 > a4
とかもあると思うんで。
0192デフォルトの名無しさん
2010/08/08(日) 14:29:06でも俺の回りじゃまだまだjava案件だらけだぜ
0193デフォルトの名無しさん
2010/08/08(日) 14:38:20すくなくとも.NETやPHPで組まれたアプリよりJavaアプリのほうが、20年後も(保守担当者にJavaラー死ねよと愚痴られながら)動いてる可能性が高いだろう。
0194デフォルトの名無しさん
2010/08/08(日) 23:28:32ただWindows系の言語と比べると覚えることが少ない(=簡単な)Javaを対象にしてるのが珍しい
0195デフォルトの名無しさん
2010/08/10(火) 02:42:07{1,2,3}を与えたら{{1,2,3},{1,3,2},{2,1,3},{2,3,1},{3,1,2},{3,2,1}}
というように配列の要素を並び替えてできるすべての配列の配列を返すメソッドはどうやったら作ることができるのでしょうか?
0196デフォルトの名無しさん
2010/08/10(火) 02:57:39どっちかというと算数の問題だろ。
0197デフォルトの名無しさん
2010/08/10(火) 07:17:43再帰的メソッドとかでやってみたらどうでしょう?
0198デフォルトの名無しさん
2010/08/10(火) 07:35:320199デフォルトの名無しさん
2010/08/10(火) 08:03:310200デフォルトの名無しさん
2010/08/10(火) 20:12:31o が null じゃなかったらクラス名を、String className という変数に入れたい。
String className;
Object o = ....;
if (o == null) className = "ぬる"; else className = o.getClass().getName();
これは動く。
3項演算子にしたくて、
o == null ? className = "ぬる" : className = o.getClass().getName();
は、o == null のところでコンパイルエラーが出る。
・Eclipse で、o == null のところに赤線が出て、
== にカーソルをマウスオーバーすると
「トークン "==" に構文エラーがあります。AssignmentOperator 蛾無効です」とポップアップが出る。
・null にカーソルを合わせると、「型の不一致: null から boolean には変換できません」とポップアップが出る。
どうしてでしょうか?
o == null も式だと思うのですが・・・
0201デフォルトの名無しさん
2010/08/10(火) 20:16:000202200
2010/08/10(火) 20:22:02動きました! どうもありがとうございます!
でもどうしてそれが正しいのかわからない。
http://itref.fc2web.com/java/operator.html
をみると、
条件式 ? 式1 : 式2
a > b ? max = a : max = b;
と解説されていますが、
className = o == null までは条件式になるのでしょうか?
0203デフォルトの名無しさん
2010/08/10(火) 20:27:53「条件式 ? 式1 : 式2」ってのはまるごとまとめて「値 * 値」や「値 + 値」や「"あ" + "ほ"」と同じようなもん。
ソースの文中にポツッと書いただけじゃ何の意味もない。
なんかの変数やらに代入して初めて意味を持つ。
0204200
2010/08/10(火) 20:32:31int i = a + b;
で、 a + b の箇所で a と b を演算して、その結果を i に入れているわけですが、
同様に
className = o == null ? "ぬる" : o.getClass().getName();
とすると、三項演算子によって得られた結果("ぬる" か o.getClass().getName()) が
o に代入されるというわけですね。
すごくよくわかりました!
三項演算子の箇所全体が、なんらかの右辺(左辺でもいいか)に来ると覚えよう。]
余談までに、いきなり
1 + 1;
という行をボツっと書いたら、同様のコンパイルエラーになりました。
0205デフォルトの名無しさん
2010/08/10(火) 20:33:17言語仕様的に「文」になれる「式」の種類は決まってる。
条件式はその種類に含まれないから、そのままでは「文」になれない。
「文」になれるのは代入、インクリメント、デクリメント、メソッド呼び出し。
className = o == null ? "ぬる" : o.getClass().getName();
は、右辺が条件式、の代入なので「文」になれる。
0206200
2010/08/10(火) 20:37:06誤: o に代入されるというわけですね。
正: className
>>205 さんもどうもありがとうございました。
最近 Java から ruby をやっているのですが、ruby だと「それは式だ」みたいなことをよく言われますが、
あらためて Java での式とはなんぞや、を勉強しなければと思いました。
0207デフォルトの名無しさん
2010/08/10(火) 20:43:21>o に代入されるというわけですね。
oには代入されねぇよww
0208デフォルトの名無しさん
2010/08/10(火) 20:48:53そのページの
> a > b ? max = a : max = b;
自体が間違い。
検証もしてないようなコード書いてるページなんて捨ててしまえ。
何故エラーになるかというと、最大の問題は演算子の優先順位。
通常の演算子は全て?:より優先順位が高いけど、
代入演算子だけは?:より優先順位が低い。
だから、a > b ? max + a : max - b は、
(a > b) ? (max + a) : (max - b)と解釈されるが、
a > b ? max = a : max = b は、
((a > b) ? max) = (a : max) = b みたいな感じに解釈されて、
そもそも正しい式にならない。
よって、>>200は className = ... を (className = ...) のように
カッコでくくるとエラーじゃなくなる。
あと、代入無しで?:を直接書くのも間違いなので、その点でも>>202のページはNG。
コンパイラに「文ではありません。」 と怒られる。
0209デフォルトの名無しさん
2010/08/10(火) 21:08:470210デフォルトの名無しさん
2010/08/11(水) 12:00:11具体的にはWin32で用意されているPrintWindow()のようなメソッドを使って、指定したウィンドウのキャプチャをしたいのです。
最前面に出せばキャプチャ―はできるのですが、ツールバーに置いたままでもキャプチャ―する方法はありますでしょうか?
0211デフォルトの名無しさん
2010/08/11(水) 13:25:590212デフォルトの名無しさん
2010/08/11(水) 14:07:420213デフォルトの名無しさん
2010/08/11(水) 14:43:430214デフォルトの名無しさん
2010/08/11(水) 16:22:46> 最前面に出せば(java.awt.Robotで)キャプチャ―はできるのですが、
> 最小化されていたり他のウィンドウなどに隠れているウィンドウをキャプチャしたいです。
って感じな事を210は言ってるんじゃないのか?
0215デフォルトの名無しさん
2010/08/11(水) 16:43:130216210
2010/08/11(水) 17:08:39その通りです。
Robotクラスを使えば、表示されている画面の情報は得られるんですが、タスクバーに入っていて、見えないアプリケーションの画面とか取れないものかと。
Visual C++ではhttp://msdn.microsoft.com/ja-jp/library/x51z0shh(VS.80).aspxのがあって、Javaにもあるのかなと探しましたが、
http://cs.nyu.edu/zilin/swt/API/org/eclipse/swt/internal/win32/OS.htmlにはりませんでした。。。
自分も使ったことがないのですが、nlinkとかJNIなら呼び出せるんですかね。
0217デフォルトの名無しさん
2010/08/11(水) 17:45:50バージョンの違いによる大きな変更点等を加味すると何年くらい前のものまで大丈夫ですか?
一応pythonの2〜3程度の変化なら許容範囲です。
0218デフォルトの名無しさん
2010/08/11(水) 23:16:19ゲームでスクリーンショット取るやり方だがそのフレームの一番うえのコンポーネントのGraphics2Dのスナップショットをとればいいんじゃない?
0219デフォルトの名無しさん
2010/08/11(水) 23:24:51Javaのウィンドウ以外の画面も取りたいんじゃね?
0220デフォルトの名無しさん
2010/08/12(木) 00:06:300221210
2010/08/12(木) 04:21:340222デフォルトの名無しさん
2010/08/12(木) 04:47:210223210
2010/08/12(木) 07:54:40ウィンドウを指定したり、最前面のキャプチャーはJavaでも出来るので、もしかしたらあるかなと。
JNIは使ったことないので、Javaのみで完結させたくて調べてましたが、無理そうですね。。。
0224デフォルトの名無しさん
2010/08/12(木) 08:19:550225210
2010/08/12(木) 08:35:36そちらの方がいいですかね?
Visual C++では指定したウィンドウの画面イメージが取得できそうなので,JNIを使えばイメージ取得及び解析をしたあとにその結果だけJavaに返せるのかなと考えました。
今JNAを調べてみましたが、win32apiのファンクションをマッピングするJNAもあるみたいですね。そちらの方が簡単そうならそちらでやってみます。
ありがとうございます。
0226デフォルトの名無しさん
2010/08/14(土) 13:17:17public final void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException
{
System.out.println("aaaaaaaaaaaaa");
chain.doFilter(req, resp);
}
だけしかない単純なフィルターでweb.xmlで
<filter-mapping>
<filter-name>RootFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
こんなふうにマッピングしてServletを
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>test.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
こんな感じで全ての*.htmlにマッピングし
http://ドメイン/
を表示するとconsoleにaaaaaaaaaaaaaが2回表示されます。
http://ドメイン/index.html
だと一回しか表示されません。なぜでしょうか?ちなみに、GAEの開発なのでjettyでテストしてます。
よろしくお願いします。
0227デフォルトの名無しさん
2010/08/15(日) 16:36:210228227
2010/08/15(日) 16:39:48Javaのオブジェクト全てをバイナリ化する方法があるかを知りたいんですが
0229デフォルトの名無しさん
2010/08/16(月) 21:39:47http://ドメイン/
にアクセスしたら
http://ドメイン/index.html
に飛ばされてるからじゃね
0230デフォルトの名無しさん
2010/08/16(月) 23:34:51String name = "furry";
String makeNoise() {
return "generic noise";
}
}
class Zebra extends Mammal {
String name = "stripes" ;
String makeNoise () {
return "bray";
}
}
public class ZooKeeper {
public static void main(String[] args) {
new ZooKeeper().go();
}
void go() {
Mammal m = new Zebra();
System.out.println(m.name + m.makeNoise());
} }
このプログラムで実行したらfurry brayになるらしいけどなぜなんでしょう?
0231デフォルトの名無しさん
2010/08/17(火) 00:10:33フィールドのオーバーライドは直感に反した動作をすることが多いのでどこのプロジェクトでも普通は禁じ手だ。
0232デフォルトの名無しさん
2010/08/17(火) 04:06:34隠蔽だと思うんだが
0233デフォルトの名無しさん
2010/08/17(火) 06:27:45にひょんごでおk
0234デフォルトの名無しさん
2010/08/17(火) 15:27:07http://iup.2ch-library.com/i/i0137958-1282026353.jpg
0235デフォルトの名無しさん
2010/08/17(火) 22:39:53PCを買い換える
0236デフォルトの名無しさん
2010/08/17(火) 22:54:28・JREを最新のものに入れ替えてみる。
・グラフィックカードのドライバを最新版や安定版にかえてみる。
・グラフィックカード買い替え。
・コマンドラインオプションつけれるなら
-Dsun.java2d.noddraw=trueしてみる。
ぐらいか?
0237デフォルトの名無しさん
2010/08/17(火) 23:39:100238デフォルトの名無しさん
2010/08/18(水) 01:39:42http://toki.2ch.net/test/read.cgi/bgame/1238720326/
0239デフォルトの名無しさん
2010/08/18(水) 23:22:29PreparedStaetment ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while ( rs.next() ) {
…
}
こんな感じでSQLを実行していますが、
ps.executeQuery() の実行時間をログ出力したいです。
何か賢い方法をご教授願います。
#ps.executeQuery()の呼び元は数百か所あります。。。
0240デフォルトの名無しさん
2010/08/19(木) 00:14:38空間を java.sql 以外に置き換える。
そして中身は実体のインスタンスを委譲して実行時間計測。
元々のコードの修正は Connection 生成しているところをファクトリ化するのと
import 文だけ。
アスペクト指向?聞こえねーな。
0241デフォルトの名無しさん
2010/08/19(木) 00:41:20何かいいソフトはありませんか
0242デフォルトの名無しさん
2010/08/19(木) 00:47:58正しい。以前Connectionをラップせにゃならん状況になったとき、AspectJでなんとかならんかと思って調べてみたら、ヘビー過ぎて心が挫けた。
結局Eclipseの移譲メソッド生成一発で済ませた。行数は酷いことになったが、手間は最小限だったw
0243239
2010/08/20(金) 00:18:15レス、ありがとうございます。
レス頂いた修正方針だと、
機械的な修正にはなりますが、修正ファイル数が多いな〜
と思っていたんですが、
これで行く決心がつきました。
Eclipseの移譲メソッド生成ってのが、便利そうですね。
調べてみます。
ありがとうございました。
0244デフォルトの名無しさん
2010/08/20(金) 14:49:510245デフォルトの名無しさん
2010/08/20(金) 15:53:590246デフォルトの名無しさん
2010/08/20(金) 20:05:04駅の改札、エスカレーター、階段、交差点など人の流れが集中するところにいます。
その周辺で人の流れと逆向きに立ったり柱や壁を背にして、長時間人々を凝視している人間がいたらそうです。
0247デフォルトの名無しさん
2010/08/21(土) 10:30:45PHPやPerlじゃなくあえて勉強のためJavaにしようかと思っています。
生JSP(生サーブレット)でもいいかなーとおもったけどそれじゃなんなので、
こういう小規模ページをサクっとつくるのに向いたJavaフレームワークを探してますが
オススメはあるでしょうか?
0248デフォルトの名無しさん
2010/08/21(土) 11:32:360249デフォルトの名無しさん
2010/08/21(土) 13:11:52お金掛からないし。
0250デフォルトの名無しさん
2010/08/21(土) 13:20:45でもサクッと作りたい人には明らかに不向きだね。
0251デフォルトの名無しさん
2010/08/21(土) 13:27:46まぁ、Eclipseにプラグインとか入れるのは煩わしい。
0252忍者Perl ◆M5ZWRnXOj6
2010/08/21(土) 13:36:190253デフォルトの名無しさん
2010/08/21(土) 13:40:52四の五の言わんとiBATIS使っとけ
0254忍者Perl ◆M5ZWRnXOj6
2010/08/21(土) 13:49:300255デフォルトの名無しさん
2010/08/21(土) 15:01:220256デフォルトの名無しさん
2010/08/21(土) 15:13:50velosurfてWebてわけじゃなくてモデル層ですよね。
コントローラは?Strutsとか生サーブレットですか。
>>249
GAEは興味はあるけど、5年後メンテ不可能になっていかねない技術はちょっとパスですかねw
0257デフォルトの名無しさん
2010/08/21(土) 15:19:17GAEは単にWebアプリのプラットフォームだと思えばいい、Slim3はStrutsのミニマム版。
まぁ、とっかかりちょっと面倒かもしれないから無理強いはしないよ。
0258デフォルトの名無しさん
2010/08/21(土) 15:52:05いや、フルスタックだよ
"A simple example"を見て30分くらいいじればすぐにわかる
http://velosurf.sourceforge.net/overview.html
0259デフォルトの名無しさん
2010/08/21(土) 16:05:530260デフォルトの名無しさん
2010/08/21(土) 16:16:23誘導
http://toki.2ch.net/test/read.cgi/siberia/1281571524/
http://sports2.2ch.net/test/read.cgi/entrance2/1278110231/
http://toki.2ch.net/test/read.cgi/utu/1282074582/
0261デフォルトの名無しさん
2010/08/21(土) 16:34:18ありがとう。Velocityは大昔に使ったことあったので試してみます。
でも日本語の情報少なすぎじゃないかなぁ。
いまApache Clickを調べてるけど、すぐ消えそうな感じがゾクゾクしていいですね
(いや消えるようなのは勘弁なんですがw)。
0262デフォルトの名無しさん
2010/08/21(土) 17:36:16velosurfは依存ライブラリ多くてちょっとどうなん?と思ってしまったのでしばらくClickいじってみます。
0263デフォルトの名無しさん
2010/08/21(土) 17:59:13死ねよ雑魚がww
0264デフォルトの名無しさん
2010/08/21(土) 23:54:540265デフォルトの名無しさん
2010/08/22(日) 01:13:47どうせ3回はいるだろ
0266デフォルトの名無しさん
2010/08/22(日) 14:31:21http://kamome.2ch.net/test/read.cgi/news/1282454634/
0267デフォルトの名無しさん
2010/08/23(月) 11:55:50Apache Clickのほうは日本語の情報が豊富なの?
0268Perl忍者 ◆M5ZWRnXOj6
2010/08/23(月) 23:59:49クソ企業人がわいてそうですね
ゴミみたいなバカはせっせと死んでください
0269デフォルトの名無しさん
2010/08/24(火) 00:11:090270デフォルトの名無しさん
2010/08/24(火) 01:44:58豊富じゃないけど、velosurfよりは多くないですか?と、いうより日本語のサイトでまともにvelosurfを紹介してるサイトってあります?
英語のページでもチュートリアル/FAQ系のサイトはClickの方が多い気がします。
0271デフォルトの名無しさん
2010/08/24(火) 02:47:07>>254
0272Perl忍者 ◆M5ZWRnXOj6
2010/08/24(火) 09:41:47http://yuzuru.2ch.net/test/read.cgi/employee/1282452525/
クソスーツの特徴 まとめ
1、ツイッタのフォローリストがほぼ著名人w 孫正義などホリエや菅野をフォローw
2、FXや株など 経済用語が大好き だけど経済的に並〜貧乏
3、職業はサラリーマン、公務員、教員
4,自己紹介欄にTOEIC900点目指し勉強中w ←金目的
5、やることが浅い 深くやらない かじる程度
6、ブログはyahooやfc2
7、yahooの珍言袋が大好き
8、ジムに通う クソガリーマンはプールかエアロバイクw
9、プログラミング言語は java,VB,C++
10、PCは富士通 VAIO ソニー愛好者
11、子供の写真をブログに載せちゃう
0273デフォルトの名無しさん
2010/08/24(火) 10:14:200274Perl忍者 ◆M5ZWRnXOj6
2010/08/24(火) 10:26:46経済オタな無様な大人の生き様みてきたから
0275デフォルトの名無しさん
2010/08/24(火) 14:18:42教えて下さい。
public class Test1 {
private int[] oldParam = {0, 1, 2};
public Test1(){
int[] newParam = {4, 5, 6 };
this.oldParam = newParam;
}
}
このような、インスタンス生成時に、クラス変数の配列を
新しい変数の配列に書き換えたいのですが、
1.プリミティブ型の配列の場合、参照先はそのままで内容が
変わるんでしょうか?
2.配列をオブジェクトの配列に変更した場合、oldParam の
参照先がnewParamに変更されると思うのですが、その場合、
元々oldParamが格納されていたメモリ領域は、GC対象に
なるということでしょうか?
0276デフォルトの名無しさん
2010/08/24(火) 17:33:53それはプログラムを書くと調べられるのでは?
0277デフォルトの名無しさん
2010/08/24(火) 17:35:43参照先が変わるし古いのは使われなくなったらGC対象になる
0278デフォルトの名無しさん
2010/08/25(水) 04:06:250279デフォルトの名無しさん
2010/08/25(水) 04:52:13>>254
0280275
2010/08/25(水) 09:10:21コード書いていろいろ試してます。
デバッガの使い方の勉強を兼ねて。
使われなくなったものがGC対象になるという点も
納得できました。
ご教示、ありがとうございました。
0281デフォルトの名無しさん
2010/08/25(水) 16:59:29指定したクラスの中で使われている変数の推移を、
JDIを用いて取得して表示するプログラムを作りました
JVMTIでも同じようなことが出来そうなのですが、
ちょっと調べただけでは意味不明でした
JDIとJVMTIは具体的にどう違うのでしょうか?
0282デフォルトの名無しさん
2010/08/25(水) 23:45:57Java⇔RDBのMapping-Frameworkを語るスレ Vol.5
http://hibari.2ch.net/test/read.cgi/tech/1220671877/
テーブル名が"table01"、"table02"、"table03"・・・といった具合に、カラムは全く同じだけど
名前だけ違う、というテーブル群をOpenJPA1で操りたいと考えています。
Entityとテーブルをマッピングする際は、テーブルの名前が固定な場合は
@SecondaryTablesを使えばいけそうというところまでは分かりました。
ただ、テーブルの名前は固定したくありません。
例えばEntityに対して@Table(name = "table??")なんて指定が出来ればベストなんですが…
何か、良い方法はありませんでしょうか。
0283デフォルトの名無しさん
2010/08/26(木) 15:12:27http://www.objectmatter.com/
http://velosurf.sourceforge.net/user-guide.html#reverse
0284デフォルトの名無しさん
2010/08/26(木) 15:36:26またキーリピート?の間隔を0にする方法があったら
(キーを押しっぱなしでだ、、だだだだの入力をだだだだだ)教えてください。
0285デフォルトの名無しさん
2010/08/26(木) 15:39:530286デフォルトの名無しさん
2010/08/27(金) 01:57:46秘孔穿いてるようにしか聞こえん。
0287デフォルトの名無しさん
2010/08/27(金) 21:44:45教えてください
0288デフォルトの名無しさん
2010/08/27(金) 22:58:080289デフォルトの名無しさん
2010/08/27(金) 23:03:04ような気がしないでもない
0290デフォルトの名無しさん
2010/08/27(金) 23:11:00旧版のJDKめっちゃ探し回ったぞ。
0291デフォルトの名無しさん
2010/08/27(金) 23:13:34http://blogs.oracle.com/javase/2010/07/java_se_6_update_21_is_released.html
なんか日付違うね
0292デフォルトの名無しさん
2010/08/29(日) 18:26:11> >>256
> いや、フルスタックだよ
> "A simple example"を見て30分くらいいじればすぐにわかる
>
> http://velosurf.sourceforge.net/overview.html
これより簡単なJavaのフルスタックWebアプリFWってないですかね?
0293デフォルトの名無しさん
2010/08/29(日) 22:54:57u21でベンダ名をSunからOracleに変更したらEclipse起動しなくなっちゃった
ていうので一回差し戻しがあった。
これが原因かどうかわからんけど。
0294デフォルトの名無しさん
2010/08/29(日) 23:03:39ちょっと何言ってるんだかわからないんだけど、
tableXXを要素が空のクラスにマッピングして、共通のスーパクラスで実体を定義、
@InheritanceでTABLE_PER_CLASSにすれば?
> Entityに対して@Table(name = "table??")
てのが実現できるのでは。
0295デフォルトの名無しさん
2010/08/29(日) 23:13:12ttp://civic.xrea.jp/dev/jetty/
0296デフォルトの名無しさん
2010/08/30(月) 17:43:20VB,VCでは配列化してデータを書き込んで配列をグラフックに戻す命令で
はじめて描画されます。
しかしjavaの場合
((DataBufferInt)img.getRaster().getDataBuffer()).getData();
これで配列化したあと配列にデータ書き込むだけで戻さなくても描画されてしまう。
これはどういうことなんでしょうか?
0297デフォルトの名無しさん
2010/08/30(月) 18:25:26それは誰かがそういう風にしたから
>これで配列化したあと配列にデータ書き込むだけで戻さなくても描画されてしまう。
それは誰かがそういう風にしたから
0298デフォルトの名無しさん
2010/08/30(月) 18:30:050299デフォルトの名無しさん
2010/08/30(月) 20:20:19仕様上もそうか、と聞かれるとドキュメントに書いてないから確定的な事は言えんけど、
getRaster も getDataBuffer も getData もゲッターしかないから、
仕様上もそうだと考える方が妥当じゃないかと。
0300296
2010/08/30(月) 20:28:260301デフォルトの名無しさん
2010/08/30(月) 20:59:270302デフォルトの名無しさん
2010/08/31(火) 21:34:070303デフォルトの名無しさん
2010/08/31(火) 22:27:540304デフォルトの名無しさん
2010/09/01(水) 11:39:320305デフォルトの名無しさん
2010/09/01(水) 13:33:140306デフォルトの名無しさん
2010/09/01(水) 15:16:21システムプロパティの file.encoding の事を言ってるなら、
java.lang.System をクラスローダ毎に切り替えるのは無理。
スレッド毎に切り替えるのも無理。
クラス読み込み時にクラス変数に
file.encoding の内容を記録してるクラスなんかだと、
System.setProperty("file.encoding", "UTF-8");
とかやっても無視される。
例えば java.io.OutputStreamWriter あたり。
0307デフォルトの名無しさん
2010/09/01(水) 18:30:27同一VMに同居してるっぽいとこが不思議なんだよなあ。
System.getPropertiy実装を改造してもいいのなら難しい話でもないのだが
0308デフォルトの名無しさん
2010/09/01(水) 19:00:12いまレンサバ幾らぐらい?
0309デフォルトの名無しさん
2010/09/01(水) 21:36:56ファイルのアクセス日時を取得/設定する方法を教えてください。
0310デフォルトの名無しさん
2010/09/01(水) 21:47:22Fileもスレッド生成も必要ないなら、GoogleAppEngineがタダだよ
ここひと月は、さくらVPS(¥980)にTomcat乗せる人柱さんを様子見だな
0311デフォルトの名無しさん
2010/09/01(水) 21:50:170312デフォルトの名無しさん
2010/09/01(水) 21:50:57配列の中から任意のデータを検索する方法を教えてください
0313デフォルトの名無しさん
2010/09/01(水) 22:52:32http://java.sun.com/javase/ja/6/docs/ja/api/java/util/Arrays.html#binarySearch%28T[],%20T,%20java.util.Comparator%29
ただし配列はソート済でなければならない。
0314デフォルトの名無しさん
2010/09/02(木) 08:18:34char配列からメールアドレスを抽出するとか言う話じゃないだろうね?
0315デフォルトの名無しさん
2010/09/02(木) 09:47:10Comparator ってそういうことに使うものなの?
例としてヘンテコ過ぎるだろ
0316デフォルトの名無しさん
2010/09/02(木) 10:17:55とかいう展開にならないといいけれど。いや、>312 ならありうる。
そもそも >302 の書きっぷりをみるからに、
一意に順序づけられるデータの質問とは思えないんだがなあ…
0317デフォルトの名無しさん
2010/09/02(木) 10:21:190318デフォルトの名無しさん
2010/09/02(木) 12:07:26>>302はComparatorを検索処理の中の比較の部分に
使えないかと考えたんじゃね?
0319デフォルトの名無しさん
2010/09/02(木) 12:51:57というわけで >302 よ。
釣でないなら「任意のデータ」とやらをもう少し詳しくな。
とりあえず、要素を探してるのか要素並びを探してるのかだけでも。
コンパラトール云々はそれからだ
0320デフォルトの名無しさん
2010/09/02(木) 12:57:05一見なんだか分からなかったけどそんな読み方もあったかww
0321デフォルトの名無しさん
2010/09/02(木) 14:17:41>>318
>>319
なんで比較とか順序付けとか並びとか質問からそれた話ばっかしてるんだ?
>>312が質問してるのは一致のはなしだろ
0322デフォルトの名無しさん
2010/09/02(木) 15:08:000323デフォルトの名無しさん
2010/09/02(木) 17:25:54百も承知だろう。どちらかと言うと Comparator クラスでつまづくのは equal メソッドの使い方だな、
って気づかないのは Comparator クラスを使ったこともないドシロウト。
0324デフォルトの名無しさん
2010/09/02(木) 18:52:45Eclipse3.6 でプラグイン開発の勉強をしています.
既にEclipseにインストールされているプラグインからクラスローダをとってきて,
ワークスペース上にある Java クラスをそのクラスローダでロードすることは可能でしょうか?
例えばワークスペースにあるJavaプロジェクト上に Hoge クラスがあるとき,
プラグイン側で
Bundle bundle = <そのプラグインの Plugin クラス>.getDefault().getBundle();
Class cl = bundle.load(<ワークスペース上にあるクラスのクラス名>);
Object obj = cl.newInstance();
として Hoge のインスタンスを入手したいのですが,
クラスパスをプラグイン側に動的に追加する手段が無く,また ClassLoader.defineClass()にあたるメソッドが
OSGi の Bundle クラスに見当たらないため,困っています.
どなたかお手数ですがアドバイスをいただければ幸いです.
0325デフォルトの名無しさん
2010/09/02(木) 21:22:56binarySearchを使おうというのがすでに破綻してるのか。
0326デフォルトの名無しさん
2010/09/02(木) 22:13:57配列の中から条件にあったデータを探し出す方法を教えてください
0327デフォルトの名無しさん
2010/09/02(木) 22:20:24条件がどういう条件なのか
これくらいは言ってくれないと出来る出来ないも言えない。
0328デフォルトの名無しさん
2010/09/02(木) 22:51:090329デフォルトの名無しさん
2010/09/02(木) 23:38:13Comparatorはクラスじゃなくてインターフェースだしequalメソッドなんか
無いしequalsメソッドはComparator自身を比較するものであって他の何かを
比較するものじゃないからそんな用途には使えない。
http://java.sun.com/javase/ja/6/docs/ja/api/java/util/Comparator.html
0330デフォルトの名無しさん
2010/09/02(木) 23:57:290331デフォルトの名無しさん
2010/09/03(金) 00:45:34equalsメソッドを実装したら、hashCodeも実装しないとダメだぞ?
話はそれからだ
0332デフォルトの名無しさん
2010/09/03(金) 05:55:29これでも使え。
つ org.apache.commons.collections.Predicate
0333デフォルトの名無しさん
2010/09/03(金) 07:08:03すこしはジャ場を勉強したら?
なんか寒いよ
0334デフォルトの名無しさん
2010/09/03(金) 07:21:19J-CASTニュース 9月2日(木)21時12分配信
報道によると、男性は3〜4月、自作プログラムを使って、新着図書のリストに自動的にアクセスして、それをコピペすることを14日間3万3000回繰り返していた。これがサイバー攻撃とみなされたわけで、名古屋地検岡崎支部が6月、男性を起訴猶予処分にしていた。
ところが、男性がアクセスしたのは、1秒間に1回程度だったため、ソフトに詳しいネットユーザーらを中心に、男性逮捕への疑問が相次いだ。
中央図書館の総務班では、「ソフトの不具合については、認識していません」
「通常の利用ではないから、ああいう事態が起こったということです。うちとしては、通常の利用しか想定していません」
「メーカーに聞かないと分かりませんが、うちのソフトに不具合があったとは聞いていません。メーカーは、ちゃんと対応したと思っています」
「うちは図書館でありシステム会社ではないので、専門的なことはわかりません。大量アクセスについては、メーカーで対応してもらっています。図書館の対応には、問題はないと思っています」と話した。
朝日の記事によると、ソフトを提供した三菱電機インフォメーションシステムズ(MDIS)
0335デフォルトの名無しさん
2010/09/03(金) 10:23:23そうですよね…
ありがとうございます。
とにかくバイトの変換系処理では常に文字コードを指定しないといけないですよね…
なんかコードがうるさくなっていやですが仕方ないですね…
0336デフォルトの名無しさん
2010/09/03(金) 11:20:230337デフォルトの名無しさん
2010/09/03(金) 14:54:51DB周りが糞で検索すると負荷が異常で舐め終わる前にタイムアウトしてエラー吐くシステムがどうしたって?
0338デフォルトの名無しさん
2010/09/04(土) 00:40:300339デフォルトの名無しさん
2010/09/04(土) 00:51:44どっからダウンロードすればよいですか?
SDKに付属のsrc.zipには入ってなかった。。。
というかそもそも、標準APIに入ってないsunパッケージって何なの?
0340デフォルトの名無しさん
2010/09/04(土) 01:09:11http://hibari.2ch.net/test/read.cgi/hp/1277348045/
こっちじゃね
0341デフォルトの名無しさん
2010/09/04(土) 03:37:573D波紋のJavaというのを見かけました
あの波紋の高低差を地図のような灰色のグラデーションにして
自分のパソコン上で動かすにはどうしたらいいですか??
0342デフォルトの名無しさん
2010/09/04(土) 04:00:100343デフォルトの名無しさん
2010/09/04(土) 07:51:31↑こういう感じなんだ・・・
いや、波を3Dで作ろうとしたらうまくいかなくて
それでいろいろ検索したら3D波紋っていうのがあって
波紋を自分でシミュレーションしてみたくて・・・
0344デフォルトの名無しさん
2010/09/04(土) 07:51:43オラクルのJavaSE Downloadsのページからダウンロードできるだろ。
「Previous Releases」ってとこな。
買収後初めてSEのページ見に来たが、思いっきり日本語情報排除されてるなあ。
大丈夫なのか日本オラクル
SE1.6や1.7のAPI日本語化はとっくにボランティアベースに移行したんだっけ?
0345デフォルトの名無しさん
2010/09/04(土) 08:01:23import java.awt.*;import java.awt.image.*;class W{public static void main(
String[]a){new Frame(){int T=6,W=64,F=255,i,j;float r=1.414f;byte[]q=new byte[
W*W];float[]p=new float[W*W],v=new float[W*W];Image m;{byte d=(byte)-128;while
(i<F+1){q[j=((d++)&F)*3]=q[j+1]=(byte)i;q[2+3*i++]=(byte)F;}MemoryImageSource
s=new MemoryImageSource(W,W,new IndexColorModel(8,256,q,0,0<0),q,0,W);resize(W
*T,W*T);s.setAnimated(true);m=createImage(s);show();try{for(repaint();;Thread.
sleep(33)){for(i=W+1;i<W*W-W-1;i++){v[i]+=(p[i-W]+p[i-1]+p[i+1]+p[i+W]+(p[i-1-
W]+p[i+1-W]+p[i-1+W]+p[i+1+W])/r-p[i]*2*(2+r))/4;if(v[i]>1/32f)v[i]=1/32f;p[i-
W-1]+=v[i-W-1];q[i]=(byte)((p[i-W-1]-p[i])*F);}s.newPixels();}}catch(Exception
e){}}public void update(Graphics g){g.drawImage(m,0,0,W*T,W*T,this);}public
boolean mouseDown(Event e,int x,int y){v[x/T+y/T*W]-=.5;return 0<1;}};}}
0346デフォルトの名無しさん
2010/09/04(土) 08:09:12ほんとかよw
0347デフォルトの名無しさん
2010/09/04(土) 09:19:483D波紋でぐぐって一番最初にでてきたのは、いわゆるwater effectだね。
water effectなら、ぐぐれば幾らでもソース出てくると思う。
0348デフォルトの名無しさん
2010/09/04(土) 12:10:41http://hibari.2ch.net/test/read.cgi/tech/1229881548/
こっちじゃね
0349デフォルトの名無しさん
2010/09/04(土) 12:53:18http://velocity.apache.org/engine/devel/user-guide.html#variables
0350デフォルトの名無しさん
2010/09/04(土) 16:05:03この.jpgのファイルのファイル名一覧を作成するにあたって
listFiles()を使用してそのフォルダ内の全ファイルのFileをループで判別して行っても良いのですが、
勉強としてはFilterを使ってみたいと思い調べたところ。
list(FilenameFilter filter)
を使用して .jpg だけtrueを返すFilenameFilterを実装れば良いかと思ったのですが、
FilenameFilterだとファイル名での判別しか出来ないので、xxx.jpg と言うディレクトリがあればそれも含んでしまいます。
かと言って、
listFiles(FileFilter filter)
だと、戻りがFile[]なので結局、その配列をループでまわして
files.getName()
とかやる事になると思っており、当初のループで組んでも変わらないダサさな気がします。
何故、
list(FileFilter filter)
が無いんだろう。。。
無いから無いと言われてしまえばそれまでですが、もっとすっきり書ける方法があるのでしょうか?
0351デフォルトの名無しさん
2010/09/04(土) 16:27:550352デフォルトの名無しさん
2010/09/04(土) 18:46:21ソースコード参考にしたいので、
C言語のサブセットぐらいのを探しています
Jthon/JRuby/Quercus ちょっと大きすぎる
djava リンク切れ
prolog prologがわからない
ttp://www.okisoft.co.jp/esc/prolog/in-java.html
0353デフォルトの名無しさん
2010/09/04(土) 21:54:10簡単さとか実用性を重視してほしいです。
0354デフォルトの名無しさん
2010/09/04(土) 23:05:43JavaScript
開発環境が不要、コンパイル作業不要
基本的にはブラウザ上じゃないと動かない(ほんとは違うが)
変数に何でも入れられる、ゆるい感じ
Java
開発環境のインストール作業が必要
プログラムを書くごとにコンパイル作業をする必要がある
変数には型があり、決まったものしか入らない、堅い感じ
単体で動くソフトウェアが作れる
どちらもオブジェクト指向言語
JavaScriptのオブジェクトはしょぼいがJavaのほうはしっかりしてる
JavaScriptは関数型言語的にも使える。Javaは次のバージョンで対応するかもしれない
0355デフォルトの名無しさん
2010/09/04(土) 23:12:50ごめんなさい。
まず何をどうすればいいですか?
・・・・OTL
>343
water effectでググったけど何が何だか・・・
まずは何をどうすればいいですか
・・・OTL
0356間違えたので書き直します
2010/09/04(土) 23:15:00>>345
ごめんなさい。
まず何をどうすればいいですか?
・・・・OTL
>347
water effectでググったけど何が何だか・・・
まずは何をどうすればいいですか
・・・OTL
0357デフォルトの名無しさん
2010/09/04(土) 23:33:39それともアプレット?
つかJavaでプログラミングの知識どれくらいあんのあ?
0358デフォルトの名無しさん
2010/09/05(日) 00:42:060359341
2010/09/05(日) 01:16:31プログラミングはビジュアルのつかないCとBASICをかじった事があるだけです。
>Javaでウインドウ出して波を描画したいの?
>それともアプレット?
この二つの違いすらわかりません。
0360デフォルトの名無しさん
2010/09/05(日) 01:37:05何をどう勉強して何ヶ月くらいかかるかくらいは教えてやれるぞ
0361デフォルトの名無しさん
2010/09/05(日) 05:20:270362デフォルトの名無しさん
2010/09/05(日) 05:25:300363デフォルトの名無しさん
2010/09/05(日) 05:35:480364341
2010/09/05(日) 10:00:55えーと白黒画像から標高差を判断して3D化してくれるソフトがあって
それを使って水の波紋を作りたいんです。
右のカラーの画像が以前作ったけどうまく波紋が作れなかった画像です。
その白黒画像データを作りたいんです。
0365デフォルトの名無しさん
2010/09/05(日) 12:25:56( ゚д゚ )
0366デフォルトの名無しさん
2010/09/05(日) 13:25:400367デフォルトの名無しさん
2010/09/05(日) 13:37:02白黒画像にしたいってこと?
0368デフォルトの名無しさん
2010/09/05(日) 13:57:19// フォトショかなんかでこれを回しながら3回イメージコピーすれば完成
// RATIOが1.0だと100px15Hzぐらいの波紋だろうから適当に調整
Color getPixColor(int x, int y){
double distance = Math.hypot(x, y);
double power = Math.sin(distance * RATIO);
float rgb = (float)( (power+1.0) / 2.0 );
return new Color(rgb, rgb, rgb);
}
0369デフォルトの名無しさん
2010/09/05(日) 14:00:19ぐぐれば出てきそうな感じもするけど。
0370341
2010/09/05(日) 14:02:37Javaでしたいこと:
3D波紋(Javaでいいのかな)かなにかで波の形をシミュレートさせて
シュミレート結果の高低差を白黒で表示させて
スクリーンショットか何かで白黒画像を保存したい
使用目的:
白黒画像から標高差を判断して3D化してくれるソフトで
3Dの水の波紋をつくる
です。すいません
0371デフォルトの名無しさん
2010/09/05(日) 14:06:030372341
2010/09/05(日) 14:07:090373デフォルトの名無しさん
2010/09/05(日) 14:11:45終了
0374デフォルトの名無しさん
2010/09/05(日) 14:21:51>3D波紋(Javaでいいのかな)かなにかで波の形をシミュレートさせて
まずこれだけやってみたら?
0375デフォルトの名無しさん
2010/09/05(日) 14:24:520376デフォルトの名無しさん
2010/09/05(日) 15:50:35while(){
描画
thread.sleep
}
で描画が終わる前にスリープしちゃうのを直すにはどうすればいいですか?
0377デフォルトの名無しさん
2010/09/05(日) 17:02:330378デフォルトの名無しさん
2010/09/05(日) 17:17:220379339
2010/09/06(月) 13:01:55「Previous Releases」ってとこは当然分かってるけど、
TCPTransport.javaは見つからない。。。
0380デフォルトの名無しさん
2010/09/06(月) 18:33:34てけとーな回答でスマンかった。本当に1.4以前のソース(VMとかのソースも入ってる奴ね)が
見つからないや。
どうなってんだOracle。
0381デフォルトの名無しさん
2010/09/06(月) 20:13:12OpenJDKできたから、1.4とかのSCSLで公開してたのってやめたんじゃなかったっけか?
Oracle前からダウンロードできなくなってた気が……
0382デフォルトの名無しさん
2010/09/06(月) 22:33:28これって、例外をチェーンすると内部的に使用している例外も漏洩するってこと?
つまり、互換性を維持しようとすると、
内部で使用しているだけのプライベートな例外クラスも変更できなくなるってこと?
しかし、これを嫌ってチェーンをしないと、スタックトレースが途切れて間違いの出所が分からなくなるし。
それとも、例外に関しては普通はSerializable関係の互換性は保たなくてOKなの?
0383デフォルトの名無しさん
2010/09/06(月) 23:37:04解説付で・・・。
0384デフォルトの名無しさん
2010/09/07(火) 00:08:39Serializableだからといって何が何でも互換性を保たないといけない理由はないぞ。
ネットワーク越しの相手がいるときとか、オブジェクトを二次記憶に格納してるときといった、
バージョンをまたいでデータ構造を維持しないといけないときだけで、生存期間がプロセス
の寿命以下であることが明らかなら全く気にする必要はない。
0385デフォルトの名無しさん
2010/09/07(火) 08:29:22警告出すこともあるのが気分悪いんだよなー。
なので、例外クラス定義の前に
@SuppressWarnings("serial")
を入れとくのが吉。
0386デフォルトの名無しさん
2010/09/07(火) 12:40:26Javaだからどうこうという話ではない
0387デフォルトの名無しさん
2010/09/07(火) 19:23:49例外を永続化する奴なんてそうそういないと思うし、あれはリモートコールとかしたときに
サーバ上で発生した例外をクライアント側に送って投げなおしたりするためのものかと思いますよ
0388デフォルトの名無しさん
2010/09/07(火) 19:36:48Graphics g = hoge.getGraphics();
g.dispose();
hoge.dispose(); //エラー
hogeの方の開放はどう行えばいいのでしょう。
0389デフォルトの名無しさん
2010/09/07(火) 19:40:510390388
2010/09/07(火) 19:52:45頻繁に使うメソッドとかだと気になってしまいます。
これまではstaticやシングルトンでやっていたんですが、
通常のやり方でやってみたく質問しました。
0391デフォルトの名無しさん
2010/09/07(火) 20:19:33凝ったやり方は、Hogeがなにか非常に巨大だとか、複雑な処理が必要で構築に時間がかかるだとかいった、特別な事情がある場合だけでよいです。
0392388
2010/09/07(火) 20:38:26まだそこまで進んでいませんが、
画面のスクロールの時のバックバッファとか心配です。
その凝ったやり方というのはどうやればいいのでしょう。
System.gc()やSystem.runFinalization()ぐらいしか見つかりませんでした。
GCにこのオブジェクトは必要ないと教えられれば、
その後のgcとかが有効になりそうですが。
0393388
2010/09/07(火) 21:16:16nullを代入するのが、簡単で有効なやり方みたいですね。
確実ではなくても、破棄の優先度は上がってくれるみたいです。
0394デフォルトの名無しさん
2010/09/07(火) 21:27:440395388
2010/09/07(火) 22:35:07確保や破棄に負担がかかるからでしょうか。
↓のFoo.rand()でbarにnullを代入しなければ、
Foo.rand()の2回目以降の呼び出しでは、
1回目にnewしたBarが使いまわされ、負担が少ないとかでしょうか。
public Hoge(){
Foo foo = new Foo();
foo.rand();
foo.rand();
}
public class Foo{
public int rand(){
int r;
Bar bar = new Bar();
r = bar.rand();
//bar = null;
return r;
}}
0396デフォルトの名無しさん
2010/09/07(火) 22:49:190397デフォルトの名無しさん
2010/09/07(火) 23:27:510398388
2010/09/07(火) 23:30:42始めはC系でのfreeやdeleteをjavaではどうやるか知りたかったです。
ただそれはなく、null代入で擬似的になら行えるっぽいのですが、
>>394氏のそれによる副作用的なのが分かりません。
>>395のは同じクラスを頻繁にnewする場合の例で、
後処理にnullを代入するのとしないので、どう変わるかという質問です。
Barをnewした時、前のがあるならnewせず、負担が減るとか想像しました。
newで作られ続けるなら、nullで削除し続けるのと負担回数は変わらないので、
ならメモリ使用量の減る、削除をし続けるnull代入の方がいいかなと思いました。
0399デフォルトの名無しさん
2010/09/07(火) 23:34:29あと変数を値渡しか参照渡しのどちらかしたあととか
正直参照渡しと値渡しの違いはわかるけどどういうときがどっちになるかいまいちわからん
0400388
2010/09/07(火) 23:38:37すみません、Hoge>Foo>Barと呼び出し順を表す意味もありました。
ちゃんとした名前の方が少しは分かりやすかったかもしれません。
>>398
間違えました、nullで削除し続けると、
newで作られ続ける分と合わせて2倍になりますね・・
0401デフォルトの名無しさん
2010/09/07(火) 23:39:120402デフォルトの名無しさん
2010/09/07(火) 23:40:49リークしたら再起動すればいいし
0403388
2010/09/07(火) 23:45:10教えてくださった皆様、ありがとうございました。
0404デフォルトの名無しさん
2010/09/07(火) 23:52:21長時間使うアプリだと命取りになるよ。
full gcが延々と動き続けてアプリが動かなくなる。
Apache Axis2がメモリリークしてて、
それに気付くまでどれだけ苦労したことか…
0405デフォルトの名無しさん
2010/09/08(水) 07:07:11ttp://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC
だけど、これの意味するところは Connection オブジェクトをスレッド間で
共有しなければスレッドセーフという解釈でいいんでしょうか?
要はThreadLocalでConnection持てば無問題と?
0406デフォルトの名無しさん
2010/09/08(水) 11:27:32使うたびに接続・切断するとか、グローバルなコネクションプールを作るとかいった方法の方が一般的な気もしますが
ThreadLocalにするなら状況にもよるでしょうけれどSoftReferenceで包んだ方がいいかもしれません
DB使わなくなってもそのスレッドが生きてる限り接続しっぱなしで残り続けるのはあまり嬉しくないので
ThreadLocal<SoftReference<Connection>> みたいな感じで
0407デフォルトの名無しさん
2010/09/08(水) 16:59:08JDK1.1〜1.6の間で問題なくデータ交換できるでしょうか?
0408デフォルトの名無しさん
2010/09/08(水) 17:04:14JDK1.1にはHashMapないから無理。
0409デフォルトの名無しさん
2010/09/08(水) 17:42:50ありとあやゆる分野のlibraryがそろってるけど
なんでこんな充実してるの?
Cとperlに次ぐ豊富さだよね
0410デフォルトの名無しさん
2010/09/08(水) 17:57:401.2〜1.6は問題ないですかね?
またこれからの1.7以降の保障はされるのでしょうか?
0411デフォルトの名無しさん
2010/09/08(水) 21:58:01HashMapクラスのserialVersionUID調べたら?
0412デフォルトの名無しさん
2010/09/08(水) 22:16:49とりあえず「基本型」とやらの内訳を出してもらおうか。
Threadの復元とかは無理だよ?
0413デフォルトの名無しさん
2010/09/09(木) 06:49:47java+アルゴリズムと題名に入ったものはけっこうたくさんあるようですが・・
0414デフォルトの名無しさん
2010/09/09(木) 07:11:08柴田望洋
出版社: ソフトバンククリエイティブ
0415デフォルトの名無しさん
2010/09/09(木) 10:38:20基本型改め、以下のクラスです。
・プリミティブに対応するクラス
・String
・ArrayList ※中味はここで上げたものしか含まずを想定
・MashMap ※中味はここで上げたものしか含まずを想定
・Date
0416デフォルトの名無しさん
2010/09/09(木) 13:24:28それ以外にも基本的なレベルから隔たりがありすぎるので、さすがに1.1は切るしかない。
0417デフォルトの名無しさん
2010/09/09(木) 14:50:03Date, ArrayList, HashMap は writeObject の仕様が明記されてるから、
それにそった実装になってれば大丈夫なはず。
プリミティブ型のラッパは値一個しかもってないから問題出る可能性極めて少ない。
Stringは特別扱いでシリアライズ機構自体がStringのシリアライズ、デシリアライズを保障する。
そうでないとクラス名すら通らなくなる。
0418デフォルトの名無しさん
2010/09/09(木) 18:22:01selectで外部プロセスと通信(tcpやudpやunixドメインソケット)するだけでなく、
同一プログラムのthread間の通信も行うことできますか?
あるスレッドで外部との通信と他スレッドからの要求を、いっしょに処理できると
すごくプログラミングが楽になるのですが、なかなかjavaのselectの仕様が難しくて。
参考になるサイトかサンプルがあったら教えてください。
0419デフォルトの名無しさん
2010/09/09(木) 18:33:46java1.1からあるけど、別に遅いってわけでも使いにくいってわけでもない。
たまにVectorにめくじらたててる人がいるけど、そういう人に限って実際は癖でStringBufferばかり使ってStringBuilder使ってないし。
0420デフォルトの名無しさん
2010/09/09(木) 18:50:18ありがとうございます。amazonでも評価高いみたいですね
購入を検討します
0421デフォルトの名無しさん
2010/09/09(木) 18:56:30そもそも unix ドメインソケットは作れないので tcp と udp しかないけど、まぁできますよ
およそこんな感じです
SelectorProvider provider = SelectorProvider.open();
Selector selector = provider.openSelector();
SocketChannel channel = provider.openSocketChannel();
channel.connect(new InetSocketAddress("localhost", 12345));
channel.configureBlocking(false);
channel.register(selector, SelectionKey.OP_READ | SelectionKey.OP_WRITE);
for (;;) {
selector.select();
Set<SelectionKey> keys = selector.selectedKeys();
for (SelectionKey key: keys) {
Channel c = key.channel();
if (key.isReadable()) { c.read( ... ); }
if (key.isWritable()) { c.write( ... ); }
}
keys.clear();
}
0422デフォルトの名無しさん
2010/09/09(木) 20:29:34原則、public method の引数チェックには例外を使うというのは理解できるのだが
あるメソッドへの委譲メソッドが多くある場合は、
委譲先が private でもそこで引数チェックしないとコード中が引数チェックばっかりになる。
また、コンストラクタ等で防御的コピーを行う場合は、
コピー後にチェックしないとダメだけど(したがって、コピー前のチェックは無意味だけど)
コンストラクタまで引数チェックができないってことになると
public methodの境界で例外による引数チェックを行えば十分て話ではなくなる。
かといって、
「もう防御的コピーしてチェックしましたから、コンストラクタではそのままフィールドに入れて使ってね」
などということをすると、オブジェクトの整合性を保つためにクラスの外の協力が必要になることになり、
何のためのオブジェクト指向なのか良く分からない。
また、private なクラスだからといって、コンストラクタでアサーションを使っていると、
extends して publicにされた場合、親クラスのコンストラクタの前に例外によるチェックを入れるのが難しい
(そもそも、防御的コピーしてたら無駄)。
かといって、内部でしか使わないと分かっているちょっとしたクラスに対して
わざわざ例外によるチェックを入れるのも、馬鹿らしいほど無駄な作業に思えてくる。
拡張可能なパッケージプライベートのクラスのコンストラクタは、
そのパッケージ内で終始するのか、publicなサブクラスを作るかを決めないと
どっちを使えばいいのか判断できないってことか?
また、内部的にしか使わないprivateなinterfaceはその引数はpublicだが、
原則に従うと、その実装では例外による引数チェックが必要なのか?
臨機応変にチェックの方法を変えればいいということになると、
例外によるチェックがロジックの経路にちゃんと入ってるかどうかを手続き的に判断するって
難しいし、それって何てオブジェクト指向?もう、わけわかめ
0423デフォルトの名無しさん
2010/09/09(木) 20:45:33{
public static void main(String [] args)
{
System.out.println("あ");
System.out.println("り");
System.out.println("が");
System.out.println("と");
}
}
できました
0424デフォルトの名無しさん
2010/09/09(木) 21:03:23にほんごでおけ
0425デフォルトの名無しさん
2010/09/09(木) 23:36:26サンキュウです。
thread間でもtcp/udpになるんすか...
C、というかUnixならプロセス間やスレッド間でもpipe使って通信できるし、
それを受けるのはselectで統一出来るんですけどねえ。
Javaでメッセージパッシング的なプログラミングってどうやるんだろ?
スレッド間、他プログラム間で縦横無尽にメッセージを送り合うようなプログラム。
0426デフォルトの名無しさん
2010/09/10(金) 09:13:240427デフォルトの名無しさん
2010/09/10(金) 09:59:11ロングパスですがありがとうございます。
SoftReference ってものがあるんですねぇ
0428デフォルトの名無しさん
2010/09/10(金) 10:17:41スレッドAは専用のLinkedBlockingQueueを持ち、そこからメッセージを受け取って、何か処理をする
スレッドBはソケットからデータを受信し、それをJavaのメッセージに変換してスレッドAのLinkedBlockingQueueに放り込む
スレッドCは専用のLinkedBlockingQueueを持ち、スレッドAとかからメッセージを受け取りバイト列に変換してソケットから送信する
これでいいと思います
0429デフォルトの名無しさん
2010/09/10(金) 13:17:11最初にmainの中で作るアプリ本体の
インスタンスは、どういう理屈で
GCの対象とならないのでしょうか。
ググっても見つけられません。
0430デフォルトの名無しさん
2010/09/10(金) 13:26:120431デフォルトの名無しさん
2010/09/10(金) 13:50:57GC-rootからJFrameまで、どうオブジェクト参照が繋がっているのかという話かな。
デーモンスレッド → イベントディスパッチャ → JFrame
とこんな繋がりじゃないかな。
デーモンスレッド全部殺せばJFrameも回収されるよ、たぶん。
0432デフォルトの名無しさん
2010/09/10(金) 13:52:14どんな手段が考えられますか?
クラス図の場合
クラス名やメソッド名はリフレクションで取得できそう。
ただ、関連の取得をどうすればいいのかわかりません。
0433デフォルトの名無しさん
2010/09/10(金) 14:02:49シーケンス図は実際に動作させたものをトレースするんでもなければかなり無理があるかと
0434デフォルトの名無しさん
2010/09/10(金) 14:07:47ありがとうございます。
確かにフィールド取得すれば集約の関係はできそうですね。
シーケンス図は字句解析して構文解析してがんばらないと難しそうですかね。
0435デフォルトの名無しさん
2010/09/10(金) 14:17:26ServerPort
0436デフォルトの名無しさん
2010/09/10(金) 14:30:38バイトコードインストゥルメンテーションの手法を使って各メソッドの入口と出口にログを埋め込み、
それを実際にJavaVM上で実行して、得たログから図を描けばいいんじゃない
0437デフォルトの名無しさん
2010/09/10(金) 14:39:13バイトコードインスツルメンテーションという手法があるのですか。初めて聞きました。
JavaVM上で実行してログを取るというのでイメージがつかめました。ありがとうございます。
ちょっとぐぐってきます。
0438428
2010/09/10(金) 19:14:24http://allabout.co.jp/gm/gc/80716/
インスタンスを生成したあと
mainは抜けてしまいますが、
何故GCはsampleappのインスタンスを
回収しにかからないのでしょうか。
0439429
2010/09/10(金) 19:15:250440デフォルトの名無しさん
2010/09/10(金) 19:39:48システムの中からであろうと参照されている限り回収されない
0441デフォルトの名無しさん
2010/09/10(金) 21:12:05ありがとうございます。
0442デフォルトの名無しさん
2010/09/11(土) 00:21:43RMI
0443デフォルトの名無しさん
2010/09/11(土) 00:36:16それを呼び出した側は、その契約が守られていることを盲目的に信じていいの?
たぶん、そんな楽観的なことはダメだと思うが、呼び出し側は自分を守るためにどう対処すればいいの?
AssertionErrorでも投げておけばOK?
例えば、ThreadFactoryのnewThreadメソッドはnullを返す可能性があることが明示されているが、
もし、これが必ず何らかのThreadを返すという契約だった場合、
これを使う側は、そのメソッドの返却値に対して、
盲目的にnullでないと考えて、例えばそのままスレッドプールの中に入れて良いのか、
(契約で縛っているのに)nullチェックをするべきなのか
そしてnullチェックをした場合に契約が破られていることを発見した場合どうするのか。
ワーニングでもログに残して何事も無かったかのように処理が進めるように使う側を設計するのか
(契約しているのに縛っているのに!)。
RuntimeExceptionの何らかのサブクラスでも投げるか。
でも、RuntimeExceptionのサブクラスなら、それを投げる可能性のあるメソッドは
それを契約として明示しておく必要があると思うが、
内部ロジックの深いところでnewTheradメソッドが使われていた場合、
例外の記述を発生する可能性の経路をたどって金太郎飴のように複数のメソッドの対して記述するの?
それも馬鹿馬鹿しいから、Errorのサブクラスでも投げておけばいいのかな。
0444デフォルトの名無しさん
2010/09/11(土) 01:11:220446デフォルトの名無しさん
2010/09/11(土) 03:14:27どのぐらい堅固にしたいかによる。
すべての可能性を追っていたら�dでもないことになる。
0447デフォルトの名無しさん
2010/09/11(土) 12:42:170448デフォルトの名無しさん
2010/09/11(土) 15:00:110449デフォルトの名無しさん
2010/09/11(土) 15:16:460450デフォルトの名無しさん
2010/09/11(土) 16:17:05Play!
0451デフォルトの名無しさん
2010/09/11(土) 17:48:080452デフォルトの名無しさん
2010/09/11(土) 17:50:30もう.NETでいい
0453デフォルトの名無しさん
2010/09/11(土) 22:36:44どちらかに絞ってください
0454デフォルトの名無しさん
2010/09/12(日) 02:46:380455デフォルトの名無しさん
2010/09/12(日) 11:00:10独立して親Frameに束縛されないで子Frameが表示されるんだけどバグなの?死ぬの?
0456デフォルトの名無しさん
2010/09/12(日) 11:42:18http://java.sun.com/javase/ja/6/docs/ja/api/java/awt/Container.html#addImpl(java.awt.Component,%20java.lang.Object,%20int)
> IllegalArgumentException - ウィンドウをコンテナに追加しようとしている場合
0457455
2010/09/12(日) 12:55:22なるほど・・・�d
でもこれって継承関係上すごい気持ち悪いな・・・
お前Componentじゃん?!Componentじゃん!!
0458デフォルトの名無しさん
2010/09/12(日) 15:09:17お前Componentじゃん?!Componentじゃん!!
0459デフォルトの名無しさん
2010/09/12(日) 18:21:16Spring Framework + Roo
0460455
2010/09/12(日) 18:26:100461デフォルトの名無しさん
2010/09/13(月) 15:45:51Spring Framework と Roo はどういう関係?
あとSpring Frameworkにもいろいろあるよね?
0462デフォルトの名無しさん
2010/09/13(月) 18:44:410463デフォルトの名無しさん
2010/09/13(月) 18:47:46と勉強してきて、次に取り組むべきもん面白いもんを何か頼む
0464デフォルトの名無しさん
2010/09/13(月) 19:56:36RSSリーダーとかどう
新しいニュースがあったら画面の上らへんにテロップ流してくれるようなの
0465デフォルトの名無しさん
2010/09/13(月) 20:43:140466デフォルトの名無しさん
2010/09/13(月) 22:15:000467デフォルトの名無しさん
2010/09/13(月) 22:35:220468デフォルトの名無しさん
2010/09/13(月) 23:23:30ライブラリ集めて自分でフレームワーク作るとか。
凝り性の人は結構はまる。
0469デフォルトの名無しさん
2010/09/13(月) 23:26:27以下の場合、A()の中で、BExceptionが発生した場合、
�Aの処理がされるのでしょうか?
A()でthrows AExceptionと指定して、AException以外が起きた時の動作が
知りたいのです。
public static void main(String args[]) {
try {
try {
A();
} catch (AException) {
System.out.println(A); …�@
}
} catch (BException) {
System.out.println(B); …�A
}
}
public void A() throws AException {
...
}
0470デフォルトの名無しさん
2010/09/13(月) 23:39:38A()でBExceptionが発生すれば�Aを通るだろ。
「throws AException」の意味についてはチェック済み例外、非チェック例外でググレ
0471469
2010/09/13(月) 23:48:47ありがとうございます。
ググってみました。
感謝します。
0472デフォルトの名無しさん
2010/09/13(月) 23:51:40木村 聡 (著)
この本どう?
フレームワークに興味あって本を漁ろうにも
古いのばかりだったりで・・・。
0473デフォルトの名無しさん
2010/09/13(月) 23:59:370474デフォルトの名無しさん
2010/09/14(火) 00:02:25イラストの女の子がこわい
0475デフォルトの名無しさん
2010/09/14(火) 00:23:22リアル系なんだか萌えなんだかよく分からん絵がらだな。
0476デフォルトの名無しさん
2010/09/14(火) 00:26:47その本は自分も興味あるなあ
経験者の評価が聞きたいな。
0477デフォルトの名無しさん
2010/09/14(火) 00:38:16基本的なレベルから説明してるから、新人に読ませたいな。
経験者にとっては当たり前すぎる内容で微妙だとおもた。
0478デフォルトの名無しさん
2010/09/14(火) 00:50:110479デフォルトの名無しさん
2010/09/14(火) 00:52:25合計二名のプロジェクトだけどな!
0480デフォルトの名無しさん
2010/09/14(火) 01:09:43ランダムアクセスは無理(intの正値で絶対アドレスを指定する必要があるから)で、
シーケンシャルアクセスなら一応OSやファイルシステムの制限に引っかかるまで読める、
って認識であってますか?
0481デフォルトの名無しさん
2010/09/14(火) 04:28:090482デフォルトの名無しさん
2010/09/14(火) 07:37:54あとEffectiveJAVAと独習JAVAって内容似てるの?
0483デフォルトの名無しさん
2010/09/14(火) 08:46:49実際問題、int の制限に引っかかるのって、
MappedByteBuffer でメモリマップドファイル使うときぐらいだと思うが。
FileInputStream が markSupported() で true 返す場合は
mark(int), reset() skip(long) で擬似ランダムアクセスする時も int の制限にひっかかるかも? と思うぐらいで。
もっとも FileInputStream#markSupported() で true 返す実装って見た事ないけど。
0484デフォルトの名無しさん
2010/09/14(火) 09:57:240485デフォルトの名無しさん
2010/09/14(火) 10:02:57FileChannel.MapModeで取得したFileChannelとBufferを参照渡しして
渡した先でposition操作しても、渡し元には反映されないのね。
ByteBuffer.allocateを使った場合はそんなことないのに。
0486デフォルトの名無しさん
2010/09/14(火) 10:17:080487211
2010/09/14(火) 10:30:250488デフォルトの名無しさん
2010/09/14(火) 11:08:060489デフォルトの名無しさん
2010/09/14(火) 12:40:09kwskおながい。
MapModeでバッファをマッピングする場合と
allocateでバッファを確保する場合の挙動の違いに
悩みまくり。
0490デフォルトの名無しさん
2010/09/14(火) 13:01:10フレームワークの本探してみる、ども
0491デフォルトの名無しさん
2010/09/14(火) 13:18:47そういうのを知りたいならCをちゃんとやれ
0492デフォルトの名無しさん
2010/09/14(火) 13:47:26なにがわからないのか最小のコードで示してみれ
0493デフォルトの名無しさん
2010/09/14(火) 18:45:41卒業するまでに何をやるの?何が出来るようになるの?
0494デフォルトの名無しさん
2010/09/14(火) 19:09:56学校による
0495デフォルトの名無しさん
2010/09/14(火) 19:12:030496デフォルトの名無しさん
2010/09/14(火) 21:24:33javaで起動するプログラムがあって、同時に実行できるのは1つにしたい場合、
どのようにしたらいいのでしょうか?
どっかにlockファイルみたいのを作って、それがあったら起動しないとかって
手法ですかね?
環境はLinux、winを想定しています。
他になにかあったら教えていただきたいです。
0497デフォルトの名無しさん
2010/09/14(火) 21:29:570498デフォルトの名無しさん
2010/09/14(火) 21:41:33ありがとうございました。やってみます。
>>484
Java.io.FileInputStreamとかそのあたりでした。
ググってみたんですが、JavaはLargeFileAwarenessが保障されないとか、
そういう話題しか見つけれなくて、最終的に
http://code.hammerpig.com/how-to-read-really-large-files-in-java.html
この辺を見て、シーケンシャルに読むのがいいのかなと思ったですよー。
0499デフォルトの名無しさん
2010/09/14(火) 22:02:33特定のポートでソケットをバインドしてみる
0500デフォルトの名無しさん
2010/09/14(火) 22:18:46>>480の、intの正値で絶対アドレス指定する必要がある、って
FileInputStreamのどのメソッドの事言ってんの?
0501デフォルトの名無しさん
2010/09/14(火) 22:42:21java 多重起動防止
とかでググれば分かるが、完全な方法はネイティブなAPIを呼ぶこと。
0502デフォルトの名無しさん
2010/09/15(水) 01:08:290503デフォルトの名無しさん
2010/09/15(水) 05:53:060504デフォルトの名無しさん
2010/09/15(水) 07:38:09LL流行ってるっぽいけど
0505デフォルトの名無しさん
2010/09/15(水) 08:54:42使い方によるなぁ。
別にフレームワーク使っても問題ない。
0506デフォルトの名無しさん
2010/09/15(水) 09:02:52swing自体だって広義のフレームワークだ
0507デフォルトの名無しさん
2010/09/15(水) 10:13:470508デフォルトの名無しさん
2010/09/15(水) 10:56:290509デフォルトの名無しさん
2010/09/15(水) 11:00:18本来スタックにつまれているであろうローカル変数も合わせてダンプすることは出来ないものでしょうか?
0510デフォルトの名無しさん
2010/09/15(水) 14:35:51jmap
0511デフォルトの名無しさん
2010/09/15(水) 15:11:38任意のオブジェクトがどこのクラスの変数に参照されているかを調べることは出来ますか?
0512デフォルトの名無しさん
2010/09/15(水) 15:13:00Androidのアプリ開発がしたいです
いきなりどのような道順で勉強したらいいでしょうか?
ifとかswtichなどの基本文法は習得しました
0513デフォルトの名無しさん
2010/09/15(水) 15:26:260514デフォルトの名無しさん
2010/09/15(水) 17:04:44jhatでも使ってみては
0515デフォルトの名無しさん
2010/09/15(水) 17:08:06Hashtableは同期化(synchronized)されている
HashMapは同期化されていない
0516デフォルトの名無しさん
2010/09/15(水) 17:11:46とにかく色々いじってみたら? わからないところは調べながら
まずは Eclipse と Android SDK をダウンロードしてインストール
0517デフォルトの名無しさん
2010/09/15(水) 18:50:45ども
0519デフォルトの名無しさん
2010/09/15(水) 22:12:180520デフォルトの名無しさん
2010/09/15(水) 22:20:070521デフォルトの名無しさん
2010/09/15(水) 22:26:05ありがとうございます。頑張って勉強します
0522デフォルトの名無しさん
2010/09/16(木) 15:37:46Applicationで「マウスクリックでウインドウを開く」という動作で
クリック連打してウインドウをたくさん出現させるとウインドウを全て消した後に
ウインドウが開かなくなってしまうというバグが起きます。
これは解決できるものなのでしょうか?
0523デフォルトの名無しさん
2010/09/16(木) 15:56:170524デフォルトの名無しさん
2010/09/16(木) 16:03:55アプリケーションにボタンがあってそれをクリックすると新たにウインドウが出る
というマウスイベントでそのウインドウをクリック連打でたくさん出すと
アプリケーション以外のウインドウを消した後にボタンをクリックしてもウインドウがでないというバグです。
0525デフォルトの名無しさん
2010/09/16(木) 16:27:53ウィンドウを消したつもりでも実は非表示なだけで残ってて、それがメモリを食いつぶしてメモリ不足で新しいのを開けないとか
0526デフォルトの名無しさん
2010/09/16(木) 16:46:520527デフォルトの名無しさん
2010/09/16(木) 18:13:51とりあえずJAVAやC#を使ってるところをメインに就活してるけど・・・
大雑把にネットワークやらデータベースを避けてるだけっていう
0528デフォルトの名無しさん
2010/09/16(木) 18:49:00JAVAやC#は手段で、ネットワークやDBは目的。
そこをはっきりさせてから就活した方がいいかも。
俺ネットワーク関係のソフト作ってるけど、言語はJAVAやねん。
0529デフォルトの名無しさん
2010/09/16(木) 18:54:13>>528
自分がその会社に入る前に読んだ本や身につけた技術の分野なりためになりそうな経験なりを教えてくれ
0530デフォルトの名無しさん
2010/09/16(木) 19:50:120531デフォルトの名無しさん
2010/09/16(木) 19:58:49会社の業務内容はその会社に訊け。
自分が何をやりたいかは自分に訊け。
他人に相談したいなら板違いだ。
0532デフォルトの名無しさん
2010/09/16(木) 20:06:47JAVAをメインで教えてるとは聞いたが
0533デフォルトの名無しさん
2010/09/16(木) 23:29:400534デフォルトの名無しさん
2010/09/16(木) 23:42:35情報系大学→アルゴリズムや開発モデルなどのいわゆるソフトウェア工学
と思ってるんだけど,専門でもアルゴリズムとかソフトウェア工学までやるのだろうか?
0535デフォルトの名無しさん
2010/09/17(金) 00:01:40就職するためというよりはフリープログラマになるための講義だなそれじゃ。
0536デフォルトの名無しさん
2010/09/17(金) 09:01:59ネットワークとDB避けるって、どんだけだよw
少なくとも、Webとメール関係のプロトコルや
オープンソースのRDBくらいは抑えておかないと仕事にならん。
最近は、Java屋にもJavaScript(jQueryとか)のスキルが
求められるし。
0537デフォルトの名無しさん
2010/09/17(金) 09:10:400538デフォルトの名無しさん
2010/09/17(金) 09:13:06それが出来る状態で卒業する専門学生ってたぶん1割も居ないと思う。
実際8割が使いものにならないガーベジコレクト対象者、残りがまだなんとか出来る奴、こんなもん。
いや勝手な想像なんですけどね
0539デフォルトの名無しさん
2010/09/17(金) 09:17:57まぁそんなもんだよね。
でも中には、学生だけどオープンソースのコミッタやってます
なんていう、珍しい人も応募してきたりする。
ブログの書き方とか、成果物のソース見れば、どんな人かとか
スキルセットの見当なども概ね把握できるから、そういう人は逃さず採用。
いやほんと、中にはスゴイ人いるよ。
入社してもらった後も、転職されないように待遇面とかモチベーションを
維持できる環境づくりとか、こっちも責任感じちまう。
ただでさえ、IT系とかSIerってだけで学生からは敬遠される時代に
なってしまったからな。
(というか、この業界自らが招いた結果的状況だけど)
0540デフォルトの名無しさん
2010/09/17(金) 10:21:32以下はテキストの写しです。
�Cこの変数値の末尾に「;」記号をつけ、その後に以下のようにテキストを追記してOKします。
%JAVA_HOME%\bin;(青字)
図1.13
_____________________________________________
変数値 |%JAVA_HOME%;\bin;C:\Program Files\Java\lib\j|―――ここに�Cのテキストを追記する。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
って書かれてるのですが、一番右端のこれは見切れているのでしょうか?
あと、追記するのって結局青字の部分なのか、枠内全体なのでしょうか……。
宜しければご教授下さい。
0541デフォルトの名無しさん
2010/09/17(金) 10:26:300542デフォルトの名無しさん
2010/09/17(金) 10:33:40見やすいように画像うpします。
http://iup.2ch-library.com/i/i0152963-1284687144.jpg
0543デフォルトの名無しさん
2010/09/17(金) 10:46:40理解した方がいいと思う。
0544デフォルトの名無しさん
2010/09/17(金) 10:56:28コマンド検索パスの指定、でいいんだよね?
0545デフォルトの名無しさん
2010/09/17(金) 12:03:47PCで追いながら試せばええじゃん
0546デフォルトの名無しさん
2010/09/17(金) 16:16:450547デフォルトの名無しさん
2010/09/17(金) 18:42:510548デフォルトの名無しさん
2010/09/17(金) 18:46:46java.awt.Robot
0549デフォルトの名無しさん
2010/09/17(金) 19:40:090550デフォルトの名無しさん
2010/09/17(金) 19:53:470551デフォルトの名無しさん
2010/09/17(金) 20:14:270552デフォルトの名無しさん
2010/09/17(金) 21:32:090553デフォルトの名無しさん
2010/09/17(金) 21:57:12恐い
0554デフォルトの名無しさん
2010/09/17(金) 23:08:160555デフォルトの名無しさん
2010/09/18(土) 04:26:050556デフォルトの名無しさん
2010/09/18(土) 08:13:53あってもコピペ提出か宿題スレかYahooだべ
趣味でやってるヤツぐらいしかコードは書けないね
0557デフォルトの名無しさん
2010/09/18(土) 10:32:18どうすればいいの?
0558デフォルトの名無しさん
2010/09/18(土) 11:37:37ソースみせて
0559デフォルトの名無しさん
2010/09/18(土) 11:53:000560デフォルトの名無しさん
2010/09/18(土) 11:55:44俺もそう解釈してたんだけど、なんかの条件満たすとIntegerでも使える気がする。
リファクタリングでコード移したら同じIntegerなのにエラーになった。
static finalとか?
0561デフォルトの名無しさん
2010/09/18(土) 12:43:340562デフォルトの名無しさん
2010/09/18(土) 12:46:08えーだぶるちー
0563デフォルトの名無しさん
2010/09/18(土) 20:03:51あぶすとらくとういんどうつーるきっと
面倒なときはえいだぶりゅてー
0564デフォルトの名無しさん
2010/09/18(土) 23:34:26<body xmlns:ns="http://example/">
<sample name="ns:hello">
のxmlを読み込むとして、
"ns:hello"の"ns"だけを読み込む方法
てありますか?
0565デフォルトの名無しさん
2010/09/19(日) 01:25:36おかげで無駄に階層が深くてアクセスしにくい。
0566デフォルトの名無しさん
2010/09/19(日) 01:59:28何と比較して長いの?
あれってインターネットのURLみたいなもんだろ
そう思えば、長いとも思わないのだが
0567デフォルトの名無しさん
2010/09/19(日) 02:56:30intは行けるがIntegerの所でコンパイルエラーが出る
Integerで行けるコード希望w
public class Hoge {
private static final Integer STATIC_FIELD_INTEGER = 0;
private static final int STATIC_FIELD_INT = 1;
private final Integer FIELD_INTEGER = 2;
private final int FIELD_INT = 3;
void hoge() {
final Integer LOCAL_INTEGER = 4;
final int LOCAL_INT = 5;
switch((int) (Math.random() * 6)) {
case STATIC_FIELD_INTEGER: System.out.println(STATIC_FIELD_INTEGER); break;
case STATIC_FIELD_INT: System.out.println(STATIC_FIELD_INT); break;
case FIELD_INTEGER: System.out.println(FIELD_INTEGER); break;
case FIELD_INT: System.out.println(FIELD_INT); break;
case LOCAL_INTEGER: System.out.println(LOCAL_INTEGER); break;
case LOCAL_INT: System.out.println(LOCAL_INT); break;
}
}
}
0568デフォルトの名無しさん
2010/09/19(日) 03:04:29enum 使いなよ
0569559=567
2010/09/19(日) 03:37:27560がIntegerで使える気がするって言うから、どういうコードならいけるのかな?と
0570デフォルトの名無しさん
2010/09/19(日) 11:41:28あとプロパティ > icon > プロジェクトから選択
でなんでsrcフォルダ以下しか選択できないの?
0571570
2010/09/19(日) 14:26:34javaのグラフィックスの仕組みがようやくわかったわ
0572570
2010/09/19(日) 19:12:40やっぱJavaだわ
0573デフォルトの名無しさん
2010/09/19(日) 20:57:150574デフォルトの名無しさん
2010/09/19(日) 21:55:14どうもすいませんでした(´・ω・`)
0575デフォルトの名無しさん
2010/09/19(日) 22:37:26血迷ってプログラミング言語Javaを買って読み始めたけど、これけっこうムズいww
意気消沈wwwww
0577デフォルトの名無しさん
2010/09/20(月) 12:19:29インクリメント・デクリメント
って1増やしたり1減らしたりの動作ですが
この動作ってどういうところで使われるのか教えてください
0578デフォルトの名無しさん
2010/09/20(月) 12:34:57数を数えるところ
0579デフォルトの名無しさん
2010/09/20(月) 17:38:010580デフォルトの名無しさん
2010/09/20(月) 17:55:050581デフォルトの名無しさん
2010/09/20(月) 17:56:25(´・ω・`)やんのかこら
0582デフォルトの名無しさん
2010/09/20(月) 18:36:09昔のJavaはすっごく重かったから、その頃のだけ使って、今は使ってないような人は
よくそういうこと言うよね。
0583デフォルトの名無しさん
2010/09/20(月) 18:45:500584デフォルトの名無しさん
2010/09/20(月) 19:01:170586デフォルトの名無しさん
2010/09/20(月) 22:04:12でもそんな化石使ってる人滅多にいないし、メインPCならサクサクさ(´・ω・`)
JAVA万歳(´・ω・`)
0587デフォルトの名無しさん
2010/09/21(火) 00:16:24ってなんですか?
0588デフォルトの名無しさん
2010/09/21(火) 01:02:150589デフォルトの名無しさん
2010/09/21(火) 02:01:570590デフォルトの名無しさん
2010/09/21(火) 09:24:38それらの作成者と同等のオブジェクト指向に対する理解を要求するよね
それが全く現実に即してないから余計に糞コードが量産される
0591デフォルトの名無しさん
2010/09/21(火) 10:48:080592デフォルトの名無しさん
2010/09/21(火) 13:54:23$ java -classpath /usr/share/java/jogl.jar SimpleCube
Exception in thread "main" java.lang.NoClassDefFoundError: SimpleCube
Caused by: java.lang.ClassNotFoundException: SimpleCube
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: SimpleCube. Program will exit.
エラーめっサージが何を言っているのかさっぱりなのですが、何が悪いのでしょうか
ヒントだけでもいいので教えてください。とっかかりさえつかめません
0593デフォルトの名無しさん
2010/09/21(火) 13:58:24クラスパスを指定しているので、カレントディレクトリがクラスパスでなくなったためではないでしょうか。
カレントディレクトリもクラスパスに含めればいいと思われ。
java -classpath .:/usr/share/java/jogl.jar SimpleCube
0594592
2010/09/21(火) 14:03:53$ java -classpath .:/usr/share/java/jogl.jar SimpleCube
動いた\(^o^)/
なるほどカレントディレクトリもクラスパスにないといけないのですね。
まだまだ先は長い
0595デフォルトの名無しさん
2010/09/21(火) 15:46:470596デフォルトの名無しさん
2010/09/21(火) 18:10:510597デフォルトの名無しさん
2010/09/21(火) 18:15:270598デフォルトの名無しさん
2010/09/21(火) 21:15:01class Sample {
public static void main(String[] args) {
String s = "125";
// Integer obj1 = Integer(125); // NG
Integer obj2 = new Integer(125); // OK
Integer obj3 = Integer.valueOf(s); // OK
// Integer obj4 = new Integer.valueOf(s); // NG
int i = obj2.intValue();
i += 10;
System.out.println(i);
}
}
/* end */
NG となる行、特に new valueOf() が NG なのが把握できないでいます。
static Integer valueOf(String s) では、内部で Integer クラスのオブジェクトが生成されると考えていいのでしょうか。
よろしくお願いいたします。
0599デフォルトの名無しさん
2010/09/21(火) 21:39:06> static Integer valueOf(String s) では、内部で Integer クラスのオブジェクトが生成される
というのは間違い。
newっていうのはそのクラスのインスタンスを作るためのしるしだと考えればいい。
> Integer(125); // NG
新しいインスタンスを作成したいのでnewが必要。
> new Integer.valueOf(s); // NG
これはIntegerの内部静的クラスvalueOfのインスタンスを作成する構文。
当然Integerクラスの内部クラスにvalueOfクラスが定義されていないのでエラーになる。
0600598
2010/09/21(火) 22:06:14初歩の質問にお付き合いくだり、ありがとうございます。
言葉の問題だけかもしれませんが、では、
Integer obj3 = Integer.valueOf("123");
で obj3 が参照しているのは、なにになるのでしょうか?
Integer obj1 = Integer.valueOf("123");
Integer obj2 = Integer.valueOf("123");
Integer obj3 = Integer.valueOf("123");
と、おなじ引数で、異なるなる変数に valueOf() の結果を渡した場合、
obj1, obj2, obj3 の値は同じものでしょうか、別のものでしょうか、それともこの質問は意味のないものでしょうか?
0601デフォルトの名無しさん
2010/09/21(火) 22:27:20valueOfにはなんか罠があった気がするんだが忘れた。
0602デフォルトの名無しさん
2010/09/21(火) 23:02:420603デフォルトの名無しさん
2010/09/21(火) 23:05:26Java 一般で、で、お願いいたします。
たとえば、
int a = Integer.parseInt("123");
は納得できるのですが、おおざっぱに書いたとして、
SomethingClass obj = SomethingClass.StaticMethod();
に抵抗を感じました。
C++ の感覚をひきずっているだけなのかもしれません。
0604デフォルトの名無しさん
2010/09/21(火) 23:08:01staticメソッド内でnewしているケースがほとんど。
0605デフォルトの名無しさん
2010/09/21(火) 23:09:470607デフォルトの名無しさん
2010/09/21(火) 23:12:38Integer.valueOfの場合はともかくとして一般的な場合で言うと
SomethingClass obj = SomethingClass.StaticMethod();
としておけばobjのはSomethingClass自身でもSomethingClassを継承したクラスでも良いというメリットがある。
0608デフォルトの名無しさん
2010/09/21(火) 23:15:09まてまてまて。
. で動いたのは、もしかして動かした場所の下に SimpleCube.class が置いてあるからとかじゃないのか?
jar コマンドで /usr/share/java/jogl.jar はちゃんと作った?
http://java.sun.com/javase/ja/6/docs/ja/technotes/tools/solaris/jar.html
0609デフォルトの名無しさん
2010/09/21(火) 23:20:35>SomethingClass obj = SomethingClass.StaticMethod();
>に抵抗を感じました。
命名の問題な気がします。
HogeClass hoge = HogeClass.newInstance();
だったら抵抗なくね?
0610デフォルトの名無しさん
2010/09/21(火) 23:24:45「Head First Java 頭とからだで覚えるJavaの基本」
いいよ(´・ω・`)
0611デフォルトの名無しさん
2010/09/21(火) 23:29:57それアメリカ版amazonだとかなり評判いいよね、レビュー3桁
0613デフォルトの名無しさん
2010/09/22(水) 00:29:530614デフォルトの名無しさん
2010/09/22(水) 07:04:04エラーが出て出来ません。
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
gcj -O2 -o Hello --main=Hello Hello.java
デフォルトでライブラリのパスが通ってないのでしょうか。
よくわかりません。教えてください。よろしくお願いします。
0615デフォルトの名無しさん
2010/09/22(水) 08:15:32ソースファイル名は?
0616デフォルトの名無しさん
2010/09/22(水) 08:18:490617デフォルトの名無しさん
2010/09/22(水) 11:06:06調べてみた
どうやら ecj.jar を手動でダウンロードしなければならんらしい
ftp://sourceware.org/pub/java/ecj-latest.jar をダウンロードして ecj.jar にリネームして /usr/share/java/ に置く
詳細は /usr/share/doc/Cygwin/gcc4.README を参照
0618デフォルトの名無しさん
2010/09/22(水) 11:54:520619デフォルトの名無しさん
2010/09/22(水) 11:57:100620デフォルトの名無しさん
2010/09/22(水) 14:17:590621デフォルトの名無しさん
2010/09/22(水) 18:34:330622デフォルトの名無しさん
2010/09/22(水) 19:12:300623デフォルトの名無しさん
2010/09/23(木) 03:27:480624デフォルトの名無しさん
2010/09/23(木) 07:55:38写真の画面からはみだしてしまった人をさす。
http://dic.yahoo.co.jp/newword?ref=1&p=%E8%A6%8B%E5%88%87%E3%82%8C%E3%82%8B&index=2006000009
0625デフォルトの名無しさん
2010/09/23(木) 15:40:030626デフォルトの名無しさん
2010/09/23(木) 15:58:22ってよく書くけど
private static Map map = new Map();
じゃ駄目な理由って何?
0627デフォルトの名無しさん
2010/09/23(木) 16:07:180628デフォルトの名無しさん
2010/09/23(木) 17:16:07すべてのメソッドがAbstractなクラスだと思えばいい。
つまり自身は実装したくなくて、文字通りインタフェースだけ定義したいんだよ。
0629デフォルトの名無しさん
2010/09/23(木) 17:59:37HPで画像をランダムで表セルの中に表示したいんだけど
表セルの中に表示するのはどうすればいいの?
0630デフォルトの名無しさん
2010/09/23(木) 18:07:12ちょっと違う気がする
0631デフォルトの名無しさん
2010/09/23(木) 18:27:57String[] imgs = new String[]{"image-url1", "image-url2", "image-url3"};
Random rnd = new Random();
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
out.print("<td><img src=\"");
out.print(imgs[rnd.nextInt(imgs.length)]);
out.println("\"></td>");
out.flush();
}
0632デフォルトの名無しさん
2010/09/23(木) 20:05:540633デフォルトの名無しさん
2010/09/23(木) 20:57:19サーブレットじゃないとダメなのかな。だったらごめんね。(´・ω・`)
0634デフォルトの名無しさん
2010/09/23(木) 21:14:40ありがとう
初心者のせいか細部があまり理解できなかった…ごめん
>>633
JavaScriptでやったらどうなります?
0635デフォルトの名無しさん
2010/09/23(木) 21:39:490636デフォルトの名無しさん
2010/09/23(木) 21:43:16>JavaScript, Ajaxの質問は、ここでは受け付けていません。
>Web製作管理 http://pc11.2ch.net/hp/
>Webプログラミング http://pc11.2ch.net/php/
>>634
google に「jquery イメージ ランダム」とでも聞いてみれ
0637デフォルトの名無しさん
2010/09/23(木) 21:48:16スレ違いだったのか
ごめん
0638デフォルトの名無しさん
2010/09/23(木) 22:14:14import javax.swing.*;
としてもエラーとなります.
JAVAX.のあとで自動選択メニューにswingが含まれてないのです.
どうしたらよいでしょうか。
0639デフォルトの名無しさん
2010/09/23(木) 22:15:52エラーメッセージを読んで理解してみるとか
0640デフォルトの名無しさん
2010/09/23(木) 22:18:080641デフォルトの名無しさん
2010/09/23(木) 22:29:160642638
2010/09/23(木) 22:36:39昨日からパスをいじり倒してたけど出来なかった.
で、今もう一回1から確認したら出来ました!自己解決、お騒がせしました.
0643デフォルトの名無しさん
2010/09/23(木) 22:39:18アプリケーションのアップデートで使用ライブラリが増減した場合に起動に失敗するようです。
おそらくデスクトップに出来るショートカットなどを叩いた場合、ローカルのjnlpが使用されるからではないかと思います。
一般的なJavaWebStartアプリケーションはこのあたりどのようにしてるんでしょう?
ライブラリは自作(というよりアプリ本体の複数jarファイル)と、apacheとかのライブラリを含みます
(他のライブラリを含む場合、ファイル名のバージョン番号などは消すべき?)。
0644デフォルトの名無しさん
2010/09/23(木) 22:45:34この本を褒めてる人たちって練習問題解いたんでしょうか?
0645デフォルトの名無しさん
2010/09/23(木) 22:50:050646デフォルトの名無しさん
2010/09/23(木) 23:45:19Internal Error (classFileParser.cpp:3161), pid=5756, tid=2096
Error: ShouldNotReachHere()
VM Arguments:
jvm_args: -Dfile.encoding=MS932 -Xbootclasspath/p:
D:\data\Documents\eclipse\android-sdk-windows\platforms\android-8\android.jar
java_command: jp.tuyano.eclipsebook3.SampleApp
Launcher Type: SUN_STANDARD
Environment Variables:
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_21
CLASSPATH=.;C:\Program Files\Java\jdk1.6.0_21\lib\dt.jar;
C:\Program Files\Java\jdk1.6.0_21\lib\tools.jar
PATH=C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;
C:/Program Files/Java/jre6/lib/i386;
C:\Windows\system32;
C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;
.;C:\Program Files\Java\jdk1.6.0_21\lib\tools.jar;
C:\Program Files\Java\jdk1.6.0_21\bin
USERNAME=t
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 37 Stepping 2, GenuineIntel
0647デフォルトの名無しさん
2010/09/23(木) 23:55:590648646
2010/09/24(金) 00:07:12package jp.tuyano.eclipsebook3;
import javax.swing.JFrame;
public class SampleApp {
/**
* @param args
*/
public static void main(String[] args) {
JFrame f = new JFrame();
f.setSize(300,200);
f.setVisible(true);
// TODO 自動生成されたメソッド・スタブ
System.out.println("HELLO!!!!!");
}
}
0649デフォルトの名無しさん
2010/09/24(金) 01:20:001:GUI
2:サーバーサイド
3:携帯アプリ
4:アプレット
0650デフォルトの名無しさん
2010/09/24(金) 01:30:570651デフォルトの名無しさん
2010/09/24(金) 02:56:29正直使えない。
0652デフォルトの名無しさん
2010/09/24(金) 06:23:27かってにしろw
0653デフォルトの名無しさん
2010/09/24(金) 07:12:09Androidがまったく想定してないことしてブートストラップライブラリ辺りをクラッシュさせた感じか?
0654デフォルトの名無しさん
2010/09/24(金) 07:13:400656デフォルトの名無しさん
2010/09/24(金) 07:51:200657デフォルトの名無しさん
2010/09/24(金) 09:12:04そんなことないんだが、使ってる実装なによ?
0658651
2010/09/24(金) 16:41:05実装といわれてもピンとこない。netBeans6.9.1をインストールしたまま使ってる。
createNamedQueryは使えるから、そのクエリーを直接こぴぺしてcreateQueryしてみたらSyntaxエラーにならなかった。
コマンドプロンプトでは正常なクエリーでも、createQueryではSyntaxエラーになるものもあるから、かなりしんどいな。
0659デフォルトの名無しさん
2010/09/24(金) 16:49:450660デフォルトの名無しさん
2010/09/24(金) 17:23:10相当切羽詰っているんだろうなw
なんかすげー笑ったwww
0661デフォルトの名無しさん
2010/09/24(金) 17:24:050662デフォルトの名無しさん
2010/09/24(金) 17:24:23public static void main(String[] args){
System.out.println("空きメモリ:"+
Runtime.getRuntime().freeMemory() );
DataSet[] data = new DataSet[100];
for(int i = 0; i < 100; i++){
data[i] = new DataSet();
System.out.println("生成済みインスタンス数:"+ (i + 1) + " 空きメモリ:"+Runtime.getRuntime().freeMemory());
}}}
class DataSet{
int x;
int y; } 実行すると空きメモリが全く減らないのですがどうしてでしょう?
0663デフォルトの名無しさん
2010/09/24(金) 17:36:41>>654
0664デフォルトの名無しさん
2010/09/24(金) 17:45:02メモリ確保のオーバーヘッドを減らすために、最初にある程度大きめのメモリブロックを確保して、それを細切れに各インスタンスに割り当てていくから
-XX:-UseTLAB オプションを付ければその機能が無効になる
0665デフォルトの名無しさん
2010/09/24(金) 17:50:300666デフォルトの名無しさん
2010/09/24(金) 18:00:330667デフォルトの名無しさん
2010/09/24(金) 18:00:44ありがとう 調べてみます
0668658
2010/09/24(金) 18:40:52正直めんどくさいけど、まあいいや。ありがとう。
0669デフォルトの名無しさん
2010/09/24(金) 20:01:31→フレームワークの基礎→Strutsを触ってみる
ウェブ系以外で次になんかない?
本でも何でもいいから取っ付きを・・・
0670デフォルトの名無しさん
2010/09/24(金) 20:03:440671デフォルトの名無しさん
2010/09/24(金) 20:16:55じゃあJOGLで3Dとかどう
0672デフォルトの名無しさん
2010/09/24(金) 20:20:36前も聞きましたすいません、RSSリーダーもいまいちピンと来なくて・・・。
0673デフォルトの名無しさん
2010/09/24(金) 20:25:02>>654
0674デフォルトの名無しさん
2010/09/24(金) 21:18:46Style.class == Style.BOLD.getDeclaringClass()
両者の違いは何ですか?
0675デフォルトの名無しさん
2010/09/24(金) 21:27:58Style.BOLD.getClass() ・・・ Class<?>
Style.BOLD.getDeclaringClass() ・・・ Class<Style>
0676デフォルトの名無しさん
2010/09/24(金) 21:29:510677デフォルトの名無しさん
2010/09/24(金) 21:35:24BOLD,
ITALIC{}
}
Style.class == Style.BOLD.getClass()
Style.class == Style.BOLD.getDeclaringClass()
Style.class != Style.ITALIC.getClass()
Style.class == Style.ITALIC.getDeclaringClass()
0678デフォルトの名無しさん
2010/09/24(金) 22:50:26メソッド利用の際の名前短縮してるけど
Mathクラスの円周率とかは直接Math.PIで参照できるのはフィールドだから?
何言ってるか自分でもよくわかってないのですが…
0679デフォルトの名無しさん
2010/09/24(金) 23:28:45Mathはjava.langパッケージのクラスだから。
0680デフォルトの名無しさん
2010/09/25(土) 00:42:24ファイルの先頭に import java.lang.*; が自動的に付くんだと思ってくれ
0681デフォルトの名無しさん
2010/09/25(土) 02:06:20それともソースを混ぜて自ソースと一緒にjarにしてしまう?
後者の場合ライセンスとか問題ないんでしょうか?
0682デフォルトの名無しさん
2010/09/25(土) 02:15:09フリーソフトを自分で使う場合ライセンスが関わることは無いでしょう。
誰かに使わせたいけど、ライセンスを読みたくない場合は、使わせるのをあきらめましょう。
0683デフォルトの名無しさん
2010/09/25(土) 02:34:07いや、Apacheライセンスがゆるゆるなライセンスなことは知ってるんですが、
ソースからコンパイルしてソースを混ぜてしまうと、ソースに書いてある著作権表記とかは消えるわけですよね。
マニュアルとかREADMEファイルとかに「commons使ってるよーん」と表記するだけで良いようにも読めますが
これであってますか?
0684デフォルトの名無しさん
2010/09/25(土) 02:59:44ものによっては、license.txtをどっかにおいとけばいいいんだぜっ!ってやつなかったっけ?
0685デフォルトの名無しさん
2010/09/25(土) 04:10:58うん
0686デフォルトの名無しさん
2010/09/25(土) 09:11:00APL2.0ってそれじゃなかった?うろ覚えだけど
0687デフォルトの名無しさん
2010/09/25(土) 11:53:280688デフォルトの名無しさん
2010/09/25(土) 17:22:38わかった
0689デフォルトの名無しさん
2010/09/25(土) 20:17:35できるようであればどのクラスを使用するかも教えてください。
0690デフォルトの名無しさん
2010/09/25(土) 20:41:08作成しJarからMac用にApp化したいのですが不可能でしょうか?
Jar BundlerでApp作ったのですがダメでした。
0691デフォルトの名無しさん
2010/09/25(土) 20:55:21ドキュメントを印刷すればいいだけ
0692デフォルトの名無しさん
2010/09/25(土) 21:06:22JAVA入門書とりあえず1冊読んだけど、ソースプログラムみてもわけわかめで
手が出せない。 演習的な本やったほうが良いのかな
0693デフォルトの名無しさん
2010/09/25(土) 21:16:29その入門書に載ってるソースプログラムもわけわからんの?
0694デフォルトの名無しさん
2010/09/25(土) 21:57:130695デフォルトの名無しさん
2010/09/25(土) 22:01:05表出性発達言語障害
http://www.youtube.com/watch?v=BnRNeDtme0g
0696デフォルトの名無しさん
2010/09/25(土) 22:06:20もう諦めろ
0697デフォルトの名無しさん
2010/09/25(土) 22:41:050698デフォルトの名無しさん
2010/09/25(土) 23:28:07俺は後者の方が効率がいい気がしてならない
0699デフォルトの名無しさん
2010/09/25(土) 23:30:09入門書読んだだけでは確実に内容を隅々まで理解できていないので
色々と細かい点を変えたり試行錯誤して学習したほうがいいよ
0700デフォルトの名無しさん
2010/09/25(土) 23:42:090701デフォルトの名無しさん
2010/09/25(土) 23:54:390702デフォルトの名無しさん
2010/09/26(日) 00:09:070703デフォルトの名無しさん
2010/09/26(日) 00:50:00両方。わけもわからず書いても上達しないし、
読んだだけでは重要なところをスルーしかねない。
(CPUになったつもりで1ステップずつ追いかけるなら別)
やりたいことに似たコードをexampleとかから探してきて、
写経してデバッガで追っかけるとかやってるな。
0704デフォルトの名無しさん
2010/09/26(日) 01:46:27おれはオプソいろいろ読んで、似たコードを実際かいてみて練習。がいいと思う。いろいろやったがこれが一番上達した気がする。
初心者は、ソースの美醜が分かるようになると上達が速そう。
何年たっても上達しない人は、あまりキレイじゃないソースを「分かりやすくていい」とか言ったりする人が多い気がする。
0705デフォルトの名無しさん
2010/09/26(日) 02:29:24自分の思い通りに書けるようになったら
他人のソースを読んでいろんな書き方を盗め
0706デフォルトの名無しさん
2010/09/26(日) 02:41:49「任意の長さの、要素が全て600未満の整数値である配列 A[n] に色々な数値が入っているとして、
A[n]の中の1個からn個までの要素を抜き出し、足し合わせて 結果が550になる組み合わせを列挙したい。
ただし、400と320を加算する等して結果が600以上になった場合、加算結果を2で割らなければならない。
すなわちただの合計値だけでなく、加算する順番も考慮しなければならない。」
こんな感じの内容を実現したいんだけど、どう計算させれば良いんだろうか?
{ 50, 50, 100, 150, 240, 260, 300, 500 } という配列が入力されたらば
{ { 50, 500 }, { 50, 240, 260 }, { 50, 50, 150, 300 }, ........って感じの二次元配列を返すように作りたい。
課題とか仕事とかじゃないんで期限納期がどうこうは無いんだけど
昨日から丸一日考えてもどう作れば良いかサッパリわかんね。あたまわるい自分に誰か教えておくれ
0707デフォルトの名無しさん
2010/09/26(日) 02:45:14> 400と320を加算する等して結果が600以上になった場合、加算結果を2で割らなければならない
ここで、片方が奇数、片方が偶数だった場合は ***.5になるけど、これは小数点を切り捨てる、としたい。
0708デフォルトの名無しさん
2010/09/26(日) 02:46:43がよくわからない
2で割った結果が550となればいいってこと?(つまり合計値が1100でもいいの?)
0709デフォルトの名無しさん
2010/09/26(日) 02:51:54つまり、nビットの二進数を数え上げて、1が立っている位置に対応する要素を
調べるようにする。
0710デフォルトの名無しさん
2010/09/26(日) 02:55:51ざっとこんな感じかな
配列Aをソート
1:Aを大きい方から足していく
2:既定値となったら結果リストに追加して,最後に選んだ値を除く
3:既定値を超えたら,選んだ中で一番小さい値を除いて加算を続ける
4:最小値まで到達したらAから最大値を除いて再び1:から行う
0711デフォルトの名無しさん
2010/09/26(日) 03:12:51>>708
400と320を足したら620、これは600以上である為、620/2 = 310 として扱われる、って事。
で、その後に240を足せば550になるな、って感じ
>>709
そもそも全ての組み合わせをどう作ったものか、って段階でかなり(自分の頭が)怪しいし
それに全部列挙するとなると仮に配列長が40あったとしたら、40 + 40*39 + 40*39*38 ... と、えらい数にならない?
>>710
ソートしてから大きいほうから足して行くのは、ただの加算だけなら良いんだけれども
大きい数字同士は 600以上になったら【その時点で】1/2するって約束が辛くない?
例えば { 50, 100, 150, 300, 800 } だと、要件を満たしてしまうから演算が止められない
0712デフォルトの名無しさん
2010/09/26(日) 03:13:450713デフォルトの名無しさん
2010/09/26(日) 03:16:35600以上になったら 2で割るって所、【越えた時点で2で割る】って事なんだ。
{ 200, 300, 300, 500} だったら
まず200と300を足して500、これは600未満だからそのまま
次に500と300を足して800、これは600以上だから2で割って400
更に400と500を足して900、これは600以上だから2で割って450
で、結論が450になる、そんな感じ。
書いててもう頭いっぱいになってまいりました
0714デフォルトの名無しさん
2010/09/26(日) 03:20:31任意の長さとして特に決めてはいないんだけれども……
真面目にやると凄い計算回数になるし、配列長 30個までが出来れば良いなと思ってます。
でも30の階乗とかもう数字じゃないわ
0715デフォルトの名無しさん
2010/09/26(日) 03:22:130716デフォルトの名無しさん
2010/09/26(日) 03:23:53Exceptionのサブクラスではなく、Throwableのサブクラスとして
定義した商用のパッケージを見かけました。(1.4です)
Throwableのサブクラスとすることに、どのような利点が考えられるでしょうか?
0717デフォルトの名無しさん
2010/09/26(日) 03:26:08問題無しです。気になったら最後の方で重複チェックすれば良いし
【超えた時点で2で割る】ルールがあるからnCmじゃなくnPm必須になるし……
0718デフォルトの名無しさん
2010/09/26(日) 03:33:55Exceptionだとキャッチできなかったんだろ。その商用パッケージ。
0721デフォルトの名無しさん
2010/09/26(日) 04:34:5540個だったら、40bitの整数を1から1ずつ増やしていけば2^40-1個全部数え上げられるよ。
やりたいことって、ナップザック問題の解の列挙だから、効率よく解けたら神レベル。
なので、安心して効率の悪いプログラミングに没頭できるよね。
もし、ちょっとだけ効率よくしたければ、ローカルサーチとかググればちょっと良くなるかも。
0722デフォルトの名無しさん
2010/09/26(日) 04:50:16ThrowableのサブクラスにErrorとかExceptionがあるのはOKだろ?
で、そのパッケージの該当箇所は、Error系ものをキャッチ→ハンドルしたかったんじゃない?ってこと。
0723デフォルトの名無しさん
2010/09/26(日) 11:09:520724デフォルトの名無しさん
2010/09/26(日) 11:35:41global exceptionにErrorを書かなくちゃいけなかったりの。
たぶんそういうのを考慮して統一したんじゃないか。
>>723
プログラマは例外は基本キャッチしない方針で作ってるフレームワークだと思う。
0725デフォルトの名無しさん
2010/09/26(日) 11:56:28Strutsを使うとも明確に書いてないし(一応それでちょこちょこやってる)、バージョンすら書いてない。
しかもどこのどれに何を書くの「どこ」と「どれ」がないんだぜ・・・?
これで入門って冗談よせよ。
0726デフォルトの名無しさん
2010/09/26(日) 13:20:08ごめん候補リストが何を意図してるか考えてたら寝てしまっていた
>>721
あああああああナップザック問題か!そう言われれば似てる!
わかったこの辺のアルゴリズム勉強して効率良いのを応用出来んか考えてみるよ
おれはかみになるんだ!
0727デフォルトの名無しさん
2010/09/26(日) 15:11:26こんな風にやらないと駄目?
C言語ではたしか後ろの部分に引数云々出来たけどjavaは出来ない?
0728デフォルトの名無しさん
2010/09/26(日) 15:35:11ありがとうございます。
ちなみに先に書くべきだったんですが、
class FooException extends Throwable
class FooApplicationException extends FooException
という感じで定義されています。
ユーザ側でアドオンのプログラム書けるパッケージでして、
アドオン作ってるときに、ふと疑問に思って質問しました。
>>722
Errorをハンドル、っていう可能性を全然考えていませんでした。
説明ありがとうございました。
>>723
ダメプログラマがcatch(Exception)と書くと、そこキャッチできなくなるので、
余計にマズいような気がします。
私も最初似たような理由なのかと考えたのですが、どうも違うような気がしています。
>>724
>例外は基本キャッチしない方針
おっしゃる通りだと思います。
「設計上エラーと例外を同じように扱いたいケースがあるため」
ということになるんでしょうか。
0729デフォルトの名無しさん
2010/09/26(日) 15:43:05System.out.printf
0731716
2010/09/26(日) 15:46:260732デフォルトの名無しさん
2010/09/26(日) 15:53:35雑魚の分際で死ねよ
0733デフォルトの名無しさん
2010/09/26(日) 16:12:24っていうのはnamespaceですか?
0734733
2010/09/26(日) 16:13:04JavaScriptスレと間違えた
0735727
2010/09/26(日) 16:24:130736デフォルトの名無しさん
2010/09/26(日) 16:32:310737デフォルトの名無しさん
2010/09/26(日) 17:52:22Tomcat
規模の小さいのがいいならcommons langとか。
これをジェネリスク対応にしていくw
0738デフォルトの名無しさん
2010/09/26(日) 18:00:24C#=.netみたいに
0739デフォルトの名無しさん
2010/09/26(日) 18:26:540740デフォルトの名無しさん
2010/09/26(日) 18:40:51プログラムを読み進めているのですが数行目で分からなくなりました。
Shell<DHT<String>> stdioShell = null;
の部分は Shell<DHT<String>>クラスをstdioShellで宣言してnullを代入している?などと考えたのですが、
そもそもクラスの宣言は Shell<DHT<String>> stdioShell = new Shell<DHT<String>> (引数)
のはずなので間違っている。上記の部分は何をしているんでしょう?
提示する情報が不足している場合はご指摘お願いします。
EclipceにおいてShell<DHT<String>>にマウスポインタを当てたところ、
Shell<DHT<String>>はow.tool.util.shellframework.Shell<DHT<String>>を指しているということがわかったので
該当のファイルを開いたところ、public final class Shell<T> implements Runnable, Interruptible {
といったクラスはあったのですが、Shell<DHT<String>>は見当たりませんでした。
プログラム一部
public static void main(String[] args) {
(new Main()).start(args);
}
protected void start(String[] args) {
Shell<DHT<String>> stdioShell = null;
stdioShell = this.init(args, System.in, System.out, true);
if (stdioShell != null) {
stdioShell.run(); // this call is blocked
}
}
ow.tool.util.shellframework.Shell<DHT<String>>
0741デフォルトの名無しさん
2010/09/26(日) 18:45:31ジェネリック
0742デフォルトの名無しさん
2010/09/26(日) 18:56:10ジェネリックスについて勉強します。
0743デフォルトの名無しさん
2010/09/26(日) 19:41:51の.classは何をしているメソッドなんですか?
ttp://java.sun.com/javase/ja/6/docs/ja/api/java/lang/Class.html
↑での調べ方もよく分かっていませんが、それについてもお願いします
0744デフォルトの名無しさん
2010/09/26(日) 19:52:300745デフォルトの名無しさん
2010/09/26(日) 20:13:19メソッドではなくてクラスリテラルといいます
Systemクラスを表すClassオブジェクトが欲しいときにSystem.classと書きます
0746デフォルトの名無しさん
2010/09/26(日) 20:34:160747デフォルトの名無しさん
2010/09/26(日) 23:34:32クライアントがサーバにファイルをアップロードすると、
サーバは接続済みの全てのクライアントにそのファイルを流す。
これを実現するためのサーバ側のコードで悩んでいます。
まずアップロードされたファイルを受け取るためにソケットからinputStreamを取得しますが、
これを各ソケットのoutputStreamに流す時に、どのように実装すればいいのか分かりません。
一つのinputStreamをfor文で複数のoutputStreamに流そうとしても、最初のoutputStreamにしか流せないようです。
これはinputStreamが内部でどこまでデータを取り出したかを管理(?)してるからでしょうか。
他の案としては、一時的なファイルを作ってしまってそのファイルを複数のソケットが読めばできそうですが
どう考えても良いやり方とは思えません。
結局、巨大なbyte配列で一時的にデータを溜めるぐらいしか思いつきません。
何かよい方法は無いでしょうか。
0748デフォルトの名無しさん
2010/09/26(日) 23:49:040749デフォルトの名無しさん
2010/09/27(月) 00:17:38が1番スマートじゃないの?
配列長は巨大にする必要ないけど
0750デフォルトの名無しさん
2010/09/27(月) 00:24:34やっぱ「ゆとり」は違うわw
0751デフォルトの名無しさん
2010/09/27(月) 00:51:13ゆとりま
ゆとらごん
0752デフォルトの名無しさん
2010/09/27(月) 01:09:430753デフォルトの名無しさん
2010/09/27(月) 01:12:120754デフォルトの名無しさん
2010/09/27(月) 01:34:570755デフォルトの名無しさん
2010/09/27(月) 01:42:190756デフォルトの名無しさん
2010/09/27(月) 02:22:36$hoge.reverse($hogeList) みたいのを探したんだけどないお・・
0757デフォルトの名無しさん
2010/09/27(月) 10:30:15when postfixed to a column name the DESC keyword means descending order.
http://velosurf.sourceforge.net/vtl-reference.html#entity.order
0758デフォルトの名無しさん
2010/09/27(月) 11:11:51ウンコとかチンコじゃダメなんですか?
0759デフォルトの名無しさん
2010/09/27(月) 11:38:270760デフォルトの名無しさん
2010/09/27(月) 13:26:03プログラミング関連の英語なんか英語というより記号みたいなもん
ドキュメントとかは慣れれば英語そんなにわからなくても十分読める
0761デフォルトの名無しさん
2010/09/27(月) 14:08:160762デフォルトの名無しさん
2010/09/27(月) 14:15:21MSDN日本語版の説明はいつも意味不明ですよね?
0763デフォルトの名無しさん
2010/09/27(月) 14:15:530764デフォルトの名無しさん
2010/09/27(月) 15:16:16あるだけマシ
Javaのはもともと解説一行だから丁寧に訳せるんだよ
0765デフォルトの名無しさん
2010/09/27(月) 18:07:440766デフォルトの名無しさん
2010/09/27(月) 18:08:340767デフォルトの名無しさん
2010/09/27(月) 18:42:27死ねよチンカス
0768デフォルトの名無しさん
2010/09/27(月) 19:32:40Yahooのトップページの各枠を1つのMVCとして実装し、
各枠のhtml生成が終わったのちに、テンプレートを基にしたhtmlに出力するような
フレームワークってないでしょうか?
(枠の数はDBの設定等により動的に変わります)
Strutsのtilesを調べたのですが、各枠用のJSPが固定なため
いまいちです(状況によりhtmlを変更したい)
なにかおすすめありましたら教えてください
0769デフォルトの名無しさん
2010/09/27(月) 19:53:180770デフォルトの名無しさん
2010/09/27(月) 19:56:08>>117
0771デフォルトの名無しさん
2010/09/27(月) 20:15:03wicket,xmlc
0772デフォルトの名無しさん
2010/09/27(月) 21:06:51師匠!それはvelosurfです!
それにSQLにDesc書けばおk、とかじゃなくて単純に逆順ループをしたいでござうr
0774デフォルトの名無しさん
2010/09/27(月) 21:37:520775デフォルトの名無しさん
2010/09/27(月) 22:11:500776デフォルトの名無しさん
2010/09/27(月) 23:56:500777デフォルトの名無しさん
2010/09/28(火) 00:28:26ソートじゃねぇ、逆順にしたいだけなんだ・・!
もう自作のReverseToolつくったは・・
0778デフォルトの名無しさん
2010/09/28(火) 04:55:140779デフォルトの名無しさん
2010/09/28(火) 10:13:530780デフォルトの名無しさん
2010/09/28(火) 11:10:26またその辺の仕様の取り決めってあったりするでしょうか?
0781デフォルトの名無しさん
2010/09/28(火) 11:22:26心配ならSQLExceptionとOutOfMemoryErrorをキャッチしてバッチあきらめ処理に切り替えておけば大抵大丈夫なんじゃないか
0782デフォルトの名無しさん
2010/09/28(火) 17:12:190783デフォルトの名無しさん
2010/09/28(火) 17:26:07Javaはどこまで理解しているのか、どこがわからないのか。
あなたのいっているプログラムでどこまでできてどこがわからないのか。
具体的に書かないと、ぐぐってきた、テキトーなサンプルを貼り付けられておしまいですよ
0784782
2010/09/28(火) 17:39:460785デフォルトの名無しさん
2010/09/28(火) 17:50:49http://d.hatena.ne.jp/thilogane/20100227/p2
あたりみて、Java的にわからない箇所があったら「ここがわからん。」っていうと回答しやすいんじゃない?
リンクは、あなたが問題にしている式と似た2次方程式だからやり方もほとんど同じになると思います。
0786デフォルトの名無しさん
2010/09/28(火) 18:02:29ヤフれ
0787782
2010/09/28(火) 18:19:430788デフォルトの名無しさん
2010/09/28(火) 18:24:55普通なら1000件のinsertくらいでエラーは起きない
0789デフォルトの名無しさん
2010/09/28(火) 18:29:49バッファエラーってのは、Java側?DB側のチューニングの問題?
0790785
2010/09/28(火) 18:31:13あ、リンク、3次方程式だった。。
リンク先がさっぱりわからないのなら、
ニュートン法を理解していないのか、Javaがまったく読めないのか。と推察します。
仮に「Javaがまったく読めない」のだったらJavaの基礎的なところを解説したサイトがあるのでそちらを参考にするとよいかと思います。
0791デフォルトの名無しさん
2010/09/28(火) 19:11:330792デフォルトの名無しさん
2010/09/28(火) 19:23:520793デフォルトの名無しさん
2010/09/28(火) 19:56:38java.awt.QuadCurve2D に二次方程式解かせることできるよー。
三次は CubicCurve2D ね。
なんでjava.lang.Mathに無いのかはよくしらん。
最近のGPUは方程式解く機能があるんだっけ?
0794デフォルトの名無しさん
2010/09/28(火) 20:01:450795デフォルトの名無しさん
2010/09/28(火) 20:02:230796デフォルトの名無しさん
2010/09/28(火) 20:46:17「任意のノードとやらに相当するTreePathを作ってあげて
JTreeのfireTree***()に渡してあげるジョブ」を
イベントディスパッチスレッドに投入するといいんでないかい?
0797メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 21:45:41ご教示の程よろしくお願いします。
(本文が長すぎるようなので、2度に分けて投稿します)
入門書を参考にして以下の2クラスを作成しました。
transferメソッドの第一引数は「型+変数」なので教科書どおりで理解できるのですが、
第二引数が「クラス名+インスタンス名」となっています。
なぜ、このような書き方が可能なのでしょうか?
(いろいろな文献にあたったのですが、このような書き方についての解説が見つかりませんでした)
public class OOPSample {
public static void main(String[] args) {
Account fromAccount = new Account(12345, 10000);
Account toAccount = new Account(67890, 10000);
fromAccount.transfer(1000, toAccount);
}
}
0798メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 21:46:52int id;
int balance;
Account(int id, int balance){
this.id = id;
this.balance = balance;
}
String info() {
return "口座番号:" + this.id + "残高:" + this.balance + "円";
}
void transfer(int amount, Account toAccount){
this.balance -= amount;
toAccount.balance += amount;
System.out.println("送信金額:" + amount + "円");
System.out.println("送信元 " + this.info());
System.out.println("送信先 " + toAccount.info());
}
}
0799デフォルトの名無しさん
2010/09/28(火) 22:02:490800デフォルトの名無しさん
2010/09/28(火) 22:08:14ここか?
変数宣言のときも
Account toAccount;
って書くから、値がインスタンスってのは言語のルールでしょ
0801デフォルトの名無しさん
2010/09/28(火) 22:18:09クラスも型なのでクラス名は型名です
インスタンス名というものは無く、それはインスタンスを指しているだけのただの変数です
従って Account toAccount というのは、Accout 型の toAccount という変数です
おk?
0802メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 22:40:24>>799
勉強を始めてから未だ3日目なので適性判定はご容赦を。
Javaの初仕事が目前に迫っているので、どうしても習得せねばならないのです。
当方、COBOLとPL/Iなら得意なのですが、オープン系の言語は初めてでして…
>>800
そこです。
値がインスタンスというのはJava言語のルールなのでしょうか。
済みませんが、いま一つ分かりません。
しかし、余りにも基礎的なことのようなので、もう少し参考書類を探してみます。
>>801
クラスも型なのでしょうか。
当方が持っている参考書では、変数の型とは「データをメモリに記憶する方法を定めたもの」であり、
int,long,float,double,char,boolean,Stringが一覧表で示されています。
教えていただいた内容は、ちょっと禅問答のような感じです。
いずれにせよ、皆さん、貴重な時間を割いていただいて、どうもありがとうございました。
いろいろなヒントを教えていただいたと思います。
感謝!
0803デフォルトの名無しさん
2010/09/28(火) 22:43:24それなら1年ぐらいロムってたらどうですか?
0804デフォルトの名無しさん
2010/09/28(火) 22:47:45Javaはオラクルが全権掌握してるから単に言語としてはCOBOLの方がオープンだよ
0805デフォルトの名無しさん
2010/09/28(火) 22:54:120806デフォルトの名無しさん
2010/09/28(火) 22:55:280807メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 22:55:57ご意見ありがとうございます。
しかし、突然Javaの仕事をすることになってしまい、
なるべく早く習得しなければならない羽目になっています。
それで、焦燥感に駆られて質問を書き込んでしまいました。
1年は待ってられない感じなんです。
「値がインスタンス」とか「インスタンスを指しているだけのただの変数です
従って Account toAccount というのは、Accout 型の toAccount という変数」
の意味が分かるような解説書やWebサイトをもしご存知でしょうか?
ご存知でしたら、是非ともお教えください。
0808デフォルトの名無しさん
2010/09/28(火) 22:59:14>int,long,float,double,char,boolean,Stringが一覧表で示されています。
Stringはクラスだよな?
0809デフォルトの名無しさん
2010/09/28(火) 23:01:52静的言語でクラスを型と呼ぶのは結構一般的
0810デフォルトの名無しさん
2010/09/28(火) 23:06:250812デフォルトの名無しさん
2010/09/28(火) 23:09:310813デフォルトの名無しさん
2010/09/28(火) 23:11:050814メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 23:12:14ありがとうございます。
>>808
さっそく参考書を調べたところ、「Stringクラスは、char型の配列をフィールとして
持つクラスです」との一文がありました。
とりあえず、この付近の文章を読んでみます。
>>809
禅問答っぽいですが、ヒントになりそうです。
(クラスなる言葉が出てくる言語は初めてなもので…)
いただいたコメントを何度も読んで、噛締め、咀嚼してみます。
0815デフォルトの名無しさん
2010/09/28(火) 23:13:02クラスは関数の飾り。インスタンスメンバは使うな。変数もメソッドも全部staticにしろ。
基本型以外は使うな。入出力はおまじないだから余計なことは考えず参考書からコピペしろ。
0816メソッドの引数としてクラス名とインスタンス名を使用
2010/09/28(火) 23:30:02>>811
クラスは「ある処理に関するデータと処理内容をまとめて定義した設計書のようなもの」で
インスタンスは、その実体、という認識です。
しかし、まだ本当には理解しきれていないのでしょう。
>>812
励まし、ありがとうございます。
確かにCOBOLと比べればPL/Iの方がJavaに似た感じです(ぱっと見た目の話ですが)。
ですが、まだまだJavaの本質が「掴めていない」ように思います。
>>815
アドバイス、ありがとうございます。
まだまだピンと来ないJava用語が多いので、勉強します。
0817デフォルトの名無しさん
2010/09/28(火) 23:41:36ですよ。
あとやたらへりくだる慇懃無礼な感じとかもね。
0818デフォルトの名無しさん
2010/09/28(火) 23:41:50Cとかやったら発狂しそうだな 関数のポインタとかで。
0819メソッドの引数としてクラス名とインスタンス名を使用
2010/09/29(水) 00:02:23了解。
確かにそうでした。
0820デフォルトの名無しさん
2010/09/29(水) 00:17:04ただし後々痛い目に遭うこと間違いなし
0821デフォルトの名無しさん
2010/09/29(水) 00:26:483日掛けて型と変数がわからないってレベルのそんなかけ離れた言語だったのか。
0822デフォルトの名無しさん
2010/09/29(水) 00:31:120823デフォルトの名無しさん
2010/09/29(水) 01:15:07そんなことないよ。
かなりきめ細かく指定できる。
<数字はすべて十進1けたを1バイトの数字で表現する属性>
PIC XXX 英数字3文字(3バイト)
PIC X(256) 英数字256文字(256バイト)
PIC 9(5) 数字5文字で十進5けたの符号なし整数を表す(5バイト)
PIC 999V99 数字5文字で十進整数部3けた、小数部2けたの符号なし数を表す(5バイト)
PIC 999PPP 数字3文字でその下に3けたの仮想的なゼロを補った数値を表す(3バイト)
PIC Z(7)9 8けたまでで先頭のゼロをサプレスした符号なし整数(8バイト)
PIC ZZZ9.9999 整数部4けた(ゼロサプレス)+小数点のピリオド+小数部4けた(9バイト)
PIC -----9 5けたまでの符号付整数をゼロサプレスしたうえで先頭に符号を付与する(6バイト)
<バイナリや浮動小数点のデータ型…下記のUSAGE句を指定>
USAGE BINARY 2の補数表現のバイナリ PICTURE句でけた数を指定
USAGE PACKED-DECIMAL 1バイトで十進2けたを表現する PICTURE句でけた数を指定
USAGE COMP-1 単精度浮動小数点 PICTURE句不要
USAGE COMP-2 倍精度浮動小数点 PICTURE句不要
USAGE COMP-3 PACKED-DECIMALと同義 PICTURE句でけた数を指定
USAGE COMP-4 BINARYと同義 PICTURE句でけた数を指定
0824デフォルトの名無しさん
2010/09/29(水) 02:15:02Javaの絵本を適当に読んで
適当な入門サイトに載ってるプログラムをいくつか動かしてみる
そしたら電卓もどき程度は作れるようになるので
そこまで行けば後は脳が勝手に覚えてく
嘘じゃない
0825デフォルトの名無しさん
2010/09/29(水) 08:01:31データの取りこぼしがでてしまいます。writerスレッドからlongで10から100までの数字をreaderスレッドに送ります。
どこが悪いのでしょうか。他にやりかたはあるでしょうか。
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.*;
public class Test {
static Selector selector;
static Pipe pipe;
static SelectableChannel writeChannel, readChannel;
public static void main(String[] args) {
try {
selector = Selector.open();
pipe = Pipe.open();
writeChannel = pipe.sink(); readChannel = pipe.source();
writeChannel.configureBlocking(false);
readChannel.configureBlocking(false);
// writeChannel.register(selector, SelectionKey.OP_WRITE);
readChannel.register(selector, SelectionKey.OP_READ);
}
catch(IOException e) {;}
new reader(selector, (ReadableByteChannel)readChannel).start();
new writer((WritableByteChannel)writeChannel).start();
}
}
0826デフォルトの名無しさん
2010/09/29(水) 08:02:40class reader extends Thread {
Selector selector; ReadableByteChannel readChannel;
byte[] Buf; ByteBuffer Buffer;
public reader(Selector selector, ReadableByteChannel readChannel) {
this.Buf = new byte[32]; this.Buffer = ByteBuffer.wrap(Buf);
this.selector = selector; this.readChannel = readChannel;
}
public void run() {
while (true) {
try { selector.select();} catch(IOException e) {;};
for (SelectionKey selectionKey: selector.selectedKeys()) {
if (selectionKey.isReadable()) {
Buffer.clear();
readChannel = (ReadableByteChannel)selectionKey.channel();
try {
readChannel.read(Buffer); Buffer.flip();
System.out.println("Receive: " + Buffer.getLong());
}
catch (IOException e) {;}
}
}
}
}
}
0827デフォルトの名無しさん
2010/09/29(水) 08:05:03class writer extends Thread {
WritableByteChannel writeChannel;
byte[] Buf; ByteBuffer Buffer;
public writer(WritableByteChannel writeChannel) {
this.Buf = new byte[32]; this.Buffer = ByteBuffer.wrap(Buf);
this.writeChannel = writeChannel;
}
public void run() {
int i = 0;
while (i++ < 10) {
/// try { Thread.sleep(0);} catch(InterruptedException e) {;}
Buffer.clear();
Buffer.putLong(i*10);
Buffer.flip();
try {
writeChannel.write(Buffer);
}
catch (IOException e) {;}
}
}
}
0828デフォルトの名無しさん
2010/09/29(水) 09:34:28Javaの初仕事が目前に迫っているので、どうしても習得せねばならないのです。
0829デフォルトの名無しさん
2010/09/29(水) 09:35:48キモイおっさん死ねよ
0830デフォルトの名無しさん
2010/09/29(水) 09:39:570831デフォルトの名無しさん
2010/09/29(水) 09:47:15なぜコボラーを使おうとするのか
0832デフォルトの名無しさん
2010/09/29(水) 09:56:54もしCOBOLを言語としてちゃんと理解していたならJavaを習得するのだってそんなに苦労はないと思います。
0833デフォルトの名無しさん
2010/09/29(水) 09:57:43ネット上の教えて君みたいな人の方が現実世界では案外と上手に生きて行けるもんだ。
いくら頭がよくてもコミュ障害気味のお前らよりは仕事出来るだろうな。
0834デフォルトの名無しさん
2010/09/29(水) 09:58:20ええ?どうしてか分からないんですか?
「メソッドの引数としてクラス名とインスタンス名を使用」だからですよ
0835デフォルトの名無しさん
2010/09/29(水) 10:00:381年は待ってられない感じなんです。
ご存知でしたら、是非ともお教えください。
0836デフォルトの名無しさん
2010/09/29(水) 10:07:280837デフォルトの名無しさん
2010/09/29(水) 10:11:40やっていくと、納品近くなって壊滅的な被害が出るんだよな。
0838デフォルトの名無しさん
2010/09/29(水) 10:13:20age = age + years(C言語などでは age += yearsのように略記できる)
と書かれるが、COBOLでは
ADD YEARS TO AGE (英語でそのまま「年数を年齢に加える」)
となる。このように、数学やアルゴリズムの知識がほとんど無くとも構文上の約束事(全て現在形、語尾変化なしなど)さえ憶えて、
英語による理路整然とした記述ができれば、COBOLのプログラムを取り扱うことができるようになっている。
つまり事務処理の手順を逐一細かく(英語で)記述していけば事務処理が電算自動化できるという、工程的利点が存在する。
さらにプログラムのコードそのものがプログラムの機能を説明する仕組みになっているので、コードをそのまま「読む」ことができるという利点もある。
0839デフォルトの名無しさん
2010/09/29(水) 10:14:32しかし、突然Javaの仕事をすることになってしまい、
なるべく早く習得しなければならない羽目になっています。
0840デフォルトの名無しさん
2010/09/29(水) 10:18:18ないから失業してるっていうかもしれないけど、そんなことはなくて
実力のないコボラーでもたまたまJavaプログラマを探すのが面倒と
思ってしまっている顧客に雇ってもらえてる人もたくさん居る。
だから顧客には勇気を持って取り替えてほしい。
今がよい機会だよ。
0841デフォルトの名無しさん
2010/09/29(水) 10:23:141つ言えるなら、とにかく人の作ったソースを読みまくれ。
昔と違って、javaの基礎の解説サイトなんて唸るほどある。
手っ取り早く「(できればコードを)教えてくれ」って言いたい気持ちは解るが、
それに固執していたら、進むモノも進まなくなるよ。
今苦労するのが、後で身をたすく。
0842デフォルトの名無しさん
2010/09/29(水) 10:30:250843デフォルトの名無しさん
2010/09/29(水) 10:35:1532バイトのバッファに読み込んでlong1個(8バイト)しか表示してないから
読み込んだデータは全部表示しなきゃ、そりゃ取りこぼしたようにも見える
0844デフォルトの名無しさん
2010/09/29(水) 10:42:57勉強を始めてから未だ3日目なので適性判定はご容赦を。
0845デフォルトの名無しさん
2010/09/29(水) 10:48:060846デフォルトの名無しさん
2010/09/29(水) 11:00:390847デフォルトの名無しさん
2010/09/29(水) 11:08:05いただいたコメントを何度も読んで、噛締め、咀嚼してみます。
0848デフォルトの名無しさん
2010/09/29(水) 11:22:16なんみょう〜だ〜
0849デフォルトの名無しさん
2010/09/29(水) 11:38:33言語をJavaで、Webプログラミングしようとしたら、
今時なトレンドは、どんなスタイルなのでしょうか?
今もStrutsとかがメインだったりするんでしょうか?
0850デフォルトの名無しさん
2010/09/29(水) 11:47:190851デフォルトの名無しさん
2010/09/29(水) 11:50:420852デフォルトの名無しさん
2010/09/29(水) 12:04:490853デフォルトの名無しさん
2010/09/29(水) 12:23:26PL/I JAPAN
HELLO:PROC OPTIONS(MAIN);
DCL HELLO1 CHAR(12) INIT('HELLO WORLD!');
DCL 1 HELLO2,
2 * CHAR(12) INIT('HELLO WORLD!');
DISPLAY('HELLO WORLD!');
DISPLAY(HELLO1);
DISPLAY(HELLO2);
END HELLO;
0854デフォルトの名無しさん
2010/09/29(水) 13:49:23がんばって。
0855デフォルトの名無しさん
2010/09/29(水) 13:57:480856デフォルトの名無しさん
2010/09/29(水) 14:01:080857デフォルトの名無しさん
2010/09/29(水) 14:04:540858デフォルトの名無しさん
2010/09/29(水) 14:12:360859デフォルトの名無しさん
2010/09/29(水) 16:01:43どうもありがとうございます。
そうなんです。Cでいうところのflush的なものがないので困っているのです。
対処療法としてみつけたのがsleep(0)を挟み込むことで、
827のwriterでコメントアウトしているsleep(0)を実行するだけでも取りこぼしは無くなります。
try { Thread.sleep(0);} catch(InterruptedException e) {;}
しかし、これで確実にデータを渡せるとはとても思えないので困っているところです。
0860デフォルトの名無しさん
2010/09/29(水) 16:17:29いやいやいやいや、flush関係ないし
読み込んだものを表示してないだけだって言ってるじゃん
こうするんだよ
if (selectionKey.isReadable()) {
readChannel = (ReadableByteChannel) selectionKey.channel();
try {
readChannel.read(Buffer);
Buffer.flip();
while (Buffer.remaining() >= 8) {
System.out.println("Receive: " + Buffer.getLong());
}
Buffer.compact();
} catch (IOException e) {;}
}
0861デフォルトの名無しさん
2010/09/29(水) 16:27:52たびたびありがとうございます。
書いたプログラムは実験用で、実際は送るデータ長は不定なんです。8バイトとは限りません。
そういう場合はどうすればよいのでしょうか。
0862デフォルトの名無しさん
2010/09/29(水) 16:30:40java.nio.channels.spi.AbstractInterruptibleChannel
のbegin,endが関係あるのかと思って
try {
writeChannel.begin();
writeChannel.write();
} finally {writeChannel.end(true);}
などやってみましたが、
begin() has protected access in java.nio.channels.spi.AbstractInterruptibleChannel
こんなエラーメッセージでつまっているところです。
0863デフォルトの名無しさん
2010/09/29(水) 16:31:46最初にデータ長を送るか、改行・空白等で区切る
ファイルの読み書きと同じだと思え
不定長のデータを何の情報もなしに区切れるわけない
0864デフォルトの名無しさん
2010/09/29(水) 16:37:49今、レス書き込んだ直後に思ったのですが、
書き込みスレッドも読み込みスレッドも1つづつで、送受信の混信はないと仮定できるので(別々のスレッドからのデータが混じることはない)
書き込み/読み込みを2段階にわけ、
(1)最初4バイトで次に送るデータ長を送信、
(2)本当のデータを送信
とすることは可能ですね。汚い実装ですが。
できれば、pipeのchannelでデータを確実に送る方法で実装したいです。
pipeはもともとstreamだから、そもそもメッセージを送るという場面では使わないのかもしれないのですが。
channelだとByteBufferが使えるので楽なのと、
selectionKeyが使えるのがやはり楽だったり後で多重化できるのが利点です。
0865デフォルトの名無しさん
2010/09/30(木) 02:32:33スレッドをスタートさせた後、サーブレットの処理は無限ループさせ、スレッドが終了するまで1秒スリープしてはスレッドの実行状態と経過時間を確認を行ないます。
そして、20秒過ぎてもスレッドが実行中心ならタイムアウトとしてスレッドをストップ、またはストップさせないでループを抜ける。そんな処理を書きたいのです。
0866デフォルトの名無しさん
2010/09/30(木) 09:08:580867デフォルトの名無しさん
2010/09/30(木) 10:42:52回答ありがとうございます。
書いてみたのですが上手くいかなかったので、もしかしてダメなのかと思って質問させていただきました。
ソースをもう少し見直してみます。
0868デフォルトの名無しさん
2010/09/30(木) 11:02:53class さーぶれっと {
volatile boolean fin_heavy = false; // 重い処理終わったよフラグ
略 onGet(略) {
Thread worker = new Thread(new Runnable() {
public void run() {
// 重い処理
fin_heavy = true;
}
});
worker.start();
// worker 監視部分
while (true) {
sleep(1000);
if (fin_heavy)
break; // 重い処理終了
if (isTimeout())
break; // 重い処理終わらずにタイムアウト
}
}
}
0869デフォルトの名無しさん
2010/09/30(木) 11:11:59Executor楽でおすすめ
static ExecutorService executor = Executors.newCachedThreadPool();
void doGet(〜) {
〜
Future<?> f = executor.submit(new Runnable(){
public void run() {
〜重い処理〜
}
});
f.get(20, SECONDS);
〜
}
0870デフォルトの名無しさん
2010/09/30(木) 12:11:46レスありがとうございます。
そんな感じに書いているつもりなんですが、一回目はキチンと正常終了しているのにF5でブラウザリロードすると1秒でタイムアウトしてしまってまして><
>>869さん
助言ありがとうございます。
サーブレットのクラス変数はダメなんですよね、サーブレットのメソッドの中でnewしているクラス変数もマズいですか?
とりあえずexecutorぐぐってきます。
0871デフォルトの名無しさん
2010/09/30(木) 12:23:23なかなかの名プログラム
0872デフォルトの名無しさん
2010/09/30(木) 13:15:24そういえばタイムアウト付きFutureがあった
確かにフィールドはまずいですなorz
>>870
タイムアウトカウンタをフィールド持ちしてるとか
さくっと書ける >>869 の実装がお勧め
>>871
むしろ迷orz
0873デフォルトの名無しさん
2010/09/30(木) 17:46:03public static void main (String args[]) {
int x = (int)(Math.random() *9);
System.out.println(x);
if ( x == 0 || x == 1 || x == 2) {
System.out.println(1);
}
if ( x == 3 || x ==4 || x == 5) {
System.out.println(2);
}
if ( x == 6 || x ==7 || x == 8) {
System.out.println(3);
}
}
}
このような1〜3を出力するプログラムがあったとして、その出力された数字を今度は足したり引いたり計算をさせるにはどうやって書けばいいでしょうか?
0874デフォルトの名無しさん
2010/09/30(木) 17:54:45int y = 0;
if ( x == 0 || x == 1 || x == 2) {
y = 1;
}
if ( x == 3 || x ==4 || x == 5) {
y = 2;
}
if ( x == 6 || x ==7 || x == 8) {
y = 3;
}
のようにして、それからyを足したり引いたり計算をすればいいです
0875デフォルトの名無しさん
2010/09/30(木) 17:56:59if ( x < 3) とかじゃダメなのかな?
0876デフォルトの名無しさん
2010/09/30(木) 18:02:07y = x / 3 じゃダメなのかな?
0877デフォルトの名無しさん
2010/09/30(木) 18:08:15あっどうです^^
>>875
こういう事ですよね?
if ( x <=2 ) {
System.out.println(1);
}
if ( x <=3 || x >=5) {
System.out.println(2);
}
if ( x <=6 || x >= 8) {
System.out.println(3);
これだと、>>873にならない出力結果になってしまうんですよ(TT)
0878デフォルトの名無しさん
2010/09/30(木) 18:08:44そもそも計算してどうするのかな?
0879デフォルトの名無しさん
2010/09/30(木) 18:09:40>if ( x <=3 || x >=5) {
不等号の向きがおかしいぜ
0880デフォルトの名無しさん
2010/09/30(木) 18:11:11if ( x < 3) {
y = 1;
}
else if ( x < 6) {
y = 2;
}
else if ( x < 9) {
y = 3;
}
単純にこうじゃないの?
0881デフォルトの名無しさん
2010/09/30(木) 18:20:51ランダム値の値が
0〜2の時、1点
3〜5の時、2点
6〜8の時、3点
でこれを数回繰り返し合計点を計算するプログラムを作りたかったんです。
0882デフォルトの名無しさん
2010/09/30(木) 18:27:09int sum = 0;
int loop = 数回
for (int i=0;i < loop;i++) {
int x = 0〜8のランダム値を返すよ();
int point = (x / 3) + 1;
sum += point;
System.out.printf("%d 回目 らんだむ=%d ぽいんと=%d 合計=%d%n", i+1, x, point, sum);
}
0883デフォルトの名無しさん
2010/09/30(木) 18:28:140884デフォルトの名無しさん
2010/09/30(木) 18:30:16int loop = 数回
int[] point_tbl = new int[]{1,1,1,2,2,2,3,3,3};
for (int i=0;i < loop;i++) {
int x = 0〜8のランダム値を返すよ();
int point = point_tbl[x];
sum += point;
System.out.printf("%d 回目 らんだむ=%d ぽいんと=%d 合計=%d%n", i+1, x, point, sum);
}
0885デフォルトの名無しさん
2010/09/30(木) 18:51:510886デフォルトの名無しさん
2010/09/30(木) 19:16:210887デフォルトの名無しさん
2010/09/30(木) 19:19:350888デフォルトの名無しさん
2010/09/30(木) 21:26:340889デフォルトの名無しさん
2010/09/30(木) 22:07:290890デフォルトの名無しさん
2010/09/30(木) 22:08:37POI使う
0891デフォルトの名無しさん
2010/09/30(木) 22:26:070892デフォルトの名無しさん
2010/09/30(木) 22:32:15オープンオフィスのライブラリを使うべし
0893デフォルトの名無しさん
2010/09/30(木) 23:06:120894デフォルトの名無しさん
2010/09/30(木) 23:15:100895デフォルトの名無しさん
2010/10/01(金) 00:37:340896デフォルトの名無しさん
2010/10/01(金) 10:01:000897デフォルトの名無しさん
2010/10/01(金) 12:34:260898デフォルトの名無しさん
2010/10/01(金) 16:11:300899デフォルトの名無しさん
2010/10/01(金) 22:46:10factoryパターンを使ってmysql,postgresqlの、どっちにも対応させようってコードがあったと思う
本当にそんな事して意味あんのか?
ありえねー事をサンプルにしているなんて無駄としか思えない
0900デフォルトの名無しさん
2010/10/01(金) 22:46:320901デフォルトの名無しさん
2010/10/01(金) 23:24:02ありがとう。
第3版出てますか?
だったら訳書出るまで待ったほうが良いよね。
0902デフォルトの名無しさん
2010/10/01(金) 23:26:490903デフォルトの名無しさん
2010/10/01(金) 23:28:32でも俺はSQLを書く方が好き
0904デフォルトの名無しさん
2010/10/01(金) 23:39:53factoryパターンの例題としてならば十分意味がある
0905デフォルトの名無しさん
2010/10/02(土) 00:00:210906デフォルトの名無しさん
2010/10/02(土) 01:04:01元々JPA使ってたから苦労ほとんどなかった。
一部の型がうまく移行できなかったとかあったけど、1時間で解決したな。
0907デフォルトの名無しさん
2010/10/02(土) 01:05:150908デフォルトの名無しさん
2010/10/02(土) 01:16:270909デフォルトの名無しさん
2010/10/02(土) 01:24:360910デフォルトの名無しさん
2010/10/02(土) 09:23:38DB移行なんて無理
0911デフォルトの名無しさん
2010/10/02(土) 10:59:45でもさ、業務アプリケーションはスピード出すためにストアドばっかり使うよね
0912デフォルトの名無しさん
2010/10/02(土) 11:29:50スレ違いだけどmysql(community editionだと思うが)にライセンス問題なんて発生するの?
0913デフォルトの名無しさん
2010/10/02(土) 14:37:02ウチの会社でもmysqlもよく使われてたけど最近はほぼpostgres一本になった。
0914デフォルトの名無しさん
2010/10/02(土) 16:42:570915デフォルトの名無しさん
2010/10/02(土) 17:17:410916デフォルトの名無しさん
2010/10/02(土) 20:57:52画面遷移を伴わないブラウザ-サーバ通信。
SwingからWebアプリに移ると、これが無いとやっていけん。
0917デフォルトの名無しさん
2010/10/03(日) 00:07:31そう?1テーブル1億レコード程度までなら、普通にJavaから実行している。
APサーバとDBサーバの間の帯域がダメダメな場合は、ひょっとしたらストアドプロシージャつかうかもだけど。
帯域がちゃんとしている場合ってそんなに処理スピードかわるの?
0918デフォルトの名無しさん
2010/10/03(日) 00:17:59完全に時代遅れ
0919デフォルトの名無しさん
2010/10/03(日) 00:22:47Oracleになったことでどんなライセンス問題が発生するの?
0920デフォルトの名無しさん
2010/10/03(日) 01:04:04フリー版が無くなる可能性がある。
0921デフォルトの名無しさん
2010/10/03(日) 07:53:45ライセンス問題ってのは違うよね。
今使ってるフリー版が使えなくなるわけじゃなし。
0922デフォルトの名無しさん
2010/10/03(日) 08:01:15Javaコミュニティそのものを攻撃しているというのは全くのデマ。
むしろOracleはSun以上にJavaFXを発展させる意思があるから、頼もしいくらいだよ。
SpringSourceの人が言ってるが「Oracleは信頼されていない」ってのは克服すべきだけど。
0923デフォルトの名無しさん
2010/10/03(日) 09:16:090924デフォルトの名無しさん
2010/10/03(日) 16:37:190925デフォルトの名無しさん
2010/10/03(日) 16:52:060926デフォルトの名無しさん
2010/10/03(日) 17:04:560927デフォルトの名無しさん
2010/10/03(日) 17:18:01たぶん気のせい
0928デフォルトの名無しさん
2010/10/03(日) 17:41:13前に質問してた人だよね?俺回答したと思うんだけど試した?
0929デフォルトの名無しさん
2010/10/03(日) 19:07:05Oracleはコミュニティなんか見てないだろ。
0930デフォルトの名無しさん
2010/10/03(日) 19:42:150931デフォルトの名無しさん
2010/10/03(日) 19:46:240932デフォルトの名無しさん
2010/10/03(日) 23:05:16ProcessBuilder pb = new ProcessBuilder("hoge.cmd");
Process process = pb.start();
この時に、プロント画面を表示させたいんだけど、何か方法あるでしょうか?
0933デフォルトの名無しさん
2010/10/04(月) 00:10:460934デフォルトの名無しさん
2010/10/04(月) 00:42:14こう、おもしろ用語がどんどん生まれるって、やっぱり向いてない人が
無理しなければならない状況がいっぱいなのかな?
0935デフォルトの名無しさん
2010/10/04(月) 01:11:52のように、引数1にキャストしたいクラス、引数2にキャストしたいオブジェクトを入れ
fooをクラスHogeにキャストしてくれるようなメソッドを作ることは出来ますか?
ジェネリクスを使えば出来そうかと思い、下記のようにしたのですが出来ませんでした。
public <T> T method(T _class,Object hoge){
return (T)hoge;
}
0936デフォルトの名無しさん
2010/10/04(月) 01:27:42ん、出来てるんじゃね。
0937デフォルトの名無しさん
2010/10/04(月) 01:35:31public <T> T method(T clazz, Object obj){
return clazz.cast(obj);
}
0938デフォルトの名無しさん
2010/10/04(月) 03:34:48T clazzじゃなくてClass<T> clazzだな。
0940デフォルトの名無しさん
2010/10/04(月) 08:31:270941デフォルトの名無しさん
2010/10/04(月) 08:33:320942デフォルトの名無しさん
2010/10/04(月) 09:27:530943デフォルトの名無しさん
2010/10/04(月) 09:30:37crassはクレイスになるけど日本人的なのに
とか>>942を見て思った
0944デフォルトの名無しさん
2010/10/04(月) 10:05:390945デフォルトの名無しさん
2010/10/04(月) 10:39:470946デフォルトの名無しさん
2010/10/04(月) 11:57:270947デフォルトの名無しさん
2010/10/04(月) 12:09:200948デフォルトの名無しさん
2010/10/04(月) 12:54:510949デフォルトの名無しさん
2010/10/04(月) 14:20:52実質何の意味もないよそれ
(Hoge)(Object)foo と同じ
0950デフォルトの名無しさん
2010/10/04(月) 14:29:020951デフォルトの名無しさん
2010/10/04(月) 15:49:01何でも混合モードというものに引っかかったらしいです。
アプレット用のjarは自身のキーで署名しましたが、ライブラリjarは署名していないため、この形態は危険だっと認識されたようです。
アプレットの設定でこれを警告にしない設定をすれば回避できますが、
この設定をせずに、警告を出さず署名済みアプレットでapache-commons系のライブラリを使用させることは出来るでしょうか?
0952デフォルトの名無しさん
2010/10/04(月) 20:56:000953デフォルトの名無しさん
2010/10/05(火) 10:32:28同じキーで署名したのですが、警告ダイアログは依然出てしまいます。
ライブラリを全て解凍し、アプレット用のjarひとつにまとめましたが、それでも警告が出ます。
0954デフォルトの名無しさん
2010/10/05(火) 11:46:24マニフェストファイルに何か書けっていうの見つけたよ。
ttp://download.oracle.com/javase/6/docs/technotes/guides/jweb/mixed_code.html
0955デフォルトの名無しさん
2010/10/05(火) 13:35:43このプログラムの画面のサイズを変更するのはどうしたらいいんでしょうか?
0956デフォルトの名無しさん
2010/10/05(火) 13:45:17たしか、この部分をアプレットのテスト実行機能(appletviewer.exe)が読んでる。
実際にWebページに貼り付ける時と同じサイズにしとこう。
0957デフォルトの名無しさん
2010/10/05(火) 13:51:01widthとheightの数値を変えればいいのですか?
0958デフォルトの名無しさん
2010/10/05(火) 13:53:26あ。html側の設定を変えたらよかったんですね。理解しました.
ありがとうございます
0959デフォルトの名無しさん
2010/10/05(火) 13:53:54Javaの初心者はともかく、質問の初心者はお断り。
0960デフォルトの名無しさん
2010/10/05(火) 14:20:190961デフォルトの名無しさん
2010/10/05(火) 17:01:53イメージとしては
Item → Item
メモ
重要度
のようにダブルクリックで項目が展開されるものです。
0962デフォルトの名無しさん
2010/10/05(火) 17:06:460963デフォルトの名無しさん
2010/10/05(火) 17:18:050964デフォルトの名無しさん
2010/10/05(火) 19:31:04コンストラクタの引数にthisが入ってる場合、これって何を指してるのでしょうか。
Test t = new Test(this);
0965デフォルトの名無しさん
2010/10/05(火) 19:32:240966デフォルトの名無しさん
2010/10/05(火) 19:55:13下の場合、HomeAppliのインスタンスを引っ張ってきてるってことで良いのでしょうか。
public class HomeAppli {
MList nameList;
public void start() {
nameList = new MList(this);
}
}
0967デフォルトの名無しさん
2010/10/05(火) 20:17:160968デフォルトの名無しさん
2010/10/05(火) 20:47:540969デフォルトの名無しさん
2010/10/05(火) 21:11:58start()はHomeAppliクラスのインスタンスメソッドだから、
それを呼び出すためにはHomeAppliのインスタンスが必要。
new MList(this)のthisはそのstart()を呼び出すのに利用したインスタンスへの参照を表す。
0970デフォルトの名無しさん
2010/10/05(火) 21:13:15ちゃんと調べてたら>>966の通りで合ってました。
しかし、携帯アプリのソースコードは煩雑で読みにくい・・・。
(サンプルソースがクソなだけなのかもしれませんが。)
0971デフォルトの名無しさん
2010/10/05(火) 21:14:23おまえの糞はこんがり臭そうだ
0972デフォルトの名無しさん
2010/10/05(火) 21:19:330973デフォルトの名無しさん
2010/10/05(火) 23:14:45日本語で
0974デフォルトの名無しさん
2010/10/05(火) 23:54:50>>963
IDは変わってしまいましたがありがとうございます!
JTreeというものがあるんですね・・・当方javaを始めたばかりで知らないクラスばかりでした。
早速試してみます!本当にありがとうございました!
0975デフォルトの名無しさん
2010/10/06(水) 00:36:210976デフォルトの名無しさん
2010/10/06(水) 00:53:09http://download.java.net/javadesktop/swingset3/SwingSet3.jnlp
0977デフォルトの名無しさん
2010/10/06(水) 11:18:200978デフォルトの名無しさん
2010/10/06(水) 11:20:52確かに携帯Javaは速度出すためにクラス数制限して可読性損なったりするけど
お前さんの場合は多分勉強不足よ
0979デフォルトの名無しさん
2010/10/06(水) 12:00:480980デフォルトの名無しさん
2010/10/06(水) 12:05:37}
で判断できない?
何か悪い設計してそうだ。
0981デフォルトの名無しさん
2010/10/06(水) 12:13:24}
0982デフォルトの名無しさん
2010/10/06(水) 12:55:17気持ち悪いです
0983デフォルトの名無しさん
2010/10/06(水) 13:16:08finalはコンストラクタ内の変数操作を許すから、constとは違うけどね。
0984デフォルトの名無しさん
2010/10/06(水) 13:42:56したのメソッドを実行してふと考え込んでしまった…
new String[]{"aaa", "bbb"}.getClass().getDeclaredConstructors(); → 空
new String[]{"aaa", "bbb"}.getClass().getDeclaredFields(); → 空
new String[]{"aaa", "bbb"}.getClass().getDeclaredMethods(); → 空
0985デフォルトの名無しさん
2010/10/06(水) 13:48:120986デフォルトの名無しさん
2010/10/06(水) 13:50:46はっきり言って邪魔です
0987デフォルトの名無しさん
2010/10/06(水) 13:53:190988デフォルトの名無しさん
2010/10/06(水) 14:10:15「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
以外の質問は控えてください
0989デフォルトの名無しさん
2010/10/06(水) 14:49:31ちなみに、配列のオーバフローをチェックするに当たるメソッドがgetDeclaredMethodsで出てくると思って期待していたんですが…
0990デフォルトの名無しさん
2010/10/06(水) 15:13:44おまえはなにさまのつもりだ
0991デフォルトの名無しさん
2010/10/06(水) 15:19:06getDeclaredFields()で配列のlengthが取れないほうが問題のような気もするが。
0992デフォルトの名無しさん
2010/10/06(水) 15:30:300993デフォルトの名無しさん
2010/10/06(水) 16:02:290994デフォルトの名無しさん
2010/10/06(水) 16:13:46http://java.sun.com/docs/books/jls/third_edition/html/arrays.html#64347
> The public final field length, which contains the number of components of the array (length may be positive or zero).
0995デフォルトの名無しさん
2010/10/06(水) 16:19:26それで年収いくらになるんですか?
0996デフォルトの名無しさん
2010/10/06(水) 16:20:160997デフォルトの名無しさん
2010/10/06(水) 16:32:04こんなアプリもあるんですね・・・ソースコードも載っているのでとてもためになります!
ありがとうございます!
0998デフォルトの名無しさん
2010/10/06(水) 16:42:200999デフォルトの名無しさん
2010/10/06(水) 16:44:231000デフォルトの名無しさん
2010/10/06(水) 16:45:2010011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。