[表示 : 全て 最新50 1-99 101-200 201-300 301-400 401-500 501-600 601-700 701-800 801-900 901-1000 2chのread.cgiへ]
Update time : 02/20 08:23 / Filesize : 263 KB / Number-of Response : 974
[このスレッドを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]
JAVAならおれに聞け!
- 1 名前:ビル・ジョブス mailto:sage [2005/12/27(火) 07:00:03 ]
- おれはこの3年間必死にJAVAを勉強してきた。
実際クソみたいな言語仕様だが改良に改良を重ねた1.5はチト使える。
よって、まともな言語としての扱いを受けるスタートラインにやっと立ったと言える。
JDK依存した質問はバージョン明記するように。
- 2 名前:デフォルトの名無しさん mailto:sage [2005/12/27(火) 07:10:29 ]
- リテラル文字列同士の’+’演算子での結合って、StringBuffer.Append()動くの?
なぜ、JAVA言語にはリテラル文字列のコンパイル時連結機能が無いの?
’+’がとってもウザイのだが・・。
- 3 名前:デフォルトの名無しさん [2005/12/27(火) 07:22:00 ]
- +か、下らん事に悩んでるより、他に勉強することあるでしょ?
- 4 名前:ビル・ジョブス mailto:age [2005/12/27(火) 07:27:05 ]
- 動く。
高速化したいならstatic final Stringで、プラス隠蔽したいならメソッド内で
final Stringで高速かつエレガント。逆に言うとstaticメソッド以外なら、
メソッド内ではリテラルにfinal付けなきゃ駄目って事。
で、リテラル文字列同士の+演算子って処理速いから気にするな。間違ってもconcat()や
append()使って書くなよ。見難いし醜いから。
リテラル文字列の連結機能うんぬんについては、言語仕様的に考えるとJAVAが正しいかもしれない。
なぜならC系のリテラルは+無しで連結できて変数は連結できないというのも少し引っかかる。
まぁ+がウザイのはJAVAだからって事で許してやれ。
- 5 名前:デフォルトの名無しさん mailto:sage [2005/12/27(火) 11:00:48 ]
- unsigned とか const が java に導入される日は来るの?
- 6 名前:デフォルトの名無しさん mailto:sage [2005/12/27(火) 21:59:44 ]
- unsigned は導入されることはない。
for(unsigned int i = 10; i >= 0; i--) {
}
とかアフォなコードを書く奴対策らしいぞ。
- 7 名前:デフォルトの名無しさん mailto:sage [2005/12/28(水) 03:10:07 ]
- constほすい(´・ω・`)
- 8 名前:ビル・ジョブス [2005/12/28(水) 04:41:42 ]
- constは別の用途に予約されているような。。
- 9 名前:デフォルトの名無しさん mailto:sage [2005/12/28(水) 08:47:19 ]
- メソッドのconstもほすい(´・ω・`)
- 10 名前:デフォルトの名無しさん [2005/12/29(木) 12:20:52 ]
- >>1
”改良に改良を・・”ってところがフリー(=無責任)のJAVAらしくていいね。
- 11 名前:デフォルトの名無しさん [2005/12/29(木) 19:14:02 ]
- あと、”推奨されません”ってなんだよいったい。
- 12 名前:デフォルトの名無しさん [2005/12/29(木) 19:50:32 ]
- JAVA VMがメモリを食いまくっていますがなんとかならないのでしょうか?
256MBとか簡単に使っているのですが、どう考えても尋常じゃないです。
- 13 名前:デフォルトの名無しさん mailto:sage [2005/12/29(木) 20:08:41 ]
- 全部大文字(゚д゚)
- 14 名前:ビル・ジョブス [2005/12/29(木) 20:19:01 ]
- Windows前提なら、わざわざインタプリタのJAVAではなく、
素直にC#使えって事です。
- 15 名前:デフォルトの名無しさん mailto:sage [2005/12/29(木) 20:35:05 ]
- そうなんだよ。
どうせwindowsなのに、あえてJAVA使ったら逆にCPUパワーロスしているようなもんだよ。
linuxなんて一生使わない人かなり多いと思うし。
- 16 名前:デフォルトの名無しさん [2005/12/29(木) 23:40:30 ]
- インタプリタで、プリン食べたい!
動的コンパイルで、疲労困憊!
動的クラスローディングで、ロードホイールディング最高!
結局CPUが蛇場バイトコードを直接実行出来る日が来るまでダメ
- 17 名前:JAVAの強みは mailto:sage [2005/12/29(木) 23:50:19 ]
- マルチプラットフォームに対応していることだけか?
- 18 名前:デフォルトの名無しさん [2005/12/30(金) 01:23:47 ]
- あなたたちはJavaで何をしたいんでしょうか?
Javaの強みを良く考えてからスレ立てしれ。
コノアフォドモガ
- 19 名前:デフォルトの名無しさん [2005/12/30(金) 05:30:29 ]
- RMIでConnection refused to host:192.168.0.2ってエラーが出ちゃいます。どうしたらいいですかね?
- 20 名前:デフォルトの名無しさん [2005/12/30(金) 06:20:35 ]
- やりなおせ
- 21 名前:デフォルトの名無しさん mailto:sage [2005/12/30(金) 12:09:52 ]
-
「ばあちゃん?おれおれ。
事故ったから30万な。
ナ メ た マ ネ す ん な よ。
ごめんね。よろしくね」
- 22 名前:デフォルトの名無しさん [2005/12/30(金) 22:03:10 ]
- >>18
どこがJavaの強みなのか、まずはあなたが説明してください。
- 23 名前:デフォルトの名無しさん mailto:sage [2005/12/30(金) 22:04:42 ]
- >>22
ひたすら重いこと。w
- 24 名前:デフォルトの名無しさん [2005/12/30(金) 23:18:00 ]
- >>22
Javaの強みはJ2EE。
>>23
サーブレット開発言語としてのJavaとはまったく関係ない。
- 25 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 00:48:50 ]
- >>9
つprivate final String a;
つpublic set(final int x){
//(ry
}
- 26 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 10:23:47 ]
- >>9が言いたいのは、メソッドでC++みたいにインスタンスのconstリファレンスを返したいということじゃないだろうか
- 27 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 11:41:19 ]
- 俺漏れ
void method() const { }
この const が欲しいよう欲しいよう
このメソッドを使っても、インスタンスの中身は変化しないという安心感!!(゚д゚)シメジ!!
あーそしたら今度は mutable が欲しいとか言い出したりして。。。
つ Immutable パターン
- 28 名前:デフォルトの名無しさん [2005/12/31(土) 18:54:42 ]
- javaで固定番地(I/Oポートとか)へのアクセスってどうやるの?
- 29 名前:デフォルトの名無しさん [2005/12/31(土) 19:28:11 ]
- 正直、JAVAでは中国と戦えないと思う。
- 30 名前:デフォルトの名無しさん [2005/12/31(土) 20:37:44 ]
- 中国と言えば・・
近未来、フリーウェアが中国にとって最大の武器になるよ。
きっとSUNのJVMを超えるVM作ってくるよ。さっさとソースは隠蔽しないと・・。
もう日本人はダメだ、そういうCreativeな精神が無いし、他力本願、
真っ先に”批判(非難)”する事から物事考え始めるから。
- 31 名前:デフォルトの名無しさん [2005/12/31(土) 21:45:09 ]
- > もう日本人はダメだ、そういうCreativeな精神が無いし、他力本願、
> 真っ先に”批判(非難)”する事から物事考え始めるから。
最近は、日本人もCreativeだし自力でやりだしてるし、そういうことの成果が見え始めてるといわれてるわけだが。
ダメだったりCreativeな精神がなかったり、他力本願だったり真っ先に”批判(非難)”する事から物事考え始めてるのはお前だろ。
日本人の性質にしないでくれ。
- 32 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 22:18:29 ]
- しかし自力でやるよりは、既にあるものを利用する方が
信頼性が高いっつーのは事実な。
OS作ってるひげぽんが、slashdotに巣くってる奴らから叩かれているのは
ひげぽんとその周囲の人間が、多大な時間を無駄にしているからだ。
決して「2ch憎し」で叩いてるんじゃないんだよ。
- 33 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 23:22:52 ]
- 短期的な成果に結びつかない作業にOKださない上司は多いな。
まあ、中間管理職には権限ないし、上のほうはソモソモ興味ないからな。
ITITいいながら実は全然興味ない馬鹿幹部ばっかり。
- 34 名前:デフォルトの名無しさん mailto:sage [2006/01/01(日) 01:34:49 ]
- >>28
JNI
- 35 名前:デフォルトの名無しさん mailto:sage [2006/01/01(日) 10:24:57 ]
- げんなりする回答キター!!
- 36 名前:デフォルトの名無しさん [2006/01/01(日) 13:09:10 ]
- >>31
>最近は、日本人もCreativeだし自力でやりだしてるし、そういうことの成果が見え始めてるといわれてるわけだが。
どこが?詳しく教えてくれ。自画自賛だったりして。
おれも日本人だが海外に住んでいる、日本人にはそういう力は無いと断言する。
国民の90%以上がまともに英語すら喋れない島国根性丸出しの国で、世界に通用するフレームワークの1つでも作れるのか?
WEB系のIDEだってみんなECLIPSE(チト改)を偉そうに製品化しているよな?
日本国民は素晴らしいとか、世界第二位の経済大国とか、鼻で笑っちゃうような自慢するなよ。諸外国は日本と言う国に対して
そんな印象は持っていないぞ。確かに車やSONY以外の家電の信頼性は高い。
しかし日本人は「仕事するために生きている民族で、生きるために仕事をしているわけではない」つまり、人間ではないと思われている。
良い製品を作ってくれる、単なる物的製造国家ありがとう。ってな感じ。
日本人に対しての敬意や尊敬など全くと言っていいほどこの世には存在しない。
英語くらい話せるようになってから、能書きたれろ。そして勘違いもいい加減にしろ。
- 37 名前:デフォルトの名無しさん [2006/01/01(日) 15:13:00 ]
- >SONY以外の家電の信頼性は高い
禿
- 38 名前:デフォルトの名無しさん mailto:sage [2006/01/01(日) 17:22:28 ]
- >>36
まあまあ同意。他国からすれば、東の果てにある工場、なんでしょうな。
しかし、読みづらいよ。もうちょっと短くまとめるか、改行はさんでてくれるとありがたかった。
- 39 名前:仕様書無しさん [2006/01/01(日) 18:23:07 ]
- JDBC関連の本が意外にないのですが、良書ないでしょうか。
密林でみたかぎりはどうも古い年代のしかないようです。
- 40 名前:デフォルトの名無しさん mailto:sage [2006/01/01(日) 22:27:10 ]
- >>39
そりゃそうでしょう。今ごろJDBCを直接使うことなんてありませんから。
- 41 名前:仕様書無しさん [2006/01/01(日) 23:33:08 ]
- え、どういうこと?JDBC以外にもDBにアクセスする方法が
JAVAにはあるということですか?
- 42 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 01:27:58 ]
- 正直、SQLなんていまどき書いてられない!って
面倒くさがりが多すぎるんでO/Rマッパが流行ってる
- 43 名前:デフォルトの名無しさん [2006/01/02(月) 03:23:03 ]
- 確かに言語から文字列で渡すSQL文って、いい加減勘弁してほしいね。
SQLって言語仕様として取り入れるべきなんだよな。
表情報なんかもコンパイラがDBに取りに行くべきなんですよ。
- 44 名前:デフォルトの名無しさん [2006/01/02(月) 03:34:14 ]
- 皆さん表の項目名は当然日本語ですよね?
- 45 名前:デフォルトの名無しさん [2006/01/02(月) 05:55:50 ]
- 43>>
まぁ、そうだけど、どのみち、複雑なSQL文はマッパじゃ無理じゃねぇ。
つか、マッパまでいかないにしても、JDBCのデータセット??レコードセット??
って更新されたレコードを元に自動的にSQL文って組み立ててくれんのか??
.NETならデータセットとデータアダプターが自動的にSQL文組み立てて発行してくれるが、
それだけでも、とりあえずは十分なんだが。
- 46 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 06:59:27 ]
- >>45
既存システムからの移行なら複雑なSQLもあるかもしれないけど。
新規なら、O/RマッパやコンテナのCMP/CMRの機能に合わせて、DB設計しちゃう。
ようするに、オブジェクトの永続化に問題なければいいわけだから。
- 47 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 09:17:01 ]
- sql.select(hoge).from(hage).where(fuga);
- 48 名前:デフォルトの名無しさん [2006/01/02(月) 10:19:27 ]
- >>47
惜しい98点。
ResultSet rs = stmt.sql.from(hoge).select(pugya, agya).where(papa).equals(mama).orderBy(agya);
少し複雑なタイプのsqlの場合は、
rs = stmt.sql.from(family).select(son, papa, mama).startWith(papa)sqlEquals(hage).connectByPrior(son).sqlEquals(papa).sibilingsBy(son);
こんな感じでいけるよな?from()を先に持ってきているのは、select(でインテリ利かすため。
だれか作ってくれ。でも多重継承しないと難しいかも。
それか、sql文字列文を作るクラスでもいいと思うが・・鬱
そうだ!各DBベンダに頼めばいいんだお!
- 49 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 11:30:07 ]
- SQL文字列を構築するクラスライブラリなら作ったことあるよ。
あまり本格的にするつもりなかったから、DB構造のオブジェクト化まではしなかったけど、
そんなに工数はかからなかった。
>>48の最初の例くらいなら、すぐに作れるでしょ。
- 50 名前:デフォルトの名無しさん [2006/01/02(月) 11:31:30 ]
- javaに3Dライブラリってありますか?
PS2程度の性能で十分なのでjavaで色々と出来ないかなと考えてます。
- 51 名前:デフォルトの名無しさん [2006/01/02(月) 11:35:23 ]
- >select(でインテリ利かすため
う〜ん、どっちかって言うと、おれはドットでフィールド一覧出てきて欲しい。
テーブル名毎回入力するのだけはカンベン。修飾すればいいのか・・。
- 52 名前:デフォルトの名無しさん [2006/01/02(月) 11:40:34 ]
- Visual Studio C#/C++/J# Expressだけならまだしも、
SQL Serverまで無償配布かよMS!
こりゃ、2006はMSの天下決定だな。
- 53 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 12:41:58 ]
- >>50
ありますよ。てか、JavaやるならSunのサイトぐらいチェックしなさいよ。
つttp://java.sun.com/products/java-media/3D/index.jsp
- 54 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 15:58:36 ]
- 無償のSQL Serverったって、中身はMSDE2005なわけで、
これは正直MSの名前替え戦略の勝利だな。
- 55 名前:デフォルトの名無しさん mailto:sage [2006/01/02(月) 19:05:12 ]
- ものは言いようの世界ってことだね
- 56 名前:デフォルトの名無しさん [2006/01/03(火) 12:44:37 ]
- つうかこのスレッドのやつらって素人だろ
- 57 名前:デフォルトの名無しさん [2006/01/03(火) 17:12:23 ]
- しっかりageて、そんな事言わなくても・・で、age。
- 58 名前:デフォルトの名無しさん mailto:sage [2006/01/03(火) 17:32:07 ]
- >>50
Java 3D API
- 59 名前:デフォルトの名無しさん mailto:sage [2006/01/03(火) 17:36:14 ]
- >>49
バイト先で差、先陣の学生アルバイトが作って就職して去っていった
ときに残ったソースコードに、独自のクエリ構築クラスを
作ってるのがあったが、確かにある程度までは使いやすかったが、
fromの前の句、from句、where句それぞれのクラスを作っていたが
どうも中途半端で。それらから内部で文字列連結をするものだったが、
max()やasなど細かいことがやりづらいのが難点だった。副問い合わせもinもjoinもunionも
中途半端。
ほかにも、メソッド引数にいちいち型変数を渡すとか二度手間が多いこと、などには代わりなかったよ。
率直にHibernate使って欲しかったな、と思った。
- 60 名前:デフォルトの名無しさん mailto:sage [2006/01/03(火) 17:39:10 ]
- >>52
Oracleだって無償版あるけど。
SQLServerよりもOracleのほうが信頼と実績があって高機能だし。
オープンソースのPostgreSQL8.1もなめちゃいけないよ。
あれも高性能高機能。恐るべしというところか。
そのSQLServer無償配布というのがVS.NET Expressのように一年間限定でなければいいけど。
- 61 名前:java [2006/01/06(金) 02:25:08 ]
- すみません、聞きたいことがあります。
MouseEventでjavaアプレットを起動しているのですが
そのアプレット内にあるActionEventが実行されません。
何が原因なのでしょうか?
ActionEventのみで作ったプログラムは動きます。
よろしくおねがいします。
- 62 名前:デフォルトの名無しさん [2006/01/06(金) 03:45:10 ]
- >Oracleだって無償版あるけど。
これ、使ってみたけど、何か処理が遅すぎるんだよね。なんか、遅くなるよう細工してるのかな?
>オープンソースのPostgreSQL8.1もなめちゃいけないよ。
>あれも高性能高機能。恐るべしというところか
そうなんだけど、なぜ、世の中はMySQLなんだ??
PostgreSQLは日本で一番はやっていると聞いたが。
>Visual Studio C#/C++/J# Expressだけならまだしも、
>SQL Serverまで無償配布かよMS!
>こりゃ、2006はMSの天下決定だな。
まぁ、これは消費者のせいだな。Officeから何でもMicrosoftの製品
買うから、独占がどんどん強くなって、高価格と言う弊害が出る。
俺を含めた消費者の自業自得
- 63 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 08:38:07 ]
- >>61
マルチ乙
- 64 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 08:40:46 ]
- >>62
時代がまだ一太郎+123だった頃の独禁法違反は無視ですかそうですか
- 65 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 09:12:12 ]
- >>62 PostgreSQLはSunがサポートするようになったからこれからじゃない?
MySQLは速度重視という絶対的なポジションがあったからね
ただ色気づいて機能追加していった時に今まで通り速いのかは知らね
- 66 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 10:03:36 ]
- staticメソッドをインスタンスからどうしても呼ばなければならないときに、
呼んでも特に影響はないでしょうか?
- 67 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 10:22:05 ]
- >>65
MySQLは機能追加して速くなくなったものと今まで通り速いものをテーブルごとに切り替えられる。
PostgreSQLは普及期にWindows対応してなかったのが痛い。
日本の場合トランザクションにこだわるのでPostgreSQLが広まったけど。
- 68 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 10:22:44 ]
- >>66
Integer.parseIntとか、普通に呼び出すだろ。
- 69 名前:デフォルトの名無しさん [2006/01/06(金) 12:00:52 ]
- MouseEvent内でActionEventを実行しても、イベントキューのせいでActionEventが実行されません。
この難問を解ける方いませんか?
- 70 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 12:20:33 ]
- >>68
Integer.parseIntがstaticですかそうですか
- 71 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 12:46:20 ]
- >>70
何か疑問でも?
- 72 名前:デフォルトの名無しさん [2006/01/06(金) 13:04:05 ]
- 現在、J2SEv1.4.2_10にて電卓プログラムを作成中なのですが、
小数点以下の桁数が多い演算で困っています。
BigDecimalクラスのメソッドを使って計算しているのですが、
例えば、0.00000000001 + 0.00000000001 の計算結果が
2E-11 と常用対数(?)で表示されてしまいます。
この計算を 0.00000000002 と表示させる方法はあるのでしょうか?
v5.0ではString.format()メソッドを使えばよさそうなんですが、
v1.4.2_10でできる方法があれば、どなたか教えて頂けないでしょうか?
よろしくお願いいたします。
- 73 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 13:18:23 ]
- >>72
1.4.2だと普通に0.00000000002にならないか?
import java.math.BigDecimal;
public class BigDecimalTest {
public static void main(String[] args) {
BigDecimal b1 = new BigDecimal("0.00000000001");
BigDecimal b2 = b1.add(b1);
System.out.println(b2);
}
}
参考
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/math/BigDecimal.html#toPlainString()
- 74 名前:72 [2006/01/06(金) 13:32:02 ]
- 上のコードを実行してみたところ、やはり
2E-11
と表示されてしまいました・・・。
- 75 名前:デフォルトの名無しさん mailto:sage [2006/01/06(金) 13:35:34 ]
- >>74
1.5で実行してない?
- 76 名前:72 [2006/01/06(金) 13:58:40 ]
- 1.5で実行していました・・・。
大変お騒がせいたしました・・・。
- 77 名前:デフォルトの名無しさん [2006/01/06(金) 21:11:57 ]
- 質問いいですか?
JAVAから別のJAVAを実行させるにはどうすればいいのでしょうか?
- 78 名前:デフォルトの名無しさん mailto:sage [2006/01/07(土) 05:22:18 ]
- すみません
解決しました
- 79 名前:デフォルトの名無しさん mailto:sage [2006/01/07(土) 16:35:24 ]
- >>78
は私じゃないです
勝手に解決されるとこまります
まだなので教えてください
- 80 名前:プログラマーの卵 [2006/01/09(月) 15:28:52 ]
- JavaとposgreSQLを勉強してるものです。
あの〜、JSPサーブレットとかアプレットできないとJavaの仕事としてなりたたないものですか?
あと就職が近いのにうまくプログラムが組めないんでいるんですが、就職したらどうにかなりますか?
- 81 名前:デフォルトの名無しさん mailto:sage [2006/01/09(月) 15:35:10 ]
- 心配しなくても寝る間もなく働かされるから大丈夫だ。
そういう作業を続けてたら、そのうちどうにかなる。
- 82 名前:デフォルトの名無しさん mailto:sage [2006/01/10(火) 11:03:00 ]
- コンストラクターを定義しないと親クラスのコンストラクターが呼ばれますが
これは普通に継承しているからという仕組みなのでしょうか。
- 83 名前:デフォルトの名無しさん mailto:sage [2006/01/10(火) 15:03:53 ]
- コンストラクタを定義しないと
public Hoge(){
super();
}
というコンストラクタが定義される。
- 84 名前:デフォルトの名無しさん mailto:sage [2006/01/10(火) 22:49:39 ]
- >>80
おまえみたいな香具師がバグだらけのプログラム書いて周りに迷惑掛けるんだよ
こっちの世界にくんな
- 85 名前:デフォルトの名無しさん mailto:sage [2006/01/11(水) 14:14:15 ]
- >>80
・JSPサーブレットなどは存在しない。JSPとサーブレットは分けなさい。
・勉強途中で断念するくらいなら別の道に進みなさい。
・勉強は死ぬまで、少なくとも退職するまで続くものと思いなさい。
・就職しただけではどうにもならない。
・世の中のシステムはJavaだけで構成されるものではない。
・そもそもプログラミングだけでは食べていけない。企画立案・要件定義・設計・運用も考えなさい。
以上がいやならこっちにこないでください。お互い、不幸になるだけです。
- 86 名前:異端 A [2006/01/11(水) 23:31:09 ]
- JAVAでゲームを作っているものです。
JAVAがはじめてのプログラミングでそれで最初のプログラムがゲームだなんて
無謀かと思いましたが、案外何とかなりそうです。
初めて組んだプログラムが動き出した時はとても感動しました。
そこで質問なんですが、もしこの業界でプログラムをやっていく場合
これからもずっとその感動というものは味わえるのでしょうか?
プログラマーは苦労に対して喜びが小さいとよく聞くので心配です。
- 87 名前:デフォルトの名無しさん mailto:sage [2006/01/11(水) 23:53:08 ]
- >>86
まとめ売りの内のひとりになると、言われた作業をこなすだけになるから楽しくない。
言われた作業自体が見当違いってことも多いしな。
突出した力を持ち続けれれば、プログラムはいつまでもずっと楽しい。
- 88 名前:デフォルトの名無しさん mailto:sage [2006/01/12(木) 00:50:40 ]
- >>86
業務系の全てがそうだとは言い切れないけど、少なくともうちとこではコーディング
してる時間は思いの他短い。
一日中キーボードを叩き、日々プログラミングを学び続けるという姿を想像してるの
だとしたら、現実はそれとは大きく違う。
1日の半分くらいはミーティングとドキュメンテーションを行ってて、残りの時間でコ
ーディングしてるといった感じ。
ミーティングは数人規模でのスタンディングミーティングが主で、これが面子を変え
ながら方々で繰り返し行われる。
ドキュメンテーションは技術的なものを想像すると思うけど、実際は社外折衝や社
内調整なんかの伝達事項も多く、一般にイメージされるプログラマの仕事とはかな
り毛色が違って見えると思う。
プログラミングに関しては、必要な所を必要な時に必要なだけしか学ばない。それ
はまるで、某自動車メーカーの在庫管理の様w
だから、特定分野に関しては非常に詳しいが、そこから外れると驚くほど何も知ら
ないという穴の空いた知識になりがち。
まぁ、会社ってのは意外と色んな仕事があるもんで、プログラマだからってプログ
ラミングだけやってるわけじゃないってこと。
てか、プログラミングしかできない様だと、35歳定年説とかが笑い話にならなくなる。
- 89 名前:異端 A [2006/01/12(木) 01:19:38 ]
- >>87
>>88
なるほど とても参考になりました。ありがとうございます。
プログラムだけで食っていく事は難しいんですね。感動も少ない。
いろんなそれに通ずる技術も身につけることにします。
- 90 名前:デフォルトの名無しさん mailto:sage [2006/01/12(木) 12:26:33 ]
- >>89
既に>>88さんが述べているけど、重要なのは対人折衝能力。これが苦手分野だと、イバラの道。
対人折衝能力があるなら、たいていの職業はこなせそうな気もするけど。
自分は苦手じゃなかったのにメンヘル板に出入りするようになってしまった負け組です。
- 91 名前:デフォルトの名無しさん mailto:sage [2006/01/13(金) 00:45:27 ]
- コーディングする時間って短いよね。
自分は大体こんな感覚だけど。
設計:コーディング:単体テスト=5:1:4
- 92 名前:デフォルトの名無しさん mailto:sage [2006/01/13(金) 16:09:31 ]
- プロセスIDやスレッドIDは取得することができるでしょうか?
- 93 名前:デフォルトの名無しさん mailto:sage [2006/01/13(金) 23:32:59 ]
- そんなの知ってどうすんだよ。
ビルゲイツぐらいのスーパーハッカーが01の集まりでプログラム組んで
やっと取れるかどうかってぐらいの難しいもんだぞ。
- 94 名前:デフォルトの名無しさん mailto:sage [2006/01/14(土) 00:23:07 ]
- VM内で管理しているスレッドIDなら取得可能。
OSネイティブなやつなら、ピュアJavaでは無理。
JNI経由でシステムコールを呼べば取得可能。
- 95 名前:92 mailto:sage [2006/01/14(土) 00:47:04 ]
- ありがとう、ゲイツ
- 96 名前:デフォルトの名無しさん mailto:sage [2006/01/14(土) 05:30:17 ]
- ここってネタすれ?
- 97 名前:デフォルトの名無しさん mailto:sage [2006/01/15(日) 14:23:52 ]
- ここはトリックだ!とか言わないよね?
- 98 名前:ビル・ジョブス [2006/01/16(月) 14:55:27 ]
- ここはネタスレでも、宿題スレでもない、質問があれば答える。
「JAVA言語について語る」ただそれだけ。
- 99 名前:デフォルトの名無しさん [2006/01/16(月) 15:51:06 ]
- JAVAアプリが動くとCPUキャッシュが死んでしまうほど無力化されてしまう。
そもそも、昨今のCPUはインタプリタ向けには作られていない。
それにJAVAもOSコードを利用する仕組みから動作のオーバーヘッドが大きすぎる。
さらにはGCそのものもJAVA−VMの仕事だが実際はOSに負荷をかけまくり。
なぜならJAVA−VMからも物理アドレスは見えないから。
JAVA−VMがコンパイルしたコード資産も仮想マシンの終了と共に消滅する。
よって、いくら高速なCPUを使用していてもJAVAを使う限り無駄があると言える。
- 100 名前:デフォルトの名無しさん mailto:sage [2006/01/16(月) 16:27:15 ]
- >>99
じゃあJava専用CPU作れば?
- 101 名前:デフォルトの名無しさん [2006/01/16(月) 21:26:55 ]
- あの…。javaでデッドレコニングする方法は
どうやるんでしょうか?
全くの初心者なので質問も大雑把ですいません。
- 102 名前:異端 A [2006/01/17(火) 22:00:59 ]
- すみません
MacOS9 にJAVACをいれる方法を教えてください。
もう本家ではサポートされていないんですか?
- 103 名前:デフォルトの名無しさん [2006/01/18(水) 12:06:00 ]
- Javaが遅いのはWINDOWS上のことであって、その他のプラットフォーム上ではそうでもありません。
私はLinuxでJavaを使っています。
速いとは言えませんが、十分使用に耐えるスピードです。
あとSWTですが、スピードに関してSWINGを遥かに凌ぐというのは風説であり、根拠がないと考えています。
遥かにという部分が間違いであり、若干速くなったというのが正確かと思います。
- 104 名前:デフォルトの名無しさん [2006/01/18(水) 12:52:34 ]
- Javaのバイトコードを、
SPARC互換にすればよかったんじゃないかなー
って、時々思う。
- 105 名前:デフォルトの名無しさん [2006/01/18(水) 16:28:15 ]
- JPopupMenu内にJComboBoxを組み込んでJComboBoxの項目を選択しても
JPopupMenuが消えないようにする方法を教えてください
- 106 名前:デフォルトの名無しさん [2006/01/19(木) 05:16:56 ]
- 慌てず急いで正確にな
- 107 名前:デフォルトの名無しさん mailto:sage [2006/01/19(木) 11:23:31 ]
- 真田さーん
- 108 名前:デフォルトの名無しさん mailto:sage [2006/01/19(木) 17:34:29 ]
- >>105
JPopupMenu内にJComboBoxを組み込むという発想そのものが間違いなのではないか?
JMenu を add して階層構造にすればいいのではないか?
- 109 名前:デフォルトの名無しさん mailto:sage [2006/01/20(金) 14:39:03 ]
- >>108
解答ありがとうございます
JPopupMenuが消えても機能的には問題ないんですが少し気になったもんで
複数のポップアップを同時に表示できればできそうなもんなんですが・・・
- 110 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 13:37:05 ]
- >>109
普通そういうのはサブメニューにしちゃうよね。
わざわざJComboBoxってことは、エントリ数がとてもとても多いってこと?
- 111 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 16:09:21 ]
- 文字指定された日付をDate型にしたく、
new Date("2005/10/10")としたのですが、使用すべきではありませんといわれました。
どうすればよろしいでしょうか。
- 112 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 19:42:21 ]
- 1行ずつファイル情報を読込む場合はどうすればよろしいでしょうか。
FileReaderにはread()しかみあたりません。
- 113 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 22:31:05 ]
- >>111
SimpleDateFormat を見よ。
>>112
BufferedReader を見よ。
- 114 名前:デフォルトの名無しさん mailto:sage [2006/02/03(金) 10:00:46 ]
- Propertiesクラスはマルチスレッド内でもうまく動くのでしょうか?
同じPropertiesインスタンスを持っているスレッドが複数有り、
同時にsetPropertyやstoreなどを呼び出しても問題ないでしょうか。
- 115 名前:デフォルトの名無しさん mailto:sage [2006/02/03(金) 12:39:51 ]
- >>114
Propertiesの親はHashtableだから最低限の同期は取るんじゃないですかね。
しかしそういう使い方はPropertiesというクラスに似合わない気がする。
- 116 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 15:53:38 ]
- 日付の演算はどうすればよろしいでしょうか。
1日後、1日前がわかりません。
- 117 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 15:58:55 ]
- Calendar.add
- 118 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 16:24:27 ]
- >>117
ありがとうございます。
遅くなりまして申し訳ございません。
日付情報から日付を生成しようと思っているのですが、
new Date("2005/10/10");をコンパイルすると
使用すべきではありませんと表示されます。
どうすればよろしいでしょうか。
- 119 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 20:52:03 ]
- >118
数レス前も読めんのかこのノータリン
- 120 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 15:50:20 ]
- javaの計算で
小数点切捨ては、 8/3
四捨五入は、Math.round(8.0/3)、
切り上げはどうすればよいでしょうか
- 121 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 21:30:55 ]
- >120 ceil
- 122 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 11:57:18 ]
- >>121
ありがとうございます。
通常、2/3だと答えがint型になって桁が切り捨てられますが、
小数点で結果を取得したい場合は、
2.0/3とすればよろしいでしょうか。
- 123 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 17:33:06 ]
- >>122
そう。但しその値を代入する場合は型が double か float でないと保持できない。
- 124 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 09:46:15 ]
- >>123
ありがとうございます。
Integer = Integer - int をしたい場合は
new Integer( Integer#intValue() - int ) でできましたが、
もっと簡単な方法はあるでしょうか。
- 125 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 11:10:35 ]
- >>124
Java SE 5 を使う
- 126 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 11:32:57 ]
- >>125
すいません。1.48を厳守されているので。
1.5だとそんなに簡単にできるのでしょうか?
- 127 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 13:10:28 ]
- 1.48とはなんのことやら。
ちなみに1.5でのことはttp://java.sun.com/j2se/1.5.0/ja/docs/ja/relnotes/features.htmlの
オートボクシング・アンボクシングでみてみるといいよ
- 128 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 01:33:18 ]
- >>126
Retroweaverを使う
- 129 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 19:46:45 ]
- 今日から100日後までの日付(dateもしくはlong)のデータをListとして使用したいのですが、
どうすればよろしいでしょうか。
- 130 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 19:51:21 ]
- >>129
自己レスです。
Calendar#rollがなんか使えそうです。
ただ、100日後はできそうですが、xxxx/xx/xxまではできないようです。
むずかしい・・・
- 131 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 00:07:40 ]
- つうか普通にforでまわせばいいじゃないか。
- 132 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 12:54:39 ]
- >>129-130
オブジェクトは秒(もしくはミリ秒)で管理して、取り出すときだけDateにする。
- 133 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 13:15:28 ]
- // 現在から100日
ArrayList al = new ArrayList();
Date d = new Date();
long t = d.getTime();
for (int i = 0; i < 100; i++, t += 60 * 60 * 24L)
al.add(new Date(t));
// 2つのCalendarインスタンス c1, c2 に開始、終了日時がセットされている場合。
ArrayList al = new ArrayList();
long t1 = c1.getTimeInMillis();
long t2 = c2.getTimeInMillis();
for (long t = t1; t <= t2; t += 60 * 60 * 24L)
al.add(new Date(t));
- 134 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 13:16:33 ]
- しまった! 閏秒を忘れていた!
- 135 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 13:42:04 ]
- あ、それ以前に>>133は大きな間違いをしているな。
見る人が見れば分かるから放置することにする。
初心者は自分で考えな。
- 136 名前:デフォルトの名無しさん mailto:sage [2006/02/23(木) 21:55:34 ]
- "Fri Feb 17 21:35:35 JST 2006"の文字情報から
Dateインスタンスを取得したいのですが
どうすればよいでしょうか?
- 137 名前:デフォルトの名無しさん mailto:sage [2006/02/23(木) 22:05:00 ]
- >>136
SimpleDateFormat でも使えば。
- 138 名前:デフォルトの名無しさん mailto:sage [2006/02/23(木) 22:24:49 ]
- >>137
SimpleDateFormat.getDateInstance().parse("2005/10/10 10:10:10")でエラーになってしまいました。
何がだめなのでしょうか?
- 139 名前:デフォルトの名無しさん mailto:sage [2006/02/24(金) 08:38:55 ]
- >>138
なんでgetDateInstanceすんだよ・・・
- 140 名前:デフォルトの名無しさん mailto:sage [2006/02/24(金) 09:49:51 ]
- >>139
すみません。よくわからずに使ってしまいました。
基本的な使い方がわかりません。
- 141 名前:デフォルトの名無しさん mailto:sage [2006/02/24(金) 16:59:01 ]
- >>140
でけた。
new SimpleDateFormat("yyyy-MM-dd").parse("2006-01-01")
- 142 名前:デフォルトの名無しさん mailto:sage [2006/02/24(金) 19:12:42 ]
- >>141
かんぺき
- 143 名前:デフォルトの名無しさん mailto:sage [2006/03/01(水) 16:32:17 ]
- HashMapのキー検索はhashcodeを使用しますが、
hashcodeの値が同じでも、クラスの型が違う場合は、値を取得できないのでしょうか。
実際やってみましたが取れませんでした。
コード
Map map = new HashMap();
map.put("a", "aaa");
System.out.println(map.get(new Integer(97)));
System.out.println("a".hashCode());
System.out.println(new Integer(97).hashCode());
結果
null
97
97
- 144 名前:デフォルトの名無しさん mailto:sage [2006/03/01(水) 23:38:22 ]
- 取れたら困るだろ。
- 145 名前:デフォルトの名無しさん mailto:sage [2006/03/02(木) 14:20:11 ]
- >>143
ハッシュ値は必ず重複することが分かっているので
ハッシュ値だけでデータを特定するなどということは
普通はしない。
- 146 名前:デフォルトの名無しさん mailto:sage [2006/03/02(木) 14:36:04 ]
- >>145
ありがとうございます。
ということは、ハッシュコードとクラスの型で判断しているということでしょうか?
- 147 名前:デフォルトの名無しさん mailto:sage [2006/03/02(木) 16:42:39 ]
- >>146
同一ハッシュで複数あったら equals() で全部比較しているのでは?
ソース読んだことないけど。
- 148 名前:デフォルトの名無しさん [2006/03/05(日) 09:51:52 ]
- ガベコレの一般的な話題(実装や手法)はどこでやったらいいかね?
- 149 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 13:56:17 ]
- ttp://pc8.2ch.net/test/read.cgi/tech/1135082582/l50
- 150 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 15:27:30 ]
- ども
- 151 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 16:39:07 ]
- 定数にプロパティの値を使用したい場合は、下記の通りしなければならないでしょうか。
private static Properties prop = null;
static{
try {
prop = new Properties();
prop.load(new FileInputStream("javahello.properties"));
}catch (Exception e) {
e.printStackTrace();
}
}
public static final String DATA = prop.getProperty("javahello.message");
- 152 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 20:36:31 ]
- JAVAを勉強しようと思ったのですが、質問があります。
JAVAってVisualVasicみたいに、ボタンを貼り付けて、それに動きを
与える様な事って出来るんですか?
書店の参考書とか見ても、DOSの画面での実行結果とかしか載ってないので...
どなたか教えてください。
- 153 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 21:40:16 ]
- >>152
できる。java 入門 GUI awt swingとかキーワードを適当に組み合わせて
検索してみて。
頑張ればこんな事もできるかも?
ttp://www.itmedia.co.jp/enterprise/articles/0407/01/news012.html
ttp://pcweb.mycom.co.jp/articles/2004/11/02/lg3d/
- 154 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 22:17:35 ]
- >>152
できるけど、その機能は言語そのものの機能ではない。
GUIソフトを作り易くするための補助的なツールだ。
- 155 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 22:22:26 ]
- >>152
この本でも読んでな。
http://www.amazon.co.jp/exec/obidos/ASIN/4839914826/
- 156 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 10:02:01 ]
- csvのファイル処理で、「\」でエスケープや、「"」「'」をうまく扱うようなクラスはあるでしょうか。
StringTokenizerはちょっと違うような気がして。
- 157 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 11:28:36 ]
- >>156
そういうクラスはないと思うなあ。あったかなあ?
まあ、簡単だから自作したら?
- 158 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 21:14:07 ]
- 配列のサイズ変更は可能でしょうか?
- 159 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 21:24:56 ]
- サイズの違う配列を作ってデータを積み替えるしかない。
- 160 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 09:49:06 ]
- >>159
ありがとうございます。
ということは、ArrayList#addは、追加されるたびに内部で配列を生成しなおしているのでしょうか?
- 161 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 10:33:31 ]
- >>159
for文でまわして、手動でやるしかないのでしょうか?
- 162 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 12:08:47 ]
- Javadocドキュメントとかソースとか提供されてるんだからさ、自分で調べようよ。
まあ「おれに聞け!」ってスレだから、しかたないけど。毎回2chで聞くわけにもいかないでしょ?
と、じじいの説教。
>>160
追加されるたびではなく、内部配列の容量を超えたとき、さらに追加されることも考慮して、ある程度の
余裕を持って拡大した配列を生成している。
>>161
System#arraycopyとか、配列をListにしてjava.util.Collections#copyとか、いろいろできる。
- 163 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 19:37:53 ]
- synchronized (resource) {
resource.xxx();
}
の場合、他のメソッドで
resource = yyy;
とすると、書込みはロックされないのでしょうか。
synchronized (resource) {
resource = yyy;
}
にするべきでしょうか。
- 164 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 21:34:58 ]
- >>163
他のメソッドというか、他のスレッドからそういうことをすればロックは掛からない。
というかロックはインスタンスに対して掛かっている。変数名に対して掛かっている
のではない。
- 165 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 09:53:24 ]
- >>164
ということは、メソッドをsynchronizedにしても、ロックの掛かり方は同じでしょうか?
また、インスタンスにロックということは、同じクラスにsynchronizedメソッドが2つあった場合、
その2つのロックは独立性はなく影響しあうということでしょうか。
- 166 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 18:14:22 ]
- >>165
> ということは、メソッドをsynchronizedにしても、
> ロックの掛かり方は同じでしょうか?
意味がわからん。何を聞いているんだ?
> また、インスタンスにロックということは、同じ
> クラスにsynchronizedメソッドが2つあった場合、
> その2つのロックは独立性はなく影響しあうという
> ことでしょうか。
synchronized メソッドというのは synchronized (this) {...}
のブロックの中に全処理が書かれたメソッドと同じだ。this が
同じならロックが掛かる。違えば関係がなくなる。
- 167 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 10:07:33 ]
- >>156
正規表現クラス使えばいいじゃん
- 168 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 15:47:52 ]
- >>167
CSVがうまく処理できるような正規表現おしえてくれないか?
- 169 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 20:51:13 ]
- そもそも、「CSVをうまく処理」するって具体的にどういうことに困っているのか分からない
- 170 名前:デフォルトの名無しさん [2006/03/14(火) 01:10:29 ]
- クラス設計について質問です。
仕事でサーバソケットデーモン機能を引き継ぎました。ちょうど製造の8合目辺りです。
受信したソケットの内容によってそれに対応するタスクが立ち上がるという機能で
タスクは1タスク1クラスで10本程。(+部品いくつか)
コードをちょっと眺めてなんだか難しいな、と思ったんですが。
タスクを一つ追加する事になり、なぜ難しいと感じたのかが分かりました。
タスク同士が継承し合っていたんですね。最深で8階層。こんな感じです。
<<@>>
ATask1
|
ATask2
|_______________
| |
ATask3 BTask1
|
BTask2
|
BTask3
|
- 171 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 01:20:23 ]
- 質問がないが、続きを書いてるのか?
- 172 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 01:21:00 ]
- まあ、1タスク1クラスというのが怪しいけどな。
- 173 名前:デフォルトの名無しさん [2006/03/14(火) 01:31:50 ]
- タスク、というレイヤは
それぞれ同じレベル。
横並び(ピラミッド)型が自然では、
と思うんです。こんな感じに
Task
|
----------
| |
ATask BTask
| |
-------- ---------
| | | | | |
ATask1A…2A…3 B…1 B…2 B…3
- 174 名前:170 [2006/03/14(火) 01:33:25 ]
- (図がずれまくってスミマセン)
@はただ継承してるだけでなく、インスタンス変数が多く、激しくオーバーライドしています。
結果ぱっと見ではソースがまったく追えず、複雑極まりない構造になっています。
今回新たにBTask3に処理追加するために、@のATask1に記述追加しなければならなくなったんですが
100ステップ程のメソッドにたった1行追加するのにも、わざわざオーバーライドして同じような
メソッド100ステップを記述しなければいけなくなったり。今後更に機能拡張があると、五月雨式に
ソースが膨れ上がりそうで非常にデンジャラスな気配です。
日にちはあまりないのですがAの様に改めてリファクタリングすべきでしょうか
それとも構造は@のままで、他に何か対策を練るべきでしょうか。
- 175 名前:デフォルトの名無しさん [2006/03/14(火) 07:53:42 ]
- Javaは10年後は消えてる
- 176 名前:デフォルトの名無しさん [2006/03/14(火) 12:42:11 ]
- ttp://www.cs.technion.ac.il/Labs/Lccn/projects/spring97/project9/
このプログラムを1.4で実行してるのですが、エラーが消えません。
どうしたらいいでしょうか。
- 177 名前:デフォルトの名無しさん [2006/03/15(水) 00:21:36 ]
- JAVAアプレットでプルダウンメニューを使いたいのですが
どうすれば表示できるのでしょうか。
- 178 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 00:42:48 ]
- >>177
JApplet使うか自作
- 179 名前:デフォルトの名無しさん [2006/03/15(水) 00:53:24 ]
- class A {
void foo( ) {
class C { // (1)
void bar( ) { }
};
class D {
class C{} // (2)
void zot( ){
new C( ).bar( ); // ERROR
}
}
}
}
--
//ERROR とついてるところで(2)のCではなく(1)のCを使いたいのですが、
どう書けばいいんでしょう?
- 180 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 00:58:47 ]
- >>179
その前に…fooメソッド内にクラス定義はできないんじゃないか?
- 181 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 05:04:26 ]
- >>180
(´・ω・`)これこれ寝言を言うたらあかんがな
- 182 名前:デフォルトの名無しさん [2006/03/15(水) 15:32:03 ]
- メソッドローカルなインナークラスは外から作成出来ないんじゃ?
- 183 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:18:48 ]
- JPGやPNG画像の縦横幅を求めるのってどうやるの?
- 184 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:22:50 ]
- getWidth/getHeight
- 185 名前:デフォルトの名無しさん [2006/03/15(水) 22:40:38 ]
- jarの質問‥ netbeans 4.1
ダブルクリックでjarが起動しません。
jarファイルの中にフォルダが三つ、
フォルダ "AAA" には aaa.class (mainがあるクラス)
フォルダ "BBB" には bbb.class
フォルダ "META-INF" には MANIFEST.MF
MANIFEST.MF にはmainをどう記述したらよいでしょうか?
へんてこな質問ですみません( T∀T)
- 186 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:50:24 ]
- >>184
クラス教えてけれ
- 187 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:53:56 ]
- え、Imageだろ。
- 188 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:55:03 ]
- >186
自力で探せ
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/index-files/index-7.html
- 189 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:55:29 ]
- >>185
NetBeansのスレできけばよかろうに。
manifest.mfには、mainは勝手に設定されるから記述するなと書かれてるはず。
うろおぼえだけど、プロジェクトのプロパティの「実行」のところを見れば解決するかも。
- 190 名前:デフォルトの名無しさん [2006/03/15(水) 22:59:53 ]
- NetBeans に行ってみます。
- 191 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 23:43:09 ]
- >>188
「JAVAならおれに聞け!」w
- 192 名前:デフォルトの名無しさん [2006/03/16(木) 01:46:41 ]
- >>189
NetBeans プロジェクトのプロパティ-(実行)を開いたら
主クラスの項目がありました。閉じて、構築で、
jar動きました。
本当に、ご親切にありがとうございます。
わあい\(^▽^\)(/^▽^)/わあいっ
- 193 名前:デフォルトの名無しさん [2006/03/16(木) 13:33:24 ]
- ネットワークプログラミングについての質問です。
Javaでプログラミングレベルでパケットを適当に指定した割合でロスさせるような
プログラムは可能でしょうか?
プロクシのテスト用に使いたいのですが。
- 194 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 15:34:30 ]
- >>193
何の串? http?
もしそうなら tcp だからいくらパケットロスさせてもあまり意味ないのでは?
- 195 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 23:29:06 ]
- 回答ありがとうございます。
パケットをロスさせることによって、
通信速度を調節させるとか、そういう話です。
- 196 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 14:37:39 ]
- CSVのsplit処理で、split("a,b,c," ",") すると、4つ目の空文字が取得できません。
また、split(",,,",",")すると、データが一切取れません。
",,"も空文字、またはnullとして取得したいのですが、方法はあるでしょうか?
- 197 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 15:58:43 ]
- >>196
引数を2つ取る split() の方を使え。
負の値を指定するとよい。
- 198 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 16:00:01 ]
- >>195
でもパケットロスってリピータハブに2台のマシンを繋げないと中々実現できないと思うよ。
今ではスイッチングハブが当り前になっちゃったから、まずはハブを探す所からやらないと
駄目だな。
- 199 名前:デフォルトの名無しさん [2006/03/17(金) 22:37:35 ]
- Vectorを拡張して使ってます、
内部のadd_abc関数で警告が出てしまいます、どうしましょう。
「警告: [unchecked] raw 型 java.util.Vector のメンバとしての
add(E) への無検査呼び出しです。」
public class abcVector extends Vector {
…(省略)
public void add_abc( ABC abc_dat ){
add( abc_dat );
}
…(省略)
}
- 200 名前:デフォルトの名無しさん [2006/03/17(金) 23:35:12 ]
- >>198
回答ありがとう。
プログラミングのコードレベルでロスさせるのは不可能でしょうか?
Java以外でもいいのですが、、ってスレ違いでスマソ。
- 201 名前:デフォルトの名無しさん [2006/03/18(土) 02:02:30 ]
- JAVAがインタープリターで動くのはどの部分?
豆腐屋の親父にたのまれて、ロット別の資材管理を
JAVAで作ろうかなとかんがえてるんよ。
- 202 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 02:12:55 ]
- >>201
rhinoでJavaScriptを動かすときとか。
- 203 名前:デフォルトの名無しさん [2006/03/18(土) 02:25:36 ]
- >>202
早速ありがとうよ
ま、インタープリターでも10年前のBASICの速度で十分なんだが
こんな屁みたい、システムでも業者に頼むと100万以上かかるらしい
表計算では大変だし、操作性の面からプログラムを作った方が早い。
- 204 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 02:35:33 ]
- 甘く見ないほうがいいよ。
- 205 名前:デフォルトの名無しさん [2006/03/18(土) 02:40:58 ]
- >>204
甘くは見ないけど、JAVAを勉強しながらやる事になるけど
昔汎用機でアセンブラとCOBOLの経験あるから
少しは覚えているでしょう。
- 206 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 02:51:18 ]
- 業務系やったことあるなら、ま、いいのかな。
100万っていったら1ヶ月かからない程度だしね。
最後のツメでの細かい注文に、おやじのことを嫌いにならんようにな。
- 207 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 04:28:32 ]
- >>201
俺が23万5000円で作ってやるよ
- 208 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 04:30:59 ]
- VBあたり使ったほうがいいんじゃないか?
- 209 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 04:34:58 ]
- もっと身近にプログラミングできるやつおらんのか?
- 210 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 07:24:06 ]
- >>201
VM上で動いているものは全部。
- 211 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 18:28:44 ]
- >>210
そういうのはインタプリタとは言わない
- 212 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 18:33:31 ]
- >>211
どこからどう見てもインタプリタだよ。入門書から勉強し直せ。
- 213 名前:http://www.vector.co.jp/soft/win95/util/se072729.html [2006/03/18(土) 18:44:02 ]
- TextSS の64bit化おながいします
もしくは64bitにネイティブ対応した置換ソフトないですか?
- 214 名前:デフォルトの名無しさん [2006/03/25(土) 05:12:21 ]
- List<List<String>>
これなんだろ?
- 215 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 06:28:03 ]
- う〜ん、特に悩むほどのものじゃないと思うけど。
StringのListのListだろ。
- 216 名前:デフォルトの名無しさん [2006/03/25(土) 12:05:24 ]
- 「プログラミング作法」のJava版みたいな本ないですか?
- 217 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 16:39:06 ]
- EffectiveJavaとかJavaの落とし穴とかかな?
- 218 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 16:50:36 ]
- あと、Java Pazzlerとか
- 219 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 17:30:18 ]
- 「プログラミング殺法」のJava版みたいな本ないですか?
- 220 名前:メモ蔵 [2006/03/25(土) 19:17:28 ]
- javaで作成したアプリケーションのメモリ使用量を実行するまえに、机上である程度
試算することは可能なのでしょうか?
なにか計算式みたいなものあるのかな?
- 221 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 21:07:11 ]
- どなたかjava3dつかってますか?
- 222 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 22:34:26 ]
- >>220
かなり単純なアプリで、一回使ったら落とすようなもの以外は無理
- 223 名前:デフォルトの名無しさん [2006/03/25(土) 23:11:59 ]
- 今日から勉強を始めたのですが
import javax.servlet.*;
import javax.servlet.http.*;
ここらへんでエラーが出ちゃいます
助けてください
- 224 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 23:44:35 ]
- >>223
つ コンパイル時のクラスパス
今日から始めたのなら、いきなりServletではなく、もちっと基本的なところから始めれ。
【初心者】Java質問・相談スレッド83【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1142309999/
- 225 名前:223 mailto:sage [2006/03/25(土) 23:50:27 ]
- 了解
dクス
- 226 名前:デフォルトの名無しさん [2006/03/26(日) 07:07:12 ]
- 【社会】電子政府も縦割り弊害 各種申請、同一PCで無理 JREのバージョンがばらばら 総務省[03/26]
http://news19.2ch.net/test/read.cgi/newsplus/1143317790/
- 227 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 14:47:48 ]
- 去年はDIとかAOPとか色々出たけど
今年って何か面白い技術ネタ何が流行りそうなの?
- 228 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 16:19:13 ]
- JavaScriptかなぁ。
JavaEEは、DI/AOP/ORMが標準になりましたよってだけだし。
- 229 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 16:34:50 ]
- JSFも標準になるね。
今年は、これらの技術の成熟期・普及期かな。
現場でようやく使われ始めそう。
- 230 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 19:05:59 ]
- >>214
Genericsについてぐぐれ
- 231 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 19:08:27 ]
- >>227
Ruby on Rails.
Ajax
Javaの世界ではNetBeansが本格的に流行る。
そしてSwing GUIの復活。Java Web Startと連携して復活と予測。
ついでにJava Studio Creator2も普及。
あれはMacromedia Dreamweaver並みに高機能。
それからアノテーション。
JUnit4が登場。
- 232 名前:デフォルトの名無しさん mailto:sage [2006/04/12(水) 23:12:13 ]
- TextAreaの任意の一行のみをString型に格納したい場合どうすればいいですか?
- 233 名前:デフォルトの名無しさん mailto:sage [2006/04/13(木) 09:34:28 ]
- >>232
さあなあ。とりあえず split で行単位に分割してみたらどうだ?
- 234 名前:デフォルトの名無しさん mailto:sage [2006/04/13(木) 20:15:21 ]
- オートインデント みたいな機能を実装するにはどうやればいいんでしょう?
- 235 名前:デフォルトの名無しさん mailto:sage [2006/04/13(木) 22:01:30 ]
- >>234
Enter 押されて次の行の先頭にカーソルがある時に上の行の先頭の空白をコピーするか、
またはタブに置き換えて挿入する。
- 236 名前:デフォルトの名無しさん mailto:sage [2006/04/13(木) 22:30:09 ]
- ということはTextAreaもしくはJTextAreaにKeyListenerくっつけて監視するだけでOKってことですか?
- 237 名前:デフォルトの名無しさん mailto:sage [2006/04/14(金) 03:41:04 ]
- あとは気の利いた処理かくだけだな。
- 238 名前:デフォルトの名無しさん mailto:sage [2006/04/14(金) 05:36:40 ]
- ありがとう
- 239 名前:デフォルトの名無しさん mailto:sage [2006/04/17(月) 19:49:08 ]
- Cのsystem()関数みたいのないですか?
- 240 名前:デフォルトの名無しさん mailto:sage [2006/04/17(月) 20:33:44 ]
- >>239
まず、 java.lang.Runtime のドキュメントを読め。
- 241 名前:デフォルトの名無しさん mailto:sage [2006/04/17(月) 21:14:18 ]
- >>240
センキュー!
- 242 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 19:37:56 ]
- お願いします。教えてください。
今weblogicを使用してWEBアプリを作成していますが、
再デプロイしなくても、クラスファイルを更新して上書きすれば
クラスの再ロードが掛かるといわれて、上書きしたのですが更新されませんでした。
再デプロイすると更新されるので、アップロード方法が間違っていることはなさそうです。
そこで聞きたいのですが、クラスの再ロードは、javaエンジンの作業なのでしょうか。
それともクラスローダ?というものでしょうか。
クラスの再ロードをWEBアプリ側から明示的に行うことはできるのでしょうか。
そもそも、クラスを更新しただけではだめなのでしょうか?
- 243 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 20:30:28 ]
- >>242
weblogicは開発モードとプロダクションモードがあって、前者ではクラスファイルが更新されれば
再ロードしてくれるが、後者はしてくれなかったはず。
起動スクリプトをチェックしてみてくださいな
- 244 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 21:31:38 ]
- >>240
CLSとか使えないですが
もしかしてCのsystem()より能力低い?
- 245 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 21:34:07 ]
- >>243
ありがとうございます。
ちなみにプロダクションモードだった場合に、自力で再ロードさせることなんてできるのでしょうか?
- 246 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 22:26:53 ]
- >>245
サーバ再起動になるかと。
プロダクションモードって実稼動環境ということで、そういう変更は想定していないはず。
(むしろ積極的に排除している)
- 247 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 22:37:01 ]
- >>244
は? 君はどういう環境で何をしようとしているの?
- 248 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 22:46:05 ]
- >>243
JSPとサーブレットはプロダクションモードと開発モードに関係なく
別の設定(なんとか更新間隔とか)でリロードするよ。
その他(WEB-INF/lib,WEB-INF/class)などはリロードしなかったかも。
そっちリロードさせたいなら再デプロイするのが確実かな。
- 249 名前:デフォルトの名無しさん mailto:sage [2006/04/18(火) 23:49:39 ]
- >>244
Windowsなら、command.exe経由で呼び出さなけりゃだめっつうだけじゃねぇの?
- 250 名前:デフォルトの名無しさん mailto:sage [2006/04/19(水) 20:18:45 ]
- javaからunixのshellを実行したいのですが、
実行する方法はあるでしょうか?
- 251 名前:デフォルトの名無しさん mailto:sage [2006/04/19(水) 21:39:01 ]
- あるよ。
- 252 名前:デフォルトの名無しさん mailto:sage [2006/04/19(水) 22:17:36 ]
- >>250
>>240
- 253 名前:デフォルトの名無しさん mailto:sage [2006/04/20(木) 13:54:43 ]
- >>251
ありがとうございます。見つけました。
Runtime.getRuntime().exec("xxx");
webアプリで、コマンドを起動したく、servletの中で実行しようと考えているのですが、
何か注意点とかありますでしょうか?
- 254 名前:デフォルトの名無しさん mailto:sage [2006/04/20(木) 16:50:35 ]
- >>253
まさかフォームから受けた文字列を実行するんじゃないよね。実行コマンドが固定か数パターンとして。
・毎回外部コマンドを実行することによるパフォーマンスの低下
・スレッド間の衝突
・DoS
くらいがぱっと思いつくところ。もっとあるだろうけど、コマンドにもよるから。
- 255 名前:デフォルトの名無しさん mailto:sage [2006/04/21(金) 16:14:38 ]
- JDK1.4で、システム環境変数を全て取得することはできるでしょうか。
System#getEnvだと、あらかじめ取得したい名前を知っておかないといけないらしいので。
- 256 名前:デフォルトの名無しさん mailto:sage [2006/04/24(月) 19:39:01 ]
- >>254
すいません。なぞの現象に悩まされています。
下記のコードを実行したところ、execで実行したjavaのバッチプロセスが例外をmainまでスローして終了したときに、
呼び出し側のbr.readLine()でブロックされてしまい、処理が戻ってきません。
何か対処が抜けているでしょうか?
process = Runtime.getRuntime().exec(xxx);
InputStream is = process.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
buffer = new StringBuffer();
String line;
boolean ignoreOutput = command.isIgnoreOutput();
while ((line = br.readLine()) != null) {
System.out.println(line);
}
- 257 名前:デフォルトの名無しさん mailto:sage [2006/04/24(月) 21:27:20 ]
- >>256
processはバグってるから使っちゃだめ。
標準出力読み込み中に、エラーが発生すると、エラー出力を取らないといけないので。
でもunixじゃないんで、javaでは無理。javaでバッチはあきらめるべし。
- 258 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 13:24:03 ]
- >>257
unixで言うところの、selectシステムコールみたいなのはないんですかね。
複数のストリームから一発でデータを取得することは・・・
- 259 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 13:27:04 ]
- >>248
WEB-INF/lib,WEB-INF/class以外で、weblogicが監視してくれる場所は、
xxx.ear/xxx.jar/以下でしょうか
- 260 名前:248 mailto:sage [2006/04/25(火) 14:44:32 ]
- >>259
earとかejbの話?
earに含まれるwebアプリケーションは上に書いた通りだけど
他はどうだろう? ごめん、マニュアル見るか試してください。
- 261 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 20:12:02 ]
- 正規表現で、行をまたいでmatchさせたく、下記を実行しましたが、trueになりませんでした。
System.out.println( Pattern.compile(".*b.*f.*", Pattern.MULTILINE).matcher("abcd\r\nefgh").matches() );
上記をマッチさせる方法はあるでしょうか。
説明が下手で申し訳ございません。
- 262 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 20:55:03 ]
- >>261
よくわからないけど、\r\n じゃなくて \n だけだとどうなる?
- 263 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 21:03:16 ]
- >>261
分かった。それは Pattern.MULTILINE じゃなくて Pattern.DOTALL だ。
MULTILINE の方は ^ と $ が何にマッチするかの指定だが、 DOTALL は
. が何にマッチするかの指定だ。 . を全てにマッチさせるのが DOTALL。
- 264 名前:デフォルトの名無しさん mailto:sage [2006/04/26(水) 09:48:48 ]
- >>263
ありがとうございます。
できました。
ちなみにいろいろ調べてみたのですが、Perl5Util#match() 見たいな、perlチックなクラスもありました。
結構使い勝手がよかったです。ただ、Pattern.DOTALLと同等の機能はないらしいのですが。
- 265 名前:デフォルトの名無しさん mailto:sage [2006/04/26(水) 18:31:37 ]
- >>243
うまく更新されたり、されなかったり、どうも動きが一定にならないです。
1つ確認したいのですが、xxx.earはアーカイブではなく、展開してディレクトリ構造になっています。
そのxxx.ear/xxx.jar/以下にクラスをコピーしました。
this.getClass().getClassLoader().getResource("クラスパス").getPath() でも、jar以下のクラスファイルを見ています。
- 266 名前:デフォルトの名無しさん mailto:sage [2006/04/26(水) 20:52:09 ]
- >>265
JSPやサーブレットは設定により動的にリロードしますよとマニュアルに書いてある。
展開ディレクトリ形式でもwarでも関係ない。
EJBの場合は知らん。
マニュアル参照してそれでわからなければ
サポートに聞いてみればいいと思います。
そこで何日も悩むのってもったいないと思う。
- 267 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 19:26:53 ]
- Javaでコンソールプログラムで作成しているのですが、
ちょっとした疑問がわきました、
たとえばshellからJVMにシグナルがとんだ場合に
プログラムはそれを検知/対応できるんでしょうか?
- 268 名前:267 mailto:sage [2006/04/27(木) 20:02:50 ]
- たぶん自己解決しました。
Runtime#addShutdownHook(Thread hook)
あってるよね?
- 269 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 20:54:48 ]
- SIGINTならそれでいいと思うけど全部が対応できるわけではもちろんないよ。
ちなみにJVMがハンドルするシグナルの表がマニュアルにあったと思う。
- 270 名前:デフォルトの名無しさん mailto:sage [2006/05/15(月) 17:46:32 ]
- リフレクションを使用するときに、セキュリティーマネージャという言葉をよく見ますが、
セキュリティーマネージャとは何でしょうか。
今までの案件で、セキュリティーマネージャを設定してあることはなかったのですが、
セキュリティーマネージャの存在を意識した(制限など)コーディングをしたほうがよいのでしょうか?
- 271 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 14:10:15 ]
- >>270
これに答えられるほどjavaに精通してるやつはいないのかえ!?
- 272 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 14:23:14 ]
- 単なる過疎スレだろ。
セキュリティマネージャは、使えるクラスを制限するものだが。
アプレットでも作らん限りは不要じゃねぇの?
- 273 名前:わからーん [2006/05/19(金) 20:22:06 ]
- jigみたいなものを研究しているのですが、web自体のデータをキャプチャしてその上にリンク座標を乗っけて表示したいと考えているのですが、どうもリンク座標の抽出の仕方の案が浮かびません。。。
サンプルプログラムみたいなものがあったりすれば幸いなのですが案を出してもらえないでしょうか?
- 274 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 21:59:05 ]
- >>270
セキュリティマネージャはサンドボックスがらみでなかったっけ?
- 275 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 01:47:19 ]
- J2EE 5が正式リリースしたようなんだが、
EJB3.0ってホントに実務で有効?
- 276 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 05:12:32 ]
- セキュリティマネージャは、リソースへのアクセスを制限するための仕組みです。
サンドボックスとかキーワードは関係しますが、
別にアプレットに限った話でもない。
起動するときに、その起動形態によって与えられるアプリに与えられる権限が変わるということ。
例として、リモートにあるコードを実行する時は、基本的にローカルマシン上にある
リソースへのアクセス(ファイル読んだり、書いたり)とかコードがある
マシン以外へのアクセスを禁じたりしている。
これを回避するためには、ローカルのセキュリティポリシーを変えたりする必要がある。
で、リフレクションだが、これもクラスの中をこじ開けてアクセスするような
機能があるため、それを実行するのに権限を要求される
で、恐らく>>270 は、まぁセキュリティマネージャを意識したプログラムとかコーディングではなく
実行するときに適切にポリシーが設定されるかどうかを気にするべき。
実行環境によって、ポリシー変更が可能か、どうかとか、ポリシーの配布方法
jarへのサインなど、考えることは色ある。
何より、こんな場所で語り尽くせる話じゃないので適切な解説を見つけて熟読すること。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/security/spec/security-specTOC.fm.html
日本語でもあるから。
- 277 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 15:11:28 ]
- >>275
超有効
- 278 名前:JAVA [2006/05/20(土) 21:13:09 ]
- こんにちは。質問なのですが、STRUTSでメッセージを日本語で出したい場合には、
どのようにしたらいいのでしょうか?本をよんでみたりしましたが、
よくわかりません。ちなみにエクリプスの中で開発中です。
何かのコードに変換するようなのですが、、よろしくご教授お願いします。
- 279 名前:デフォルトの名無しさん [2006/05/20(土) 22:39:00 ]
- オープンソースにすべきだって言ってるアホがいるwwwwwwww
おめでたい連中だwwwwwww
- 280 名前:デフォルトの名無しさん mailto:sage [2006/05/21(日) 09:40:22 ]
- ↑誤爆? このスレで「オープンソース」検索したら、60前後まで飛んでしまった
- 281 名前:デフォルトの名無しさん mailto:sage [2006/05/21(日) 09:59:56 ]
- いや、Java仕様をオープンソース化するべきかどうかの議論が
業界内にあるから、そのことを指しているんだろう。
なぜアホと思うのか、おめでたいと思うのか、俺には全く理解不能だが。
- 282 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 14:09:18 ]
- >>281
仕様だけは最初からオープンでは?
- 283 名前:デフォルトの名無しさん [2006/05/22(月) 15:20:25 ]
- 誰か教えてぇ〜〜マザーボードを変更して、XP等インストールして、動いていたんだけど、JAVAの最新のバージョン6をインストールしたら調子悪くなっちゃった、JAVAを削除したんだけど、やっぱ、駄目だった・・・どうしたらいいの??(; ̄ー ̄川 アセアセ
- 284 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 15:34:49 ]
- 再インストールすりゃいいだろ。
で、正式リリースされている最新のバージョン5をインストール。
ベータ入れて文句いうな。
- 285 名前:デフォルトの名無しさん [2006/05/22(月) 16:55:42 ]
- 質問です。
ブラウザにHello worldと表示させる
簡単なプログラムをJAVAで設計しました。
で、実際にhtmlを作り読み込んでみたわけですが
灰色の画面だけで何も表示されません。
描画に時間がかかるのかと思い、しばらく待ってみましたが
やはりそういった雰囲気はなさそうです。
どうすればいいのでしょうか?
- 286 名前:デフォルトの名無しさん [2006/05/22(月) 17:18:23 ]
- <html>
<body>
<h3>hellow warld</h3>
</body>
</html>
これじゃぁいかんの?
- 287 名前:デフォルトの名無しさん [2006/05/22(月) 17:19:42 ]
- Mac用Javaでフォルダにアクセス拒否するソース
教えてください
- 288 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 18:41:23 ]
- >>285
ちょっとそれどこかの無料ホームページ借りて公開しろ。
で、そのURLをここに書け。
- 289 名前:デフォルトの名無しさん [2006/05/22(月) 22:45:42 ]
- Javaの正規表現なんですがPerlと違うんでしょうか?
Pattern.matches("ab", "abcde")
がfalseになるんですが・・・
Pattern.matches("ab.*", "abcde")
だとtrueになります。
もしかして部分一致じゃなく完全一致なんでしょうか?
- 290 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 23:00:57 ]
- プリファレンスとプロパティ、どっちつかうほうがいいの?
プリファレンスの方が新しいけどレジスタいじくるとか?
- 291 名前:デフォルトの名無しさん mailto:sage [2006/05/23(火) 01:28:42 ]
- >>289
ちょうど見てたところなので投下。
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/regex/Matcher.html#find()
- 292 名前:デフォルトの名無しさん mailto:sage [2006/05/23(火) 17:47:07 ]
- ttp://groups.yahoo.co.jp/group/eclipse-ml/message/1130
↑のデバッグがどうしてもできないのですが。
そもそも、eclipseとかではなくjavaのデバッグで、
現在の止めているスレッドに例外をスローさせる方法なんてあるの?
- 293 名前:JAVA [2006/05/23(火) 19:36:16 ]
- すいません、質問なのですが、STRUTSのFORM画面で日本語が入力された場合、
ACTIONでその値がうまくとれませんん、、文字化けしてします、、
どうしたらいいでしょうか。。よろしくご教授ください。
- 294 名前:デフォルトの名無しさん [2006/05/23(火) 21:58:50 ]
- >>291
ありがとうございます。
なるほど。Perl型はfindで全体一致がmatchesみたいですね。
- 295 名前:デフォルトの名無しさん [2006/05/24(水) 01:16:46 ]
- >>236
とりあえずエンコーディングを指定する箇所を洗い出して
全部同じになっているか確認してみれば?
jspのcharsetとserver.xmlのconnectorとか
- 296 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 16:53:08 ]
- super.super.test
継承っていいね。
- 297 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 13:22:08 ]
- System.getProperties("java.io.tmpdir")って取得したディレクトリって、アプリで勝手に使用していいのでしょうか?
- 298 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 13:41:57 ]
- ユーザーに聞け
- 299 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 16:03:17 ]
- いいかも知れないけどサンドボックスの中からだと使えないかも知れないし、
OSの制限によってアクセス不能かも知れない。
- 300 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 21:08:24 ]
- >>297
これは、unixでいえば/tmp何ですかね?
- 301 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 21:39:38 ]
- jarファイルのURL表示はフルパスで書かないといけないのでしょうか。
できれば、環境依存しない形式で書きたいと思っています
"jar:file:C:/sample/lib/ibatis-sqlmap-2.jar!/com/ibatis/sqlmap/engine/builder/xml/sql-map-config-2.dtd"
- 302 名前:デフォルトの名無しさん mailto:sage [2006/05/26(金) 13:48:20 ]
- >>300
それか、もしくはLinuxなら/var/tmpかもね。もちろん環境変数優先。
WindowsはTEMPかTMP環境変数でしょう。
…と、確認せずにレスする。しようと思えばすぐにもできるんだが。
- 303 名前:デフォルトの名無しさん mailto:sage [2006/05/28(日) 08:20:31 ]
- >>297
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/File.html#createTempFile(java.lang.String,%20java.lang.String)
じゃだめなの?
下手に使うと、このAPIでファイル作ろうとしたときぶつかる可能性があると思うが・・・
ああ、でもどうなんだろ作ろうとしたファイルがすでにあるかのチェックくらいはしてるかな?IOExceptionになるのかも・・・
わかんね、・・・
- 304 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 14:25:05 ]
- java.lang.reflect.Proxyって、インターフェースにしか使えないんだ。
デザインパターンのProxyでいいような気がするけど・・・
- 305 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 14:28:32 ]
- >>303
排他はかけているけど重複チェックはしてなかったよ。
ファイル有り無しに関係なく、new File()していた。
- 306 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 14:32:43 ]
- URLクラスはファイナルなのか・・・。
手出せねーや。
openStreamをオーバーライドして独自のクラス作ろうとしたんだけど。
コンストラクタでstreamを引数に取るやつは簡単にデータの内容変更できるけど、
URLではきれいにいかないなぁ。
ダミーFileをnewしてURL作成がいいところか。
つくったふぁいるのdelete処理のタイミングが難しい・・・
- 307 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 14:40:32 ]
- javaではxmlやプロパティ、普通のファイルなどに専用のクラスでアクセスしますが、
最終的には、ストリームもしくはリーダークラスを使用しているのでしょうか?
- 308 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 17:47:55 ]
- 最終的には、って普通にReader渡すだろうがよ。
- 309 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 13:18:31 ]
- >>296
superのsuperなんてできるのか?
- 310 名前:デフォルトの名無しさん mailto:sage [2006/06/06(火) 17:57:44 ]
- byte[]をchar[]に、char[]をbyte[]に変更するにはどうすればよろしいでしょうか?
- 311 名前:デフォルトの名無しさん mailto:sage [2006/06/06(火) 22:22:03 ]
- >>310
byte[] bs;
char[] cs = new char[bs.length];
for(int i = 0; i < bs.length; ++i) cs[i] = bs[i];
- 312 名前:デフォルトの名無しさん mailto:sage [2006/06/07(水) 01:17:14 ]
- 311はワザとかいてるぽいけど、byte(1octet)とchar(文字)は単純に置換できない。
どういう意図かわからんけど中間にStringをはさめば解決しない?
- 313 名前:デフォルトの名無しさん mailto:sage [2006/06/07(水) 01:24:23 ]
- >>310
byte[] bs;
char[] cs = new char[bs.length];
for(int i = 0; i < cs.length; ++i) cs[i] = (char)bs[i];
- 314 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 17:35:59 ]
- Class#newInstance()を実行するときに、デフォルトコンストラクターがないと
InstantiationExceptionがスローされるのでしょうか?
どこかに、コンパイラによってデフォルトコンストラクタは勝手に作られるとあったのですが、
勝手に作られるのに、ないそと怒られるのはなぜでしょうか?
- 315 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 17:42:39 ]
- 標準出力からjavaのソースを読込み、
プログラムでコンパイルして、それを実行することなんてできるのでしょうか?
サーブレットコンテナがjspをそうしているように。
- 316 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 18:36:23 ]
- >>314
ソースコード中にコンストラクタが一切無い場合に限り、コンパイラによってデフォルトコンストラクタが暗黙的に生成される。
- 317 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 18:36:53 ]
- >>315
できます。
サーブレットコンテナがjspをそうしているように。
- 318 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 19:44:46 ]
- >>316
ありがとうございます。
原因がわかりました。
- 319 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 19:46:09 ]
- >>317
ありがとうございます。
この機能を実装しろといわれていますが、
コンパイルをし、ロードし、実行することは、かなりの規模になるでしょうか?
- 320 名前:デフォルトの名無しさん mailto:sage [2006/06/08(木) 23:29:25 ]
- >>319
給料上げてくれるならやると言え。
規模は大きくないけど、そんな質問してるレベルで、仕事として組めるとは思えない。
趣味なら勉強になるからやればいいんだけど。
- 321 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 10:07:26 ]
- >>320
本当に無理な要求で・・・
仕様が頻繁に変わり、反映した後にサーバーの再デプロイをものすごく拒否られて、
その代わりに、自分で更新機能を作れなどとで、話が舞い込んできました。
HP-Unixでweblogicを使用していますが、クラス再ロード機能をオンにしてクラスを更新しても無反応なので。。。
- 322 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 13:10:51 ]
- WebLogicなら業者に相談すれ。たぶん解決する。
- 323 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 16:35:46 ]
- クラスローダーから、現状のクラスパスを取得することは可能でしょうか?
- 324 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 16:43:19 ]
- >>323
自分で解決できました。
- 325 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 16:53:40 ]
- 通常のJDKのjreのjt.jarは、行番号情報なしでコンパイルされているのでしょうか。
リモート接続して、JDK中のクラスにデバックポイントを張ったらエラーになりました。
- 326 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 16:54:07 ]
- >>325
コンパイル時のオプション次第
- 327 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:10:26 ]
- >>326
デフォルトのweblogicは C:\bea\JROCKI~1\jre\lib\rt.jar を使用していて、
リモートデバッグはできませんでした。
eclipseで使用している C:\j2sdk1.4.2_08\jre\lib\rt.jar はデバッグできたので、
C:\j2sdk1.4.2_08\jre\lib\rt.jar を C:\bea\JROCKI~1\jre\lib\rt.jar に上書きして再度デバックしましたが
行番号情報がないとのことで、同じくデバッグできませんでした。
原因としてほかに何が考えられるでしょうか?
- 328 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:22:23 ]
- >>327
だから、コンパイル時のオプションだって言ってるだろ。
そのものズバリの答えをもらっているにも関わらず
そう考えない思考方法をどうにかしない限り、
おまえさんには解決はムリだ。
- 329 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:29:37 ]
- >>328
いやだから
> eclipseで使用している C:\j2sdk1.4.2_08\jre\lib\rt.jar はデバッグできたので、
> C:\j2sdk1.4.2_08\jre\lib\rt.jar を C:\bea\JROCKI~1\jre\lib\rt.jar に上書きして再度デバックしましたが
だから、C:\j2sdk1.4.2_08\jre\lib\rt.jar は行番号情報ありってことでしょ。じゃなきゃeclipse上でデバッグができないはず。
そいつを上書きコピーしたから、できるはずでしょ。たぶん。
- 330 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:33:31 ]
- >>329
>だから、C:\j2sdk1.4.2_08\jre\lib\rt.jar は行番号情報ありってことでしょ。
この前提が間違い。Eclipseがコンパイルするときにデバッグ情報を付加するオプションつけてコンパイルしてんだよ。
わかんない奴だな。
- 331 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:34:34 ]
- >>327
思いこみ激しすぎ&勘違い&頭悪すぎ
- 332 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:37:06 ]
- >>331
こたえになってない。
うまくいかない要素を書いたつもりはないし、勘違いしているんだったら指摘してよ。
なぜeclipseはうまくいくの?実行時のランタイム指定しているんだよ。
見ているものは間違いなく同じrt.jarじゃん。
- 333 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:44:19 ]
- >C:\j2sdk1.4.2_08\jre\lib\rt.jar は行番号情報ありってことでしょ。
これが勘違い&思いこみ。アドヴァイスもらってるのにここから思考が動かない。頭悪すぎ。
コンパイル時のオプションだって言ってるのに。
- 334 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:48:53 ]
- >>333
eclipseはC:\j2sdk1.4.2_08\jre\lib\rt.jarを見て、行番号があるといっている。とさっき書いたが
- 335 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:53:09 ]
- >>334
本当に頭悪いな。
どの rt.jar を使っても
コンパイル時のオプション次第でデバッグ情報ありにもなしにもなるんだよ。
デバッグ情報の有無はランタイムじゃなくて、コンパイル時のオプションで変わるんだよ。
何度言わせるんだ。
- 336 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:56:55 ]
- もう帰るから後は自分でなんとかしてくれ
- 337 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 17:58:28 ]
- >>335
352で、俺はそのランタイムのデバッグをすると書いたが。
> リモート接続して、JDK中のクラスにデバックポイントを張ったらエラーになりました。
独自のクラスでなく、そのweblogicがファイルを読込むFileクラスで処理を止めたいの。
だから、対象はrt.jarのランタイムが行番号つきかどうかが問題。
- 338 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 20:20:46 ]
- JRockitはいろいろアグレッシブなことをやってるのかもしれない。
サポートに問い合わせてみれ。
- 339 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 21:13:29 ]
- デバッグモードで起動しているかどうかの違いじゃないの?
- 340 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 21:16:16 ]
- ランタイムのデバッグって・・・・
無駄なこと・無意味なことが好きな方ですね。
JVMのデバッグモードって知ってますか?
答えてくれる人に対してこういう態度を取っている限り
適切な回答は得られないということは覚えておいた方がいいですよ。
社会性を身につけましょう。
- 341 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 21:18:04 ]
- 同意。人にアドヴァイスを乞う態度じゃない。
- 342 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 21:20:29 ]
- 議論をふっかけたいだけなんじゃないの?
- 343 名前:デフォルトの名無しさん mailto:sage [2006/06/10(土) 01:25:34 ]
- 俺には >>326 が勘違いしたまま絡んだように見えるが。
JVM スレで聞いてみれば?
- 344 名前:338 mailto:sage [2006/06/10(土) 01:34:32 ]
- むしろEclipseのrt.jarが特別かも。
Sunのrt.jarでも試してみれば?
普通はデバッグオプション付きでコンパイルしてないのかな?
- 345 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 00:14:37 ]
- SwingのJComboBoxを使ってオートコンプリート機能を追加しようと思っています。
具体的には、コンボボックスに対して入力もできるし一度入力したテキストは
オートコンプリート機能を働かせたい・・というものです。
JComboBoxにはsetKeySelectionManagerというメソッドがあり、JComboBox.KeySelectionManagerを
実装したクラスを渡すと、入力に応じて行を自動で選択する実装ができるようですが、
この機能では、setEditable(false) の時にしか働かないようです。
なので、この場合新たな入力が行えなくなってしまいます。
入力可能で且つオートコンプリート機能を追加する場合はどのようにすればよいでしょうか?
- 346 名前:デフォルトの名無しさん mailto:sage [2006/06/13(火) 14:24:06 ]
- >>340
デバッグという書き方が紛らわしかったですが、
フレームワークがあるファイルをアクセスしていて、ソースを追うより実行してすぐ知りたいと思い
JVMのFileクラスにブレイクポイントを設定して、目的のファイル名だったら止まる条件を追加しようと考えてました。
確かにしびれを切らして口調が荒くなりましたが、
誤解した人がけなすこと言って批判の対象外になっているのも悲しいです。
- 347 名前:デフォルトの名無しさん mailto:sage [2006/06/14(水) 10:51:23 ]
- Runtime#traceMethodCalls(true)をセットするとメソッド呼び出しのログが取れるようですが、
OSがXPの場合、ログファイルはどこにできるのでしょうか。
- 348 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 13:15:42 ]
- 標準入力のバッファリングをオフにすることはできますか?
1行単位でなく、1文字単位で読み込みする必要が出てきたので。
- 349 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 21:59:35 ]
- 標準入力にバッファリングあるか?
- 350 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 13:56:16 ]
- どんなクラスをnewするとき、必ずObjectクラスのコンストラクタって呼ばれるの?
って言うか、呼ばれているんだけど・・・
- 351 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 14:15:57 ]
- >>350
スーパークラスのコンストラクタは当然呼ばれる。
- 352 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 16:16:17 ]
- >>351
public xxx() {
super();
}
と
public xxx() {
}
でも、親のデフォルトコンストラクターは呼ばれるってことですか。
- 353 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 16:18:04 ]
- >>352
呼ばれる
ってか、コンストラクタ勉強しなおせ。
- 354 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 16:46:14 ]
- 親のコンストラクタが呼ばれないと、親のprivateフィールドが初期化できなくなる(可能性がある)。
すると親クラスではprotected以上が必須になり、private宣言すると、実質final classになっちゃう。
だから、明示・暗黙のいずれであっても、親のコンストラクタのどれかは呼ばれないといけないのです。
- 355 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 18:44:35 ]
- >>354
すごく納得できました。
ありがとうございます。
- 356 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 11:11:48 ]
- >>347
その機能は過去の遺物らしい。
どっかの英語圏サイトに書いてあったような・・・
- 357 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 11:20:37 ]
- 簡単なTCPIPプロキシを作ったのですが、1文字ごとに「@」がつきます。おかしい箇所を教えてください!
InputStream localIn;
OutputStream localOut;
InputStream serverIn;
OutputStream serverOut;
Socket serverSocket = new ServerSocket(1000).accept();
serverIn = serverSocket.getInputStream();
serverOut = serverSocket.getOutputStream();
Socket localSocket = new Socket("xxx.xxx.xxx.xxx", 23);
localIn = localSocket.getInputStream();
localOut = localSocket.getOutputStream();
byte[] data;
while (true) {
try {
if (serverIn.available() > 0) {
data = new byte[serverIn.available() + 1];
serverIn.read(data, 0, serverIn.available());
localOut.write(data);
} else if (localIn.available() > 0) {
data = new byte[localIn.available() + 1];
localIn.read(data, 0, localIn.available());
serverOut.write(data);
} else {
Thread.sleep(10);
}
} catch (IOException e) {
e.printStackTrace();
break;
}
}
- 358 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 18:32:50 ]
- >>357
自己解決
data = new byte[serverIn.available() + 1]
↓
data = new byte[serverIn.available()]
- 359 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 05:01:55 ]
- Javamailの質問はここでいいのでしょうか・・?
受信したメールの本文にテキストを付加した上で再送信したいのですが、
その際に元のメールの構造を保ったままで再送信するためにはどうすればいいか分かる方いますか?
- 360 名前:デフォルトの名無しさん mailto:sage [2006/07/01(土) 23:48:45 ]
- サーバサイドで独自の設定ファイル(ファイル形式は*.propertiesや*.xmlなど)を
オートリロード対応するならば、みなさんならどんな実装にしますか?
ぱっと思いついたのは
・設定ファイルが更新されていないかスレッドで監視
・ロードした設定情報(キャッシュ)に有効期限を決めておき(10秒とか)、
キャッシュへアクセスするたびに期限切れか判定(期限切れならロードしなおす)
・Commons Configurationを使う
出来るのかまだ調べていませんが、「設定ファイルなら何でもこい」と
言っているので出来るのかな〜と勝手に思ってます
という感じです。
個人的な現状の状況は、環境はj2sdk1.4.x+J2EE1.4で、テストのために使おうと
考えています。
(なのでそれほどパフォーマンスは考慮しようとは考えていません)
他に何かよい方法があればアドバイスください。
- 361 名前:デフォルトの名無しさん [2006/07/04(火) 21:12:56 ]
- 時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします
- 362 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 03:28:04 ]
- コンビニのバイトより安いですが、よろしくお願いします。
- 363 名前:361 [2006/07/17(月) 21:21:51 ]
- 教える対象は超初心者です。
専門学校などでJavaを勉強されていて夏休みだけ教えたいという方も歓迎です
- 364 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 22:43:58 ]
- jdk-1_5_0_07-nb-5_0-linux-ml.bin
ってのを落としたんだけど、これどうするのん?
- 365 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 22:45:54 ]
- >>364
実行する
- 366 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 22:47:07 ]
- >>365
どうやって?
- 367 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 22:51:33 ]
- すまん、大きな勘違いをしていた
- 368 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 13:47:21 ]
- JSPなどで使用される、データだけを保持するBeanクラスに、
setter、getterが存在するのはなぜでしょうか?
セキュリティの問題だとかいろいろあると思いますが、実際実務で
有効に利用できたことってあるんでしょうか?
仕様変更のたびに、変数名とセットで、メソッド名も変更となるため
かなり面倒な感じがするのですが。
どうなんでしょうか。
- 369 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 13:56:49 ]
- >>368
本来はカプセル化のためだし、
getterやsetterにいろいろ仕込む手法もあったのだけど、
最近の流れはそうではないよね。
でも当初の思想がそうだったために、各種開発ツールや
ライブラリやカスタムタグがgetter/setterありきで設計されている。
ってとこが現実かな。
変数名とメソッド名を合わせて変更は、IDEが対応しているでしょ。
データを保持するだけの単純なJavaBeanは手書きするもんじゃないよ。
- 370 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 14:01:41 ]
- >>369
ああ、なるほど〜もともとはそういう理由で作られていて、
現在はそういう利用がないってことなんですね。
久しぶりにしっかりとした意見が聞けてすっきりしました。
IDEが古くて対応していないプロジェクトなもので、
全部手書きでやっていて・・・。
ありがとうございました。
- 371 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 14:53:43 ]
- 正直、DAOとか作って値だけのクラスと操作するクラスを
作ってるのって酷い無駄だと思う。
いっそのこと構造体にしてくれって感じ。
- 372 名前:デフォルトの名無しさん [2006/08/31(木) 15:28:30 ]
- javaでFTPクライアントソフトを作成したんですが、
認証まではうまくいくんですがPASVモードでの
dataSocket = new Socket(serverIP.replace(',','.'),動的なPORT);
でタイムアウトが発生し接続できません。
windowsでは問題なく実行できます。
環境は
+−−−−−−+ +−−−−−−+
LINUX−−−−| | | |
| ルータ- |−−−−−| モデム |−−−−−インターネット
WIN−−−−−−| | | |
+−−−−−−+ +−−−−−−+
ちなみにlinuxのFTPコマンドではファイル転送も問題なくできます。
原因がさっぱりわかりません。
- 373 名前:デフォルトの名無しさん [2006/09/05(火) 02:42:52 ]
- ついに1000体突破かよ
アイロボットみたいだな
株ロボもいつか夢を見るようになるのかなぁ
- 374 名前:デフォルトの名無しさん [2006/09/11(月) 15:38:59 ]
- これでダブルクォーテーションも一緒に出力したい場合ってこれじゃ駄目なの?
/**
*
*こんちゃーす
*
*/
class koncha{
public static void main(String[] args){
//標準出力でこんにちは
System.out.println(\""こんにちは""\);
}
}
誰か教えてくれ
- 375 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 16:00:27 ]
- >>374
System.out.println("\"こんにちは\"");
- 376 名前:デフォルトの名無しさん [2006/09/12(火) 20:00:19 ]
- >>374
釣りですか。
- 377 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 21:51:08 ]
- Javaでオブジェクトを引数として渡す、あるいは返り値とする場合
、C++の参照渡しになるとのことですがC++でいうconst参照を渡す
にはどうやればいいのですか?
- 378 名前:デフォルトの名無しさん [2006/09/25(月) 07:08:41 ]
- >>378
気合いで
- 379 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 09:38:38 ]
- 今更こんな質問周りに出来ないので質問
JAVAとJavaScriptは同じものなのでしょうか?
入門書などを見るとimport java.applet.*と記述すれば
JAVAでアプレットを使えるとありますが、これがJAVAスクリプトなのでしょうか?
あともし別物だったとしてJAVAと比べてJAVAスクリプトは勉強するの簡単でしょうか?
- 380 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 11:10:50 ]
- >>379
javaとjavascriptは全くの別物。 多少構文が似ている部分もある。 「多少」ね。
当時マーケティングの都合でjavaに似てるイメージを持たせたかったのでjavascriptという名前になっただけ。
勉強するなら、完全に無関係だと思ったほうがいい。
で、javascriptは、簡単な事しかやらないなら簡単。 凝ったことをやるとjavaより面倒。
好みの問題だが。
- 381 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:20:32 ]
- >>380
レス有難うございます。
御蔭でかなりスッキリしました。
- 382 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 15:52:22 ]
- javaプログラムをexeに変更することはできるでしょうか?
javaならツールを簡単に作れますが、友達に提供しようと思っても
javaをインストールしたくないということで動かせなくて困っています。
- 383 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 23:20:24 ]
- >>382
つ http://www.google.co.jp/search?hl=ja&q=jar%E3%80%80exe%E3%80%80%E5%A4%89%E6%8F%9B&lr=
- 384 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 02:23:33 ]
- >>382
まずは、インストールしてもらおうよ
exeにしてもいい事ないし
どうせ、昔の情報で「Javaおせーしなー」とか言ってるだけでしょ?
入れないなら自分で作れよ、って言う、と。
どうしてもってんなら gcj で。
exewrapとか、JSmoothやlaunch4jはjava入れなきゃダメだから注意な。
有料でよければJETとかもある・・・がコレは俺使った事ない
- 385 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 18:09:28 ]
- 質問です。
JFormattedTextFieldを使って、HH:mmの形で入力された時刻の差(日数などは考慮に入れない)を求める勤怠時間計算ソフトを作っています。
例えば、2つのJFormattedTextFieldに9:30と20:30の時刻入力があった場合に、3つ目のフィールドに、労働時間"11:00"を出力するというものです。
この場合、文字位置を判定してStringを取得、intに変換して計算するという方法以外に何か良い方法はないものでしょうか?
また、":"の入力を省けるようにMaskFormatter("##:##")としているのですが、SetText(null)とすると、次にフォーカスを得て失うまで":"が現れません。
時刻入力部分だけをnullとして、":"を残しておく方法は無いものでしょうか。
よろしくお願いします。
- 386 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 22:49:05 ]
- >385です。時間が切羽詰っていて、
http://pc8.2ch.net/test/read.cgi/tech/1158332683/l50
こちらで聞くことにしました。申し訳ありません。
- 387 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 22:38:15 ]
- ターボリナックス8サーバーでJRE1.5を入れました。
で、javaアプリで日本語入力しようとし漢字変換し、漢字候補の画面でクローズボタンを実行すると、javaが吹っ飛びました。同じような現象を経験した方います?
- 388 名前:java初心者 [2006/09/30(土) 18:23:53 ]
- JAVAでアプリケーションを作成しています。
コマンドプロンプトでコマンドを入力するような機能をつけたいのですが、
何かいい方法はありませんでしょうか?
自分でも調べてみたのですが、
Runtime.getRuntime().exec()で実現しようとすると、
Eclipseに「処理されない例外の型」と注意されてしまいます。
何か設定があるのでしょうか?
- 389 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 20:16:17 ]
- System.in
- 390 名前:デフォルトの名無しさん mailto:sage [2006/10/02(月) 10:01:17 ]
- >>388
最低限、例外処理ぐらいは勉強してからプログラム書け。
ここで聞くよりググったほうが回答が多い。 ググれカス。
- 391 名前:デフォルトの名無しさん mailto:sage [2006/10/02(月) 15:59:24 ]
- throws Exception
|∀・)・・・・・・・・・・・・・・・・・・・・・・ とかね
- 392 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 07:51:46 ]
- |∀・)・・・・・・・・・・・・・・・・・・・・・・ つかまえたあとどうしよう
- 393 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 19:56:28 ]
- これは質問と言うよりも一つの感想だが、内部クラスのインスタンスを生成する時に、
先ず外部クラスのインスタンス名を生成してから、そのインスタンス名でもって
<インスタンス名>.new としないと内部クラスをインスタンスを生成できない事が分か
った。
これは、内部クラスを利用する上で重要な事だと思うけど、私の本に詳しく書いていな
いし、Internetで検索しても余り出てこない。
*印の単なる配列の宣言は、インスタンス名を参照しなくてもいいみたい。
http://www.kab-studio.biz/Programing/JavaA2Z/Word/00000994.html
public class H03Dijkstra {
class DijkEdge {int weight; int dest; };
class Vertex {
DijkEdge[] conne;
int nmCn;
};
void dijkstra(Vertex[] graph,int iNmNode,int source) {・・}
public static void main(String args[]) {
H03Dijkstra dij=new H03Dijkstra();
Vertex[] SW2006Sp = new Vertex[5];// H03Dijkstra.Vertex[]でも可←*
for(int i0=0;i0<5;i0++){SW2006Sp[i0]=dij.new Vertex(); }
SW2006Sp[0].nmCn=2;
SW2006Sp[0].conne = new DijkEdge[2];
for(int i0=0;i0<2;i0++){SW2006Sp[0].conne[i0]=dij.new DijkEdge(); }
SW2006Sp[0].conne[0].dest=1; // B
SW2006Sp[0].conne[0].weight=10;
SW2006Sp[0].conne[1].dest=2; // C
SW2006Sp[0].conne[1].weight=3;
・・略・・
dij.dijkstra(SW2006Sp,5,0);
}
}
- 394 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 05:56:39 ]
- >393 手持ちの本にJava言語仕様を加えることをお勧めする。
8.1.3 Inner Classes and Enclosing Instances
8.5 Member Type Declarations
15.9 Class Instance Creation Expressions
- 395 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 23:07:13 ]
- SWTの話題もありですかね?
org.eclipse.swt.browserで表示したwebの
formにsubmit(psot)したいのだが良い方法ない?
VBとかだとこんな感じ
ieobj.document.forms(0).Submit
ちなみに↓だと、エラーは出ないけど反応無し。
browser.execute("document.formname.Submit")
- 396 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 14:49:35 ]
- >>289
Jakarta OROを使えばPerl5互換正規表現を
Javaでも使うことができるぞ
- 397 名前:395 mailto:sage [2006/10/15(日) 18:11:22 ]
- 誰も興味ないかも知れないですが事故解決したので
一応報告。
browser.executeでフォーカスをinputタグにあわせて
awt.robotでエンターキーを叩かせるという力技で何とかしました。
始めはorg.eclipse.swt.browser自体を改造していましたが
OLE操作がいまいち分からずあきらめました・・・。
- 398 名前:デフォルトの名無しさん [2006/10/16(月) 10:30:06 ]
- 現在アプレットで動作しているものをサーブレットで動くように変換せよ、
との命令を受けた者です。
かなりの初心者で、正直途方に暮れています。
母体(アプレット版)にあまり手を加えずに変換する事は可能なんでしょうか。
物によると思いますが、一般的な手法等について教えてください。
- 399 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 22:39:08 ]
- かなり不思議な命令だな
- 400 名前:デフォルトの名無しさん mailto:sage [2006/10/17(火) 09:31:42 ]
- その命令を出した人間が、どこまでわかってるんだろうか。
ちゃんと知ってて言ってるんなら、元のアプレットをwebアプリにしたいんだろう。
この場合、アプレットのロジックとUIを切り離して、UIはJSPなりで表示。
UIはアプレットとhtmlじゃ出来ることが全く違うから、同じにするには物凄い工数がかかる。
ある程度割り切って実装する事も必要かと。
核心のロジックはそのまま使える。 元のアプレットがまともに書いてあったらだけど。
何も知らないオヤジがなんとなく言ってるだけなら、そんな簡単な話じゃないって事を厳しく教育しとけ。
理由も付けて。
- 401 名前:デフォルトの名無しさん mailto:sage [2006/10/31(火) 09:42:03 ]
- windowsのクリップボードのデータって取得できますか?
- 402 名前:デフォルトの名無しさん mailto:sage [2006/10/31(火) 14:32:08 ]
- >>401
できるよ
java.awt.datatransfer.Clipboard
について調べてみればおk
- 403 名前:デフォルトの名無しさん mailto:sage [2006/11/06(月) 16:53:21 ]
- >>402
できました。
ありがとうございます。
クリップボードの監視とかはできるのでしょうか?
C-cしてクリップボードに値が入った場合に、したい処理があるのですが。
- 404 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 14:26:32 ]
- 作業ディレクトリを移動するにはどうすればよいのでしょうか?
- 405 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 15:59:12 ]
- new File(フルパス)
- 406 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 18:15:38 ]
- >>405
これで移動できるのですか?
- 407 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 18:30:03 ]
- >>406
できるわけねーじゃん。
javaにはカレントディレクトリの移動の概念がないよ。
- 408 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 20:57:54 ]
- >>404
カレントディレクトリの管理は自分でするしかない。
Fileオブジェクトに持たせておいて、新しくFileを作るときはそれをベースにしてconstruct
- 409 名前:デフォルトの名無しさん mailto:sage [2006/11/10(金) 13:31:04 ]
- >>403
たぶんコピーしてオーナーにならないとだめかも。
毎回コピーしなおさないといけないのが難点。
- 410 名前:デフォルトの名無しさん [2006/11/11(土) 16:41:32 ]
- String#getBytesでUnicodeからbyte[]に変換される際に
テーブルデータみたいのって自分で編集できる?
機種依存文字とかのマッピングを自分で追記したいんだけど。
- 411 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 17:08:11 ]
- 自分でencoderを作るか、出てきたbyte[]を自力で解析
くらいしか思いつかない
- 412 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 17:11:47 ]
- どっかにpropertiesかxmlで定義されてるんじゃないの?
- 413 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 08:02:05 ]
- >>410
java.nio.charset.spi.CharsetProvider
jarファイルでライブラリ作って、META-INF/servicesに記述書いておけば
オリジナルのcharsetを作れるはず
- 414 名前:デフォルトの名無しさん [2006/11/12(日) 16:36:17 ]
- 質問です。
javaで3mpタグの読み込み&編集を行いたいのですが
どうすればいいのかまったく分かりません。
まだjavaを初めて間もない初心者ですが
何か参考になるものがあれば教えていただけないでしょうか?
- 415 名前:mm3 [2006/11/12(日) 17:53:05 ]
- はじめまして。ビルさんに質問です。1
J2SE1.5.0_09をダウンロードしました。
import java.uti.ArrayList;
class Sample{
public static void main(String[] args){
ArrayList list = new ArrayList;
list.add("moji");
System.out.println(get(0));
}
}
という、簡単なプログラムなのですが、
list.add("moji");が、「無検査呼び出し」というエラーで、
コンパイルが通りません。
J2SE1.5.0_08では、通ります。
1.5.0_09で通すには、どのようにすればよいのでしょうか??
- 416 名前:デフォルトの名無しさん [2006/11/12(日) 20:15:25 ]
- 板違いなきがするのですが、どうしても分からないので
ここで質問させてください。
XMLの勉強を始めたばかりの初心者なのですが
私が作成したXMLファイルのエラーをチェックするために
コマンドプロンプトから
java dom.Counter (XMLファイル)
という風にやっているのですが、次のようなエラーが出てしまいます。
[Fatal Error] :-1:-1: Premature end of file.
開始タグと閉じタグが一致してないのが原因なのかとソースを何回も
チェックしましたが、そのような記述ミスはありません。
他に原因として考えられること、またはこのエラーの指す意味が
お分かりでしたら教えていただけませんか?
よろしくお願いします。
- 417 名前:岐山面 [2006/11/12(日) 22:04:26 ]
- >>415 _09の環境がないが、このようにいけるかな。
import java.uti.ArrayList;
class Sample{
public static void main(String[] args){
ArrayList<String> list = new <String> ArrayList();
list.add("moji");
System.out.println(get(0));
}
}
- 418 名前:デフォルトの名無しさん [2006/11/12(日) 23:32:37 ]
- 今業務で使ってるフレームワークが糞すぎる!
なんかいいのないか?
Strutsも古いから次。
- 419 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 00:52:43 ]
- 無難にJSF
それで不満があるならWicketかClick
- 420 名前:デフォルトの名無しさん [2006/11/13(月) 23:37:00 ]
- リッチクライアントじゃない
ただのWebアプリからWin32APIにアクセスできますか?
(^_^;
- 421 名前:デフォルトの名無しさん mailto:sage [2006/11/14(火) 13:42:29 ]
- JNI使えば可能・・・ってそういうレベルの質問ではなさそうだな。
真面目な質問ではなさそうなので、軽く釣られてやったぞ。
- 422 名前:デフォルトの名無しさん mailto:sage [2006/11/14(火) 21:11:29 ]
- >>420
ActiveX使おうぜ!
と、おいしそうな餌だったので
- 423 名前:デフォルトの名無しさん mailto:sage [2006/11/15(水) 22:01:57 ]
- >>421
アプレットでJNIって使える?
- 424 名前:デフォルトの名無しさん mailto:sage [2006/11/16(木) 05:01:53 ]
- policyの設定次第じゃないの?
やらんけど。
- 425 名前:デフォルトの名無しさん [2006/11/16(木) 21:26:31 ]
- 要素10のString配列と
10のString型フィールドをもつBean、
後者のほうが10+Bean自身でコストがかかるっていう考え方はおかしい?
- 426 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 01:09:37 ]
- >>425
コストというのはメモリ?
フィールドは名前が付いている分、配列の要素に比べてリッチだろうな
- 427 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 20:07:46 ]
- 標準入力から文字を取得するとき、javaPG側からキーボード操作などをして
キーボードから「test」を入力した状態にすることは可能でしょうか?
ユーザーが入力する際、親切にデータを書き込んで、目的のものじゃなければ<BS>で文字を消してもらおうと考えているのですが。
- 428 名前:デフォルトの名無しさん mailto:sage [2006/11/17(金) 23:15:15 ]
- java.awt.Robot
- 429 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 02:19:18 ]
- >>428
RobotってCUIでも使えたの?
俺もRobotかと思ったけどGUI用かと思ってて
- 430 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 10:56:58 ]
- 試したらちゃんと動いたから大丈夫
- 431 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 13:28:23 ]
- けど、Linuxとでコンソール越しの実行とかされると無理そうよな。
- 432 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 15:06:39 ]
- >>428
ありがとうございます。
入力文字を受け取って、大文字に変換してそれを入力したように見せようと思い
for (int i=0; i<input.length(); i++) {
robot.keyPress( input.toCharArray()[i] );
}
とやったのですが、キーコードが不正でエラーになってしまいました。
何が問題なのでしょか。
- 433 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 21:24:46 ]
- 何をやりたいのかわからん
- 434 名前:デフォルトの名無しさん mailto:sage [2006/11/18(土) 23:18:35 ]
- Throwableの読み方は
スローアブル?
スローエイブル?
- 435 名前:デフォルトの名無しさん mailto:sage [2006/11/19(日) 06:04:46 ]
- >>432
APIドキュメントを読まないか読めないやつだな。
keyPressの引数はキーコードであってUNICODE文字ではない。
キーコードはKeyEventの説明を参照汁。
大文字を打ちたいなら当然シフトキーも押す必要がある。
自分がキーボードを扱う時と同じことをRobotにやらせないといけない。
あと、標準入力への入力待ちをしていると、
WindowsのコマンドプロンプトではkeyPressだけでうまくいくみたいだが、
linuxではkeyReleaseしないと最後にkeyPressしたキーが押されっぱなしになって、
キーリピートしてしまう環境があった。押したキーは放したほうがいい。
- 436 名前:デフォルトの名無しさん [2006/11/19(日) 13:39:57 ]
- >>426
ありがとうございます。
もうひとつお聞きしたいのですが、
DBから取り出したデータを
1行1Beanで全行をListに格納と
1列ごとにString配列、列数分配列を用意するのではどちらがメモリ、速度面で有利なのでしょうか。
- 437 名前:デフォルトの名無しさん mailto:sage [2006/11/19(日) 13:44:19 ]
- >436 自分で測れボケ
- 438 名前:デフォルトの名無しさん mailto:sage [2006/11/19(日) 22:10:27 ]
- >>437
うるさい、市ね。
- 439 名前:436 mailto:sage [2006/11/19(日) 23:09:24 ]
- すいません。荒れてるんで取り下げます。
メモリ使用量を測れるプラグインとか入れてためしてみます。
- 440 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 09:59:18 ]
- >>435
すいません。javadocに書いてました。
キーコードとユニコードの変換は自作するしかないでしょうか?
今入力補填機能を作成していまして、<tab>を押して補填済み文字列をキーボード入力しています。
場合によって、ユーザーが<Left>や<BS>で補填の一部を変えたいらしいので、キーボード入力しています。
標準出力じゃ<bs>で文字を消せないので。unixのshell見たいな物を作ろうとしています
- 441 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 15:37:30 ]
- 初歩的な質問で申し訳ないですが、"あ"のunicodeをプログラム側で取得する方法を教えていただけないでしょうか。
- 442 名前:デフォルトの名無しさん mailto:sage [2006/11/20(月) 16:23:47 ]
- "あ".getBytes("UTF-16LE")
もしくは
"あ".getBytes("UTF-16BE")
- 443 名前:デフォルトの名無しさん mailto:sage [2006/11/24(金) 18:07:21 ]
- Arrays.asList()で取得できるListはArrayListではないのですね。
removeするとエラーになります。
- 444 名前:デフォルトの名無しさん mailto:sage [2006/11/24(金) 23:55:08 ]
- >>443
asListが返すのはあくまでもListインタフェースを実装するクラスというだけ。
その実装の詳細に立ち入るプログラムは行儀があまりよくない。
もし、ArrayListが必要なら、asListで得られたインスタンスからさらにArrayListで再構築。
- 445 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 16:56:03 ]
- 線形連立方程式を解くことができるクラスってありますか?
そしてどこにありますか?
教えてください。
- 446 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 17:17:04 ]
- 実際にプログラムの一部として利用するとなると、
なかなか難しい。
- 447 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 18:04:58 ]
- >>445
数値計算用のライブラリはいくつもあるけど、いろいろ詰め込まれた大規模ライブラリなんで、
線形連立方程式を解くことだけに限定するなら、
ガウス法でもガウス・ジョルダン法でもその他の解法にしても
大したコーディングにはならないから自分で書いてもいいんではないかい?
- 448 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 18:14:30 ]
- そうかもしれないけど細かいエラー処理とか
コンピュータの数値独特のテクニックとかがあることを考えると
認められてるライブラリを使うのがいいかなと考えたのです。
- 449 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 18:37:21 ]
- >>448
んじゃ、javaと数値計算で検索すれば商用、非商用いろいろ見つかるよ。
他にも非JavaライブラリをJNIで呼び出すとか。
- 450 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 03:33:18 ]
- Javaって基本データ型のintとかdoubleとか、
参照渡しできないですよね。
でもメソッドのなかで代入したい場合ってどうするんでしょう?
int a[] = new int[1];
って宣言してわざわざa[0]でアクセスするってことにしてみたんですけど、
これって変ですよね。
- 451 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:00:28 ]
- >>450
呼び出された側で代入したいのなら別に変じゃないと思う。
1個のintに代入したいだけならメソッドの返値として返して呼び出し側で代入する手も。
あとは、intをラップしたmutableオブジェクトなクラスを定義してそれでやりとりするとか。
- 452 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:05:04 ]
- つ Integerクラス
- 453 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:13:05 ]
- >>452
Integerはimmutableなんで引数として渡されたIntegerオブジェクトに
メソッド内で新たな値を代入することはできないと思う。
- 454 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:24:40 ]
- ('A`)
じゃあ
class IntCupsel{
public IntCupsel(int i){ value=i; }
public int value;
}
で。
- 455 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:34:45 ]
- こんな感じで
public class MutableInteger {
private int i;
public MutableInteger(int i) {
this.i = i;
}
public void set(int i) {
this.i = i;
}
public int get() {
return i;
}
public String toString() {
return Integer.toString(i);
}
}
public class bar {
public static void main(String[] args) {
MutableInteger n = new MutableInteger(1);
foo(n);
System.out.println(n);
}
public static void foo(MutableInteger i) {
i.set(i.get()+1); // i=i+1
}
}
- 456 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:40:26 ]
- 被った
454のようにアクセスを簡単にするためにラップしたものをpublicにしてもいいね。
あとはマルチスレッドでmutableなものを使うときは注意が必要なくらいか。
- 457 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 04:42:48 ]
- よしお腹一杯になったぞ
サンクス>>455-456
人の話を聞かなくなってたオレには丁度良い薬だった
- 458 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 12:03:01 ]
- プロパティファイルはユニコードじゃないとだめなのに、
何でファイルはユニコードじゃないものでも、java内で日本語表示できるのですか?
そもそも、プロパティファイルじゃなくてもいいような気がするのですが?
素人でその辺が良くわかりません。
- 459 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 14:28:49 ]
- Unicodeとネイティブの変換機能はJava内にある。
プロパティファイルじゃなくてもいいというのが
何のことだかさっぱりだが、
たぶんプロパティファイルでなくてもいいぞ。
取りあえずJavaの前に自分の状況を日本語で表現する勉強だ。
- 460 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 14:54:09 ]
- >>459
ありがとうございます。
java内と言うのは、エンジンのことですか。それともAPI?
Propertiesのソースを見てみたら、unicodeの変換処理がありました。
それのことですかね。
変換機能は他の用途にも使えそうなので、JDKのAPIにすればいいのにとふと思いました。
- 461 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 15:22:00 ]
- new String(byte[] ,String)
で、Stringで指定したCharsetでの変換が機能する。
逆向きは、
String.getBytes(String)
参考:
java.nio.charset.Charset
- 462 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 10:35:14 ]
- 独自のサーバーアプリを作っていて、tomcatみたいに実行時中に変更されたクラスを再ロードさせたいのですが
どうすればよいでしょうか?
- 463 名前:たすけてください mailto:t051010@kaiyodai.ac.jp [2006/11/29(水) 12:09:12 ]
- javaの課題がだされたのですが、初心者なので全くわかりません。javaなら俺に聞けさんに助けてほしいです。
多いのですが留年がかかっています。助けてくださいお願いします。12月6日が期限です。
46. クラスを定義して、三角形の2つの角と爽辺をN組読み込んで、三角形の面積、角度および三辺の長さを出力するプログラムを作成しなさい。
72. ニュートン・ラプソン法で、c o s x = xの根を求める13. 角度(x度y分z秒)をラジアンに変換するプログラムを作成し、角度変換表を作成し、プログラムを作成しなさい。
37. nを1から50まで変化させて、各nに対してs 3 = 1 3 + 2 3 + … + n 3= n 3 ( n + 1 ) 2 / 4の値を求めて、数表を作るプログラムを作成しなさい。
86. 次の真理値表を作るプログラムを作成しなさい。(X •Y) + {Z • (X + Y)}
- 464 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 13:09:07 ]
- >>463
12/6までならまだ余裕あるな。ちょっとまじめにやってみようか。
まず問題文をコンピュータ関係なしに数学として理解しているかだ。
もし、そこ以前だったら、・・・船の安全を考えて頼むから留年してくれ。
問題文を数学として理解しているのなら
まず、その求め方を日本語/数式で書いてみよう話はそこからだ。
- 465 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 13:48:14 ]
- >>463
大学名は晒さない方が良いと思うよ・・・
- 466 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 14:26:29 ]
- つーかコレ、学籍番号だったりして・・・ w
- 467 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 14:41:44 ]
- 教官がここ見てて回答と一緒だと一発留年か。w
俺の学生時代も、レポートのdiff取って一発留年晒し挙げがあったなあ。
アクセス記録によれば、UNIXサーバの他人のディレクトリからかっぱらったらしい。
パーミッション切っておかないのが上手いよな。w
- 468 名前:デフォルトの名無しさん [2006/11/29(水) 15:08:19 ]
- java.awt.eventのgetModifiersメソッドについて教えてください.
Swingでこれを使うとSHIFTなら17,CTRLなら18,ALTなら24が帰ってきて,
SHIFT_MASK,CTRL_MASK等のマスクを使った処理がちゃんとできるのですが,アプレットでこの
メソッドを使うと,SHIFTでは64,CTRLでは128,ALTでは512が帰ってきて
マスクが使えません.
どうなってるのでしょうか?
- 469 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 15:53:29 ]
- >>462
普通に上書きすればできっぺよ。
- 470 名前:デフォルトの名無しさん [2006/11/29(水) 15:57:50 ]
- 何方かjava言語を勉強できる無料サイトって知ってる方いませんか?
一様参考書買って勉強してるんですが・・・なんだか物足りないので誰かご存知の方が居ましたら情報plz つw;
- 471 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 19:18:10 ]
- >>469
運用時は自動ロード(開発モード)をOFFにしてるんじゃね?
- 472 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 19:19:01 ]
- >>470
グーグル先生にお願いしなさい。
- 473 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 20:13:10 ]
- >>471
tomcatの設定はいじれないので、アプリ側で再ロードはできますか?
あるservletを用意して(管理者IDでない場合は404のエラーを返す)、
textで入力されたクラスファイルの名前を取得し、再ロード(クラスの張替え)する。
こんなことできますか?サーバーの再起動は夜中しか許されないので、
これができると日中でもバンバン修正適用ができるのですが。
エラーになって文句言われたときは自己責任で何とかします。
- 474 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 21:25:24 ]
- >>473
クラックされて変なクラスファイル置かれてもいいの?
- 475 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 21:44:09 ]
- >>473
自分でクラスローダー実装するしかないだろう。
どちらにしてもTomcatいじる事になるかな・・・
もしくは、古いやり方だがRMIサーバー立てて、クラス修正が頻繁に起こる奴はここに保持とかな・・・
- 476 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 21:55:17 ]
- >>475
そっか。デフォルトのクラスローダーは何もしないから、
tomcatは自力で実装しなおして、再ロード可能なクラスローダーを使用しているんだ。
ということは、tomcatのクラスローダーをパクればOK!?
そんな簡単ではないか・・・・
- 477 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 22:05:10 ]
- >>463
つhttp://www.google.com/codesearch
- 478 名前:たすけてください mailto:t051010@kaiyodai.ac.jp [2006/11/30(木) 12:13:57 ]
- わかりました。もしかしたらまた課題が追加されるかもしれないので、それも含めて考えてみます。いろいろありがとうございます。またよろしくお願いします。
- 479 名前:デフォルトの名無しさん [2006/11/30(木) 12:40:28 ]
- javaで代数螺旋のリチュースをかきたいのですが、
public class Lituus extends Applet {
public void paint (Graphics g) {
g.setColor(Color.red);
int centerx = getWidth()/2;
int centery = getHeight()/2;
g.drawLine(0,centery,centerx*2,centery);
g.drawLine(centerx,0,centerx,centery*2);
g.setColor(Color.blue);
int n=360;
double zoomx=10,zoomy=10;
double delta =Math.PI*2/n;
int radius = (centerx<centery)? centerx*3/4:centery*3/4;
double c =Math.sqrt(2*Math.PI)*(radius);
double t = 0.001;
double r =Math.sqrt(ここ);
int lastx = (int)(r*Math.cos(t))+centerx;
int lasty = -(int)(r*Math.sin(t))+centery;
for (int i=1;i<=n;i++){
t+=delta;
r=Math.sqrt(ここ);
int x = (int)(r*Math.cos(t*zoomx))+centerx;
int y = -(int)(r*Math.sin(t*zoomy))+centery;
g.drawLine(lastx,lasty,x,y);
lastx=x;
lasty=y;
}
}
}
ここってかいたとこができればできるらしいのですが、わかりますか?おしえてください
- 480 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 15:29:42 ]
- JAVAなら俺に聞け
でも、数学は聞くな
tが、ラジアン角度
rは、その角度、での中心点からの距離
Wikipediaによると
r = a/ √θ らしい、
今、θを0.001から2π/360のステップで刻もうとしている。
つまり、1周分。
あとは何とかしてやってくれ。
- 481 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 15:38:40 ]
- PS.
↑のプログラムでは、定数はaではなくc
- 482 名前:デフォルトの名無しさん [2006/11/30(木) 17:03:23 ]
- 以下のコードでコンパイルエラーが表示されてしまったのですか、どうすればいいですか?
import javax.swing.*;
public class s12 {public static void main(String[] ar) {
// JFrameクラスのインスタンスを作成
JFrame frame = new JFrame(
"ボタンをのせたアプリケーション");
// JButtonクラスのインスタンスを作成
JButton button = new JButton("わたしはボタン");
// フレームにボタンを追加
frame.add(button);
// フレーム(ウィンドウ)が閉じる際の処理を定義
frame.setDefaultCloseOperation(
JFrame.EXIT_ON_CLOSE);
// Look & Feelの設定
try {
// WindowsスタイルのLook&Feelに設定
UIManager.setLookAndFeel(
"com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
// 設定を反映させる
SwingUtilities.updateComponentTreeUI(frame);
// エラー処理ブロック
} catch (Exception e) {e.printStackTrace();
}
// フレームのサイズを設定して表示
frame.setSize(250, 100);
frame.setVisible(true);
}
}
- 483 名前:デフォルトの名無しさん [2006/11/30(木) 17:13:10 ]
- ↑間違えましたすいません<<482ですが、コンパイルはできますが、
実行になるとエラーが出ます;
- 484 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 17:25:16 ]
- >>483
またこれかよ。 javaの前に、質問の仕方を勉強しろ。
「エラーが出ます」じゃなくて、その出た例外をそのまま貼れ。
お前は、泥棒に入られたら警察行って「困っています」とか言うのか?
とりあえず勘でエスパーしてやるが、
frame.add(button);
を
frame.getContentPane().add(button);
に変えてみろ。
- 485 名前:デフォルトの名無しさん [2006/11/30(木) 17:27:23 ]
- ありがとうございました!解決しました。以後気をつけます!
- 486 名前:デフォルトの名無しさん [2006/11/30(木) 17:32:21 ]
- どうもバージョンによっては482でOKみたいです。
- 487 名前:名無し [2006/11/30(木) 17:37:51 ]
- スロットを作ってるんですけど画像がそろったときにどうすれば文字(アラート)がでるのか教えてください
多分あとfunction judgeのif文の関数の入れ方だけだと思うんですけど。。
var n=0;var image=new Array(4);function Setimage0(){for(i=0 ; i<4 ; i++){image[i]=new Image(200,150);image[i].src="image"+i+".jpg";}}
var m=0;var image=new Array(4);function Setimage1(){for(i=0 ; i<4 ; i++){image[i]=new Image(200,150);image[i].src="image"+i+".jpg";}}
var l=0;var image=new Array(4);function Setimage2(){for(i=0 ; i<4 ; i++){image[i]=new Image(200,150);image[i].src="image"+i+".jpg";}}
function Scroll0(){time0=setTimeout("Scroll0()",500);document.photo0.src=image[n].src;n++;if(n>=4)n=0;}
function Scroll1(){time1=setTimeout("Scroll1()",500);document.photo1.src=image[m].src;m++;if(m>=4)m=0;}
function Scroll2(){time2=setTimeout("Scroll2()",500);document.photo2.src=image[l].src;l++;if(l>=4)l=0;}
function Stop0(){clearTimeout(time0);}
function Stop1(){clearTimeout(time1);}
function Stop2(){clearTimeout(time2);}
function Judge()
{if(( == ) && ( == )){alert("当たり!");}}
- 488 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 20:26:11 ]
- >>486
Tigerか、MustangでContentPaneを取らなくてもイイ改修が入ったはず
- 489 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 23:44:47 ]
- トリップのsalt部分を作る関数みたいなのどこかに公開されてませんかね?
Javaだと文字コード体系が違うので変換がめんどくさいです
- 490 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 00:34:23 ]
- >>488
Tigerだったはず
- 491 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 03:59:46 ]
- >487
JavaScriptはスレ違い。
JavaとJavaScriptは全く別の言語だぞ。
更に言えば動的Webサイトの作成に使う
ブラウザ上のJavaScriptなら
WebProg板の方が良いかも知れん。
ECMAScript デス 2
http://pc8.2ch.net/test/read.cgi/tech/1088298991/
JavaScript 等の ECMAScript 系言語の
ブラウザ上に限定しない話を扱うム板のスレ
WebProg
http://pc8.2ch.net/php/
動的なWebサイト作成でのプログラミング
例えばCGI等のサーバプログラミング
- 492 名前:デフォルトの名無しさん [2006/12/02(土) 04:35:40 ]
- あの、http://java.sun.com/j2se/1.5.0/ja/download.html
このページのJDK 5.0 Update 10をDLしたいんですが、
「ダウンロード」っていうボタンをクリックしても、DLできないんですが・・・
この症状は自分だけでしょうか?
- 493 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 04:59:11 ]
- A array[] = new A[5];
のようにオブジェクトの配列を宣言したとき、
これは参照の配列だと思います。
実体も生成されているのでしょうか?
- 494 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 05:03:03 ]
- 試せやカス
- 495 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 05:03:52 ]
- 493の付け足しです。
実体も生成されているとしても、
明示的にメンバを初期化したい場合は
結局別々にコンストラクタを呼び出せば良い。
この考えでいいでしょうか?
- 496 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 05:20:31 ]
- public class Main {
public static void main(String[] args) {
MyClass[] a1=new MyClass[3];
MyClass[] a2=new MyClass[]{new MyClass(), new MyClass(), new MyClass()};
}
}
class MyClass{public MyClass(){ System.out.println("MyClass "+this.hashCode()+" Created");}}
- 497 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 06:33:11 ]
- >>496
コンストラクタは呼ばれないけど、
インスタンスのためのメモリは確保されていると…。
- 498 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 06:37:09 ]
- >>497
> インスタンスのためのメモリ
> インスタンスのためのメモリ
> インスタンスのためのメモリ
> インスタンスのためのメモリ
(゚д゚)m9 なんだその「わかってます」風な発言は?!
- 499 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 07:14:12 ]
- >>498
初期化されていないインスタンスが作られる?
- 500 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 07:17:07 ]
- それはイイスタンスですね
- 501 名前:デフォルトの名無しさん [2006/12/02(土) 09:20:18 ]
- tomcatをインストールしました。localhost:8080をブラウザから指定すると、tomcatの画面
にはなりました。次に、webappsディレクトリの下にentryというディレクトリを自分なりに
つくり、その下にWEB-INFディレクトリを作りました。そして、ブラウザから、localhost:8080/entry/
とやると、HTTPステータス404のエラー画面になってしまいます。どうしてでしょうか?
環境変数はCATALINA_HOMEでPATHは;%CATALINA_HOME%binとしました。
コンソールでもset pahコマンドでpathの確認もしました。
なにか間違ってるのですかね?
エラー画面は、
Type: ステータスレポート メッセージ:/entry/ 説明 :The requested resource (/entry/) is not available.
と出てきています。
- 502 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 10:27:46 ]
- >>501
マルチしね。
- 503 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 02:17:22 ]
- オブジェクトをメソッドの引数で渡して、
そのメソッドの中で変更できないことに気づいて驚いています。
混乱…参照渡し???
- 504 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 02:19:58 ]
- あぁぁこれはひどい。良く考えたら当り前だぁ。
ひどい勘違い…。
- 505 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 03:19:55 ]
- 引数で渡されるのはオブジェクトへの参照で、
それを受けた仮引数に格納された参照をメソッドの中で変更しても、
呼び出した側の実引数に反映されるわけではないからね。
やるなら、
メソッドが変更後のオブジェクトを引数でなく戻り値で返すようにするか、
変更したいオブジェクトを内部に持つ別のオブジェクトを渡して、
メソッド内で変更するようにするか。
- 506 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 03:29:38 ]
- もしくは、変更したいオブジェクトを新たなor用意された別のオブジェクトへ差し換えるのではなく、
かつ、必要な内部状態をそのオブジェクトが変更できるのなら、
メソッド内でオブジェクトの内部状態を変更してやれば、呼び出し元で実引数に渡したオブジェクトを変更したことになる。
- 507 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 11:10:50 ]
- 負荷が掛かる処理があって、サーバーのCPUを使用しすぎるなと注意されました。
メソッド内の特定の処理だけを負荷がかからない方法はあるでしょうか。
ちなみに、サーバー内でjavaアプリだけが稼動している場合(telnetとかのデーモン形をのぞく。さらに負荷がかかって以内を仮定)、
常にCPUが80%を越えないようにする方法はあるでしょうか。
- 508 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 11:31:12 ]
- 特定の処理だけ負荷を下げるのなら、VM内ならThreadで優先度を下げておくって手もあるが
サーバ全体だったら、これはOSの話だ。
そのjavaプロセスの優先度を下げておけ。
これでも80%超えるだろうが、他プロセスが優先されれば問題無いんだろ。
- 509 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 14:47:05 ]
- servletの話ですが、ウェブアプリで10分後とに定期的な処理をする場合は、
セッション破棄のリスナーを登録し、
あらかじめ決めておいたセッションの破棄だったら処理をするってな感じにしないとだめでしょうか?
ウェブアプリ内で保持している情報を使用したいので、別起動のバッチ処理はなしなんですが・・・
- 510 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 15:06:35 ]
- >>509
最初のイベント処理でスレッド作って、ウェブコンテナが終了するまでループしていればいいんじゃないの?
あれ、リスナーイベントやサーブレット内でスレッド作れたっけ。作れればそれでいいんじゃないの
- 511 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 09:41:14 ]
- csvファイルを","でsplitするときに、戻り値の配列に","も含めて返すことってできなかったでしたっけ?
commonsのなにかのライブラリか、java1.4のAPIのどれかにそんなことができるものがあったと思うんですが思い出せなくて。
"a,b,c"が"a", ",", "b", ",", "c" の配列になるものです。
Stringのsplitはではできませんでした。
そんなのありましたっけ?
- 512 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 14:31:40 ]
- そんなレアな用途のライブラリはないと思われ
- 513 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 16:22:59 ]
- ,を;,;とかに置換してsplitとか
- 514 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 17:58:11 ]
- >>511
こんなにかわいいString#splitが女の子のわけないだろ!
"a,b,c".split("(?=,)|(?<=,)")
,が先頭のときは最初の要素は空文字列になったり、
,が連続したとき空文字列が間に入るわけではなかったり、
一貫していない気まぐれも魅力。
- 515 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 09:26:47 ]
- コンパイルしたらIOException createprocess error = 3 とか言われたのですが、これってどんな意味でしょうか?
- 516 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 15:37:22 ]
- 全角を半角に、半角を全角に変換をする場合、
1つずつ"ア"なら"ア"に変更と地道にやるしかないでしょうか?
- 517 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 20:00:23 ]
- split(str, -1)で出来なかったっけ?負数にしないと空を無視したはず。
- 518 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 20:49:56 ]
- >>511
String 女の子 = "a,b,c";
String[] 少女 = 女の子.split(",");
String[] 大人の女 = new String[少女.length*2]
for(int i=0;i<少女.length;i++;){
大人の女[i*2] = 少女[i];
大人の女[i*2+1] = ",";
}
結局配列の偶数番目に、","が入ってるだけだって。
- 519 名前:518 mailto:sage [2006/12/06(水) 20:50:51 ]
- あ、最後の","が余計か。
って、何に使うんだろこんなの。
- 520 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 23:54:37 ]
- >>516
計算ではできないからそうするしかないね。
- 521 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 02:40:16 ]
- >>516
たかだか数十種類の文字の変換なんだから変換テーブルを用意してやれば簡単だと思う
- 522 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 15:54:42 ]
- つか、こういう半角/全角変換みたいなよくあるヤツはライブラリないの?
- 523 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 15:57:38 ]
- String.matchesで正規表現の大文字小文字無視オプション適用させることはできるでしょうか?
String.toUpperCase.matchesで大文字としてチェックするで対応しているのですが。これしかないでしょうか?
- 524 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 17:07:59 ]
- >>523
真面目にやるならこうかな?
Pattern.compile(正規表現, Pattern.CASE_INSENSITIVE).matcher(文字列).matches()
- 525 名前:デフォルトの名無しさん [2006/12/07(木) 23:11:33 ]
- http://ja.wikipedia.org/wiki/インスタンス
> instance.set("新しい名前");
これって instance.setName("新しい名前"); の間違いなのではないでしょうか?
- 526 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 01:31:13 ]
- http://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%B3%E3%82%B9
なんだこの記事?
たとえばも何もjavaしか説明して無いじゃんー
- 527 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 01:33:28 ]
- >>525-526
wikipediaの議論はwikipediaで
そのための仕組みもある
- 528 名前:526 mailto:sage [2006/12/08(金) 01:35:24 ]
- >>527
ごめん
でも>>525は純粋にjavaだと思うよ
- 529 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 03:32:16 ]
- >>525
直ってるね。単純な間違いっぽい。
wikipediaは基本的に誰でも編集できるから、
単純ミスはここへ報告するくらいなら自分で直してあげた方が親切だよ。
>>526
まあ「例えば」だしJavaしか無くても仕方ないかも。
インスタンスの説明として、その例えが妥当かどうかは別として。
- 530 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 10:41:33 ]
- よくhashcode()やgetClass().toString()で使用される
インスタンスのアドレス?を使用したいのですが、
hashcode()toString()を親クラスがオーバーライドしていて取得できません。
インスタンスのアドレスを取得する方法はあるでしょうか。
- 531 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 10:57:42 ]
- ありゃアドレスではなく、hashcodeのHEX表記だよ。
ObjectクラスのtoString()実装を見りゃわかるが、
return getClass().getName() + "@" + Integer.toHexString(hashCode());
System.identityHashCode(obj) って方法もあるけどな。
つか、何に使うんだ?
- 532 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 12:08:53 ]
- >>531
ありがとうございます。
インスタンスごとにユニークなIDを返さないといけない要求がありまして・・・
助かりました。
- 533 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 16:37:57 ]
- >>532
System#identityHashCode(obj)が返すデフォルトのObject#hashcode()の値は、
異なるオブジェクトについては「できるかぎり」異なる整数値を返すことになっている。
異なる整数値にならなくてもかまわないので真にユニークであるとは保証されていない。
等価とみなされるインスタンスは必ず同じ結果を返さないといけないが、逆は成り立たないので注意。
- 534 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 16:41:03 ]
- Object#hashcode() → Object#hashCode()
- 535 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 16:44:20 ]
- インスタンス生成時にアプリケーション内でUniqueIDを生成した方がいいんじゃ?
- 536 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 16:53:18 ]
- >>535
俺もそう思う。
ユニークなIDを持たせたいクラスでIDの生成、管理をする方が確実だと思う。
- 537 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 22:26:27 ]
- javaに正規表現はありますが、ワイルドカードはないのでしょうか?
- 538 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 23:20:26 ]
- >>537
ワイルドカードというのは正規表現の一表記法だと思うが。
もし、0文字以上の任意の文字にマッチするものを*、
任意の1文字にマッチするものを?と書くワイルドカードのことを言っているのだとすれば、
それはJavaの正規表現では、*は.*、?は.と書く。
1文字以上の任意の文字にマッチさせたければ.+と書く。
もしかするとワイルドカードでは*は1文字以上の任意の文字だったかもしれないが。
- 539 名前:518 mailto:sage [2006/12/09(土) 01:08:24 ]
- 表記法じゃなくて省略版だな。
- 540 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 01:25:32 ]
- 省略版なんだったらそれは正規表現の表記法ってことじゃんw
POSIXの拡張正規表現どころかUNIXの伝統的な正規表現もカバーできない正規表現っぽい表記法というべきだろ
- 541 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 17:58:59 ]
- すいません。
以前にもお聞きしましたが、weblogicを開発モードに変更してクラスファイルを更新しても反映してくれません。
あくまで開発中のみの対応として、クラスロードーを自作して自力でアンロード・ロードをさせたいと思っています。
サーブレットを1つ用意して、パラメータで取得したクラスを再ロードする感じです。
loadClassをオーバーライドして、
findLoadedClass(String) を呼び出して、クラスがすでにロードされたかどうかを確認する
いきなりfindClassを呼び出せばいいのでしょうか?
クラスをアンロード?するようなメソッドが見当たらなかったので・・・
- 542 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 22:33:47 ]
- FileChannel#transferFromでEOFにぶちあたったかを調べるには
どうしたら良いのでしょうか?
EOFっても-1返さないし。。。
>541
明示的にアンロードする方法は無かったような。
クラスローダがGC対象になったらそのクラスローダから
ロードされたクラスもGC対象になる、だったと記憶している。
# もちろんインスタンスがあるうちはそのクラスはGC対象にできないし、
# クラスがあればそのクラスのクラスローダがGC対象にならないのは言うまでも無い。
- 543 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 08:52:49 ]
- クライアントがJBOSSにアクセスしたときにセッションIDを発行と管理を行う機能を
作りたいのですが、JBOSSのみで実現するほうほうが解かりません。
- 544 名前:デフォルトの名無しさん mailto:sage [2006/12/12(火) 15:14:18 ]
- webアプリはデプロイ単位でクラスロードーが違うことをききましたが、
webコンテナが、一デプロイ用の大元クラス(webアプリとしてみたときの一番トップのクラス?)を作るとき、
新しいクラスローダーを生成して、そのクラスローダーのloadClassでその大元クラスをロードしているのでしょうか?
基本的なことがわかっていなく、説明が下手ですいませんが、教えていただけないでしょうか?
どうしてもweblogicの開発でクラスの即時変更を実現したくて・・・
- 545 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 22:00:50 ]
- >>544
Seasarのhotdeploy技術でも調べてみなよ。
あれは本当すごい技術だから、使ってみるべき。
- 546 名前:デフォルトの名無しさん mailto:sage [2006/12/13(水) 22:59:04 ]
- >>545
そのクラス(機能)だけ使えるのかしら?
- 547 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 11:24:42 ]
- クラスローダは、
AクラスがBクラスをnewする場合、B.class.GetClassLoader()の戻り値はAのそれと同じになるのでしょうか?
ということは、サーブレットのpost処理移行のクラスでインスタンスを作る場合、
サーブレットをnewするときに、リロード可能ClassLoaderのloadClass()でサーブレットインスタンスを作る必要があるのでしょうか?
- 548 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 18:08:34 ]
- ttp://s2container.seasar.org/ja/S2.4SmartDeploy.htmlで
このコンテキスト内では HotdeployClassLoader がスレッドのコンテキストクラスローダーに設定され・・
こんなことできるのかな?
- 549 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 22:15:25 ]
- >547
> AクラスがBクラスをnewする場合、B.class.GetClassLoader()の戻り値はAのそれと同じになるのでしょうか?
なぜ試さない?
public class Foo {
// A=Foo, B=Integer
public static void main( String args[] ) {
System.err.println( Foo.class.getClassLoader( ).equals( new Integer(0).getClass( ).getClassLoader( )));
}
}
- 550 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 22:19:06 ]
- >>549
アホがつれたwwwwww
- 551 名前:デフォルトの名無しさん [2006/12/14(木) 22:29:27 ]
- >>549
見づらい。ナニが言いたいか分からん。
頑張って読んだ>>550には解説して欲しいところだ
- 552 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 22:44:47 ]
- >>551に同意。ぜひ>>550には詳しく解説いただきたい。
- 553 名前:550 mailto:sage [2006/12/14(木) 23:00:34 ]
- java.langのクラスはクラスローダーがないって事が言いたいんじゃね?
俺も>>551と>>552に言われて試してみて初めて気づいた。
- 554 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 09:49:29 ]
- >>548
AクラスがBクラスをnewする場合、B.class.GetClassLoader()の戻り値はAのそれと同じになるのでしょうか?
↑日本語間違えました。これは確認していました。すいません。
ということは、サーブレットのpost処理移行のクラスでインスタンスを作る場合、
サーブレットをnewするときに、リロード可能ClassLoaderのloadClass()でサーブレットインスタンスを作る必要があるのでしょうか?
↑サーブレットクラスを作るのはWEBコンテナですよね。
やっぱりWEBコンテナが実装してくれないとだめなんですかね。
strutsを使っているのですが、ActionServletのデコレーターをつくり、そのクラスのコンストラクタで
loadClass()でActionServletを作ったのですが、
Actionクラスないのクラス変更即時更新ができませんでした。
発想が間違っているでしょうか?
- 555 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 09:54:52 ]
- >>553
なんでないの?
- 556 名前:デフォルトの名無しさん [2006/12/15(金) 13:10:04 ]
- Frameを表示したときに、タスクバー右のアイコン軍に登録ってどうしたらできるのでしょうか
- 557 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 13:22:20 ]
- アイコン軍のとこにハンコと身分証明書持って行く
- 558 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 13:38:50 ]
- 軍?
それよりJava SE 6 Mustangがリリースされたのに
このスレでは誰も注目しないんだな
- 559 名前:デフォルトの名無しさん mailto:sage [2006/12/15(金) 18:50:06 ]
- 6は興味引かれる機能ってのが無いからなあ
>>556
JDK6入れてSystemTrayとかTrayIconとかから調べてみな
- 560 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 10:15:32 ]
- unixのC++言語のロック機能でセマフォって知っていますか?
ロック情報で、インクリメントでロック、デクリメントでアンロック。
ロック: lock++;
アンロック:lock--;
これは違うクラスのメソッド内でも変数にアクセスできれば1メソッド内でなくても、ロックアンロックできます。
javaの場合は、synchronized { }ブロック内でしかできないので、1クラス内でしかロックアンロックできないと認識していますが、
何か別な方法はあるでしょうか
- 561 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 10:36:41 ]
- HashMapはHashTableで管理していて高速と聞きますが、
DBのインデックスみたいなものでしょうか?
WEBのページ訪問追跡機能を考えていて、
まず最初に全20000ページをHashMapに登録(map.put(url.hashcode(), url)。
htmlを表示するごとに、filterでリストに追加(visit.add(url.hashcode()))。
訪問履歴を表示する処理で、リストからハッシュコードを取り出して、HashMapからURLを取得使用と考えているのですが。
20000この中からhashcodeで検索するのって効率がいいのでしょうか?
PCで試したのですが、処理は結構早かったのですが、比較対照がわからなかったので。
またマシンの性能もあるし、HashMapの使用仕方の妥当性から考えたほうが良いかなと思いました。
- 562 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 13:38:19 ]
- >>560
同じ事がしたければ、同じようにjavaでセマフォを使えばいいだけなんじゃ?
synchronizedブロックが、1クラス内でしか排他処理できないという認識は間違い。
ロックオブジェクトを使って排他制御するから、そのロックオブジェクトが見える場所ならどこからでも排他可能。
>>561
その実装ってどうなのよって件は別にして、DBのハッシュインデックスと同じ特性だと思っていい。
件数が増えても、キーがバラバラなら同じコストで検索できる。 キーに重なりがあると正しく動作しないかも。
データ構造と検索コストの関係をググれ。
- 563 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 17:05:10 ]
- >>562
ありがとうございます。
javaでセマフォを使うとは、javaでも直接セマフォと使用できるのでしょうか?
- 564 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 17:30:39 ]
- >>563
JDK 5.0以降ならSemaphoreクラスがある。
古いバージョンしか使えない場合は、自分でセマフォクラスなり変数を用意して
最大値と最小値(普通は0か)をセットして、++と--なりする処理を書けばいい。
- 565 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 17:58:30 ]
- >>564
すごい。1.5はセマフォがあるんですね。ただ1.4.0.8なので自作しかないですね。
方法がわからないのですが、synchronized { ・・・・ }で「{」がロック、「}」がアンロックだと思うのですが、
Class {
lock() {
・・・
}
unlock() {
・・・
}
・・・をどうすればいいのでしょうか。synchronized{・・・}しか知らないので、ロックの状態でメソッドを抜ける方法がわかりません。
- 566 名前:デフォルトの名無しさん mailto:sage [2006/12/18(月) 18:17:31 ]
- いきなりの質問ですみません。
javaの配列計算時に1からxまでの値を計算して、一定の数値のみを出力するプログラムで、xをある一定の値になると
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
となって計算結果が出なくなりますが、解決法を教えてください
出来れば、一部の数値を残して他の計算結果を消すメモリ節約法があればいいのですが。
- 567 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 10:43:19 ]
- >>564
インクリメントは置いといて、ロッククラスを作ってみました。
排他制御が難しくて抜けがあるような気がしますが・・lock・unLockメソッドで排他を掛けています。
public class Lock {
private Stack stack = new Stack();
public void lock() throws InterruptedException {
synchronized (stack) {
stack.push( Thread.currentThread().getName() );
if (stack.size() == 1) {
return;
}
}
wait();
}
public void unLock() throws InterruptedException {
synchronized (stack) {
if (stack.isEmpty() == false && stack.get(0).equals( Thread.currentThread().getName() )) {
stack.remove(0);
notify();
}
}
}
}
- 568 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 18:19:56 ]
- >>566
そのxの大きさと実行環境のメモリサイズにもよるけれど、
もしJVMが使うヒープサイズを拡大するオプションを使っていないのなら、
とりあえず-Xmxでヒープサイズを増やしてみるというのは?
- 569 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 20:09:35 ]
- mainメソッドを終了するときに、全てのアクティブなインスタンスのgc()が呼ばれると思っていたのですが、
試したら呼ばれませんでした。
これは仕様でしょうか?
- 570 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 20:26:53 ]
- mainメソッドが終了するときにガベージコレクタが実行されるなんて仕様はどこに書いてあったの?
- 571 名前:デフォルトの名無しさん mailto:sage [2006/12/19(火) 20:46:38 ]
- >>570
たぶん誤解していて、それが仕様だったと勝手に思い込んでいたみたいです。
gc()は呼べますが、gcを実行するかのタイミングの保証はないので、
main終了のときに、あるインスタンスのfinalizeを呼ばすことはできないでしょうか。
- 572 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 00:13:25 ]
- >>571
うむー。finalize()の呼び出しタイミングもVM依存だしね。
後処理が必要な場合はfinalize()に実装せずに、
後処理メソッドを別に作っておいて、
明示的にそれを呼び出すようにした方がいいんじゃないかな。
- 573 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 09:37:41 ]
- >>572
そうですね。危険な橋渡りはやめておきます。
ありがとうございました。
- 574 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 09:47:48 ]
- org.apache.commons.collections.map.LRUMapでキャッシュのMAP実装がありますが、
古くなり捨てるべきものを捨てるのではなく、シリアライズしてメモリを圧迫させないような実装のMAPって
どこかのプロジェクトにありますかね?
commonsのcollectionにはないですね。
- 575 名前:デフォルトの名無しさん mailto:sage [2006/12/20(水) 12:08:08 ]
- マルチスレッドアプリの中で、あるリストが持っている全てのオブジェクトのトータルメモリ使用量を出せといわれました。
方法としては、シリアライズしてファイルのサイズを調べること意外できないでしょうか?
ただ、シリアライズできないものはアウトですが・・・
- 576 名前:デフォルトの名無しさん [2006/12/21(木) 00:12:07 ]
- Spring+Hibernateで開発してるんだけど、検索の種類が多すぎてDAOの
メソッド激増してしまってるんだけど、DAOの外でHibernateのCriteria
使うとなんのためにDAO使ってるのかわからないし、こういう場合って
特定のO/RマッパーやDBに依存しない汎用のCriteriaを作るべきなんでしょうか?
- 577 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 11:09:17 ]
- Runtime.getRuntime().exec("xxx")でコマンドを実行したとき、
そのコマンドが標準出力にメーセージを吐き出すもので、
コマンドの終了をアプリで待ちたくないので、
終了しないうちに、javaアプリを終了させていますが、コマンドの起動・終了し方として問題ないでしょうか。
ちなみに、コマンドは問題なく動いています。環境はXPです。
- 578 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 12:58:37 ]
- >>577
JDK1.4以下とかの縛りが無ければ、ProcessBuilderでググってみると良い。
- 579 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 13:18:20 ]
- >>578
すいません。
その1.4でした・・・。ProcessBuilderのりダイレクト、ホントのいいですねぃ・・・うらやましい
- 580 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 13:39:35 ]
- 577ですが、アプリが終了しているように見えて終了していませんでした。
public static void main(String[] args) throws Exception {
Process process = Runtime.getRuntime().exec("sleep 10");
System.out.println("end");
}
を実行して、「end」は出ますが、eclipseのデバックコンソールではまだ実行中(停止ボタンの「■」が押せる状態)でした。
勝手に実行させて、そのコマンドの終了を待たずにアプリの終了はだめそうですね・・・。
ただ、WEBアプリ(サーブレット)内でしたいので、1リクエスト中に終わらなくてもスレッドはずっと残るので、
実行したプロセスはほっとけばいい、ほっといてそのうち終わっている、でよいなと勝手に思ってますがどうでしょうか?
- 581 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 14:14:55 ]
- つか、シンプルに戻り値のProcess#destroy()ではダメなん?
- 582 名前:デフォルトの名無しさん [2006/12/21(木) 14:27:16 ]
- オブジェクト指向によるシステム開発において、カプセル化の目的を述べよ。カプセル化しなかった場合に発生しうる問題をあげて説明すること
誰か教えてください><
- 583 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 14:33:20 ]
- >>581
すいません。それだとプロセスが強制終了してしまうので。
WEBでコマンドの実行をして、「実行中です」を表示させて、バックグラウンドでプロセスが走っているようにしたいのですが。
Runtime.getRuntime().exec("sleep 6")って、新しいスレッドで実行していると思ったのですが、
eclipseのデバッグウィンドウで見るとスレッドは生成されていないです。
なのに、カレントスレッドはプロセスとは別に進んでいるなんて・・・
unixのfork()みたいなものなんですかね。子プロセスだった場合Runtimeが子プロセスの面倒を見ているのでしょうか・・・
- 584 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 14:56:15 ]
- javaでマウスポインタの制御はできますか?
できるようなら適当なクラスを教えてもらいたいです。
- 585 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 15:13:59 ]
- >>583
ほっといて確実に終わればいいけど、もし終わらないままだとずっとスレッド残っちゃうぜ。
ある程度の時間でタイムアウトしたら、強制でdestroy()した方が安全。
- 586 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 16:25:31 ]
- >>585
ありがとうございます。
リクエストスレッドではほっといて、ProcessインスタンスはどっかのMapにしまっておいて、
アプリケーション終了処理のサーブレット終了処理で、プロセスが終了していなかったらdestroyっという感じで処理してみます。
- 587 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 21:02:04 ]
- >>584
MouseManagerクラス
- 588 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 04:32:43 ]
- ウインドウをマウスでリサイズするときに
ウィンドウの外に現れる枠を表示する方法を教えて下さい。
- 589 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 04:51:02 ]
- >>588
いったいどこの住民だ?
環境とか書かないと面倒だぜ?
- 590 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 04:54:02 ]
- >>589
環境はWindowsです。
- 591 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 10:51:05 ]
- mainメソッドって他のクラスからも呼ぶことができたのですが、
いい悪いは別にして、コールしても良いのでしょうか?
- 592 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 14:38:47 ]
- >>591
構わないよ。
javaアプリケーションの最初に呼ばれるメソッドというだけで、
別に特別なメソッドってわけではない。
- 593 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 15:00:32 ]
- こういうことだってできる
class A {
public static void main(String[] args) {
if (args.length == 0) return;
System.out.println(args[args.length - 1]);
String[] newargs = new String[args.length - 1];
System.arraycopy(args, 0, newargs, 0, args.length - 1);
B.main(newargs);
}
}
class B {
public static void main(String[] args) {
if (args.length == 0) return;
System.out.println(args[0]);
String[] newargs = new String[args.length - 1];
System.arraycopy(args, 1, newargs, 0, args.length - 1);
A.main(newargs);
}
}
もちろん単純に再帰しても(例えばクラスAのmainの中で自身のmainを呼び出しても)構わない
- 594 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 15:23:16 ]
- Unicodeなら int code = (int)'a'; ですが
シフトジスの文字コードの取得の仕方を教えてださい
- 595 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 15:39:26 ]
- 自作したThreadを強制終了することができません。
Threadのdestoryをjavadocを見たら、自分で実装しろと書いてあったのですが
強制終了するにはどうすればいいでしょうか?
stop()しても、interrupt()してもとまらないです。
- 596 名前:デフォルトの名無しさん mailto:sage [2006/12/22(金) 16:34:50 ]
- >>595
ここを見て愕然としました。
デッドロックのことはわかるけど、実質的に強制終了ができないなんて・・・
tp://www.ep.u-tokai.ac.jp/~nakazato/API/1.4.0/docs/ja/guide/misc/threadPrimitiveDeprecation.html
- 597 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 11:26:14 ]
- >>596
でもweblogicではweblogicをstopコマンドで終了させた場合、スレッドも一緒に強制終了しましたよ。
しかも割り込み冷害は発生している様子はなく・・・
どうやって止めているのだろうか。
- 598 名前:長くてごめんなさい [2006/12/25(月) 16:52:20 ]
- Javaじゃなく浮動小数点演算だろ!って言わないでTT
Win2000 JDK1.3 から Win2003 JDK1.5に(当然マシンも)VUPしたら
4350÷1000=4.35 だったのが 4350÷1000=4.3500000000000005に。
import java.math.BigDecimal;
public class DoubleTest {
public static void main(String[] args) {
double exDouble = 0;
Double exDouble1 = new Double((String)args[0]);
System.out.println("@bitで表すと" + Double.doubleToLongBits(exDouble1.doubleValue()));
exDouble = exDouble1.doubleValue() / 1000.0;
System.out.println("Adoubleで演算 " + args[0] + " / 1000 = " + Double.toString(exDouble));
System.out.println(" LongBitで表示 " + Double.doubleToLongBits(exDouble));
Double exDouble2 = new Double(args[0]);
BigDecimal exDec = new BigDecimal(exDouble2.doubleValue());
exDec = exDec.movePointLeft(3);
exDouble = exDec.doubleValue();
System.out.println("BDecimalで演算 " + args[0] + " / 1000 = " + Double.toString(exDouble));
System.out.println(" LongBitで表示 " + Double.doubleToLongBits(exDouble));
}
結果
@bitで表すと4661504890281918464
Adoubleで演算 4350 / 1000 = 4.3500000000000005
LongBitで表示 4616583683022153319
BDecimalで演算 4350 / 1000 = 4.35
LongBitで表示 4616583683022153318
でも別のWinXPマシンだと
@bitで表すと4661504890281918464
Adoubleで演算 4350 / 1000 = 4.35
LongBitで表示 4616583683022153318
BDecimalで演算 4350 / 1000 = 4.35
LongBitで表示 4616583683022153318
この1bit差はどうして起きるの?
- 599 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 11:57:55 ]
- xmlファイルをxpath形式で出力することって可能でしょうか?
ある程度、同じ形式のxmlファイルを比較したいのですが、単純にdiffすると、
書き方だけが異なるものまで引っかかってしまうので、
前処理として、正規化(?)したいのです。
一旦、xpath形式に変換できれば、比較しやすくなるのではと考えています。
- 600 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 13:07:11 ]
- >>599
無理。xpathは逆の用途だから。そんなものはない
- 601 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 19:59:23 ]
- >>599
xpathじゃなくてxmlファイルをフォーマットすりゃいいんじゃないの?
- 602 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 20:11:45 ]
- >>601
ん?そんなクラスあったけかな?
- 603 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 00:07:37 ]
- 英和辞書を正規表現に変換できれば比較しやすいと言ってるようなもんだな。
- 604 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 09:40:07 ]
- >>599
XMLConfigurationで完璧にできるよ
- 605 名前:sage [2007/01/15(月) 00:39:35 ]
- ちゃんとコンストラクタ書いてるのに")"とか";"がありませんって言われてコンパイルとおらないんですが何が悪いんでしょうか?
- 606 名前:デフォルトの名無しさん mailto:sage [2007/01/15(月) 08:51:57 ]
- コンストラクタと")"とか";"がありませんって言われてコンパイル通らないことは関係ないから
- 607 名前:デフォルトの名無しさん mailto:sage [2007/01/15(月) 11:28:17 ]
- 日本語でおk
- 608 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 01:25:01 ]
- 文句言われるあたりを張れ
- 609 名前:デフォルトの名無しさん [2007/01/16(火) 03:06:04 ]
- k = 0;
for( i = 0 ; i < 3 ; i++ ){
yy = i * card + margin;
for( j = 0 ; j < 4 ; j++ ){
x[k] = j * cardWidth + margin ;
y[k] = yy;
k = k + 1;
}
}
3行目の * でエラーがでます。
どう直せばいいものか、もしわかる人がいるならば教えてください。
- 610 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 03:26:12 ]
- >>609
メッセージには何と書いてあった?
catdとmargin, yyは定義されているのか?
それでも解らなければ
エラーメッセージの内容をここにペーストせい。
- 611 名前:デフォルトの名無しさん [2007/01/16(火) 03:33:51 ]
- vegetarian.java:52: 演算子 * は int,int[] に適用できません。
yy = i * card + margin;
^
vegetarian.java:52: 互換性のない型
検出値 : <nulltype>
期待値 : int
yy = i * card + margin;
^
これです。どうでしょうか・・
- 612 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 04:36:47 ]
- cardじゃなくてcardHeightとみた。
- 613 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 04:38:50 ]
- cardとmarhinとyyの型が本当にint型なのか確認しろ
つうかcardじゃなくてcard[i]だったりしてな。そんな予感がする。
intとint[]型との違いくらいわかるよな
- 614 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 21:03:03 ]
- >>613に1票
配列変数、小学生でも理解できるから大丈夫だろ
- 615 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 12:57:48 ]
- C出身なんですが学校の課題で出たサンプルプログラムで
for(i=0;i<MAX;i++){
button = new JButton();
}
みたいなメモリ確保しっぱなしのコードが出てて脱糞しかけたんですが
こういうのは全部ガベージコレクタ頼りで明示的に解放しないのが普通なんでしょうか?
だとすればガベージコレクタがメモリを回収するタイミングとかは規格で明示されているんでしょうか?
- 616 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 13:04:01 ]
- 明示的に解放しないのが普通
規格で明示されている
- 617 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 16:58:32 ]
- さらに猛脱糞しそうですが
回収タイミングは予測できません。
- 618 名前:615 mailto:sage [2007/01/19(金) 17:07:37 ]
- 返答ありがとうございます
>>617
ひいいいいいい
- 619 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 17:24:47 ]
- >>617
回収タイミングをプログラマに任せないからこそ
JVM側でチューニングの余地もあるわけだ。
JVMでGCをまとめてバッチ的にやるから、全体として
メモリ破棄のパフォーマンスを良くできる。
まあ、バッチが動いている間のパフォーマンスダウンはあるわけだが。
このGC発生タイミングや、GC方法などはある程度チューニング可能。
GCについてはこの辺り参照
http://sdc.sun.co.jp/java/private/hotspot/gc1.4.2/index.html
http://java.sun.com/docs/hotspot/gc5.0/gc_tuning_5.html
※日本語資料はちょっと古くて、登録が必要。
- 620 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 22:13:22 ]
- 今となっては、自分でメモリ開放しないといけない方が脱糞する。
Cでやるにしても、GCライブラリ使うな。
- 621 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:16:48 ]
- おまえら、JAVAの良本を紹介して下さい。
- 622 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 14:42:33 ]
- Effective java
- 623 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 17:39:12 ]
- >622
すまん、本当に良書か? 原書じゃなくて翻訳本も良書なのか?
「柴田芳樹」って調べると、チャンピオンコミックスの漫画家って出るんだが…。
- 624 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 18:47:20 ]
- プ 爆笑した
- 625 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 18:53:57 ]
- わろす
http://www.amazon.co.jp/exec/obidos/search-handle-url/index=books-jp%26field-author=%E6%9F%B4%E7%94%B0%20%E8%8A%B3%E6%A8%B9%26results-process=default%26dispatch=search/ref=pd_sl_aw_tops-5_books-jp_18464543_1&results-process=default?tag2=jp-ja-google-22
れっどまん?
なんじゃそりゃ
とにかく、Java Puzzlerは良書。Effective Javaと合わせて読むとお勧め。
とりあえず中身検索がAmazonにあるから読んでみるべき。
非常に良書。
「Javaの鉄則」「Javaの落とし穴」「Java謎+落とし穴徹底解明」「Javaの格言」
なんかの時代遅れ本と比べたら全然良書でためになるからよむべし。
「Java 謎 落とし穴」は著者がJavaの時代遅れな悪口書いてるだけでなく
IDEやEclipseプラグインなどでどうにかなるものを愚痴ばかり零して
ジジイみたいにあほなこと言ってるのが笑えるがあてにならん。
Java 5からGenericsやアノテーションが出てからどうでもよくなった項目が
実に多いが、Effective Javaは超おすすめ。
Javaの鉄則も良い本だが、時代遅れな点が多い。Javaの格言はもっと時代遅れ。
Java謎+落とし穴徹底解明はさらに時代遅れだがw
- 626 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 19:01:50 ]
- 柴田芳樹でググったら「鳥女」とかいうくだらない漫画が出てきた。
http://ww36.tiki.ne.jp/~kishiyo22/index.htm
プロフィールをみると技術書の翻訳などやってないようだ。
2004年にフリーターになったと書いてある。
恐らく同姓同名の別人だな
- 627 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 19:03:14 ]
- jはてなダイアリーキーワードでは
柴田芳樹
http://d.hatena.ne.jp/keyword/%BC%C6%C5%C4%CB%A7%BC%F9
このキーワードはまだ登録されていません。
と表示されている
- 628 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 20:00:11 ]
- 2001年に翻訳してるが、本格的に翻訳本がたくさんではじめたのは2005年ぐらいからじゃね?
- 629 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 20:03:39 ]
- >625
しかし、6年も前に出た本が良書とは…。Javaの世界とはなにか速度が違うな。
- 630 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 20:17:26 ]
- 言語の世界の最先端が、Javaに実装されるまではタイムラグがありますし。
まあいいものは長くイイ。そういうことでしょう
- 631 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 17:25:44 ]
- ライブラリが追加されたり機能が増えたりしても、基本的な考え方は変わらん。
理論と経験に基づく「やっていいこと・悪いこと」が書いてあるノウハウ本が結果的には良書なのですよ。
- 632 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 18:11:20 ]
- >>629
日付をよく見ろ、まだ6年も経っていない。
5年前だ。
Java5からJava Genericsが登場したため。
Genericsに対応したEffective Javaを出して欲しいという
要請がある。
あの本、Genericsが出る前のものだったから
TypeSafe Enumクラスの作り方まで丁寧に乗せている。
そういうところは確かに古い。
それからJava Puzzlerはまだ新しいぞ。まだ1年くらいしか経っていない。
Java One Tokyo2005のときに宣伝されていたからな
- 633 名前:デフォルトの名無しさん mailto:sage [2007/02/03(土) 12:40:08 ]
- >>632
enumがなかったからTypeSafe Enumの作り方を丁寧に解説してるというか、あの本のTypeSafe Enumがenum型として取り込まれたという感じだよな。
- 634 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 01:08:47 ]
- >>621
「Java Concurrency in Practice」
翻訳の語彙が気にならないのなら->「Java並行処理プログラミング」
- 635 名前:デフォルトの名無しさん mailto:sage [2007/02/07(水) 11:38:04 ]
- nio勉強していますが、あまり使われていないですね。
私はC上がりなので、selectシステムコールの形がすきなのですが
javaはリスンしてからスレッド生成で、みんなで待ちって感じが普通ですかね・・・
- 636 名前:デフォルトの名無しさん mailto:sage [2007/02/07(水) 17:06:56 ]
- 配列型ってあるのですか?
getClass()の出力で見ると配列かどうかで違うのですが。
- 637 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 10:08:53 ]
- Cではファイルポインタに対してcloseしなくても
main終了後に自動的にflushされていましたが、
javaではcloseしないでmainを終了すると、データが書き込まれていませんでした。
もちろんwriteしてからexitしてます。
これは仕様でしょうか?
- 638 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 11:52:28 ]
- 仕様
バッファがあっても無くても、flushしなかった場合の結果は保証されない
- 639 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 13:27:52 ]
- >>638
ありがとうございます。
すっきりしました。
- 640 名前:デフォルトの名無しさん [2007/02/09(金) 17:20:38 ]
- 一度描画した後の物体の色を変更したいのですが、CylinderではShape3DのようにsetCapability(Shape3D.ALLOW_APPEARANCE_WRITE)みたいなことはできないのですか?
- 641 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 19:17:14 ]
- >>640 Graphics.setColor
- 642 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 23:56:09 ]
- >>635
チャネルを使うことで非同期処理により、高速化が期待できるのだよ。
- 643 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 23:57:45 ]
- >>636
ある。Arrayという型はまた別の型。リフレクション用。
ObjectはObject型、StringはString型だが、Object[]やString[]は配列型
配列型はObjectクラスを継承していると見なされる参照型でもある。
- 644 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 23:58:31 ]
- >>637
そういう使用。
エラーで終了しても確実な処理をさせたければ、
finallyでclose()するように。
- 645 名前:デフォルトの名無しさん mailto:sage [2007/02/10(土) 23:59:24 ]
- >>640
マルチポストするなウザイぞ。
なぜウザイか、おまえにわかるか?
で、やり方は解ったんだな?
マウスリスナーについて、いい加減に理解したか?
- 646 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 05:05:29 ]
- >>635
いや、普通に、selectに対応するSelectorがあるよ
ただし1.4以降の機能で使いこなせてるひとも少ない
Linuxでは、JDK5_10以降において実装でepollを使えるようになった
これで利用する人も増える・・・かもしれない
- 647 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 10:49:39 ]
- flush・配列・selectの件勉強になりました。
ありがとうございます。
- 648 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 11:39:15 ]
- これはデッドロックにならないのですが、同じスレッドが同じインスタンスにロックする場合は
デッドロックにはならないでしょうか?
String a = "a";
synchronized (a) {
synchronized (a) {
System.out.println("aaa");
}
}
- 649 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 15:34:48 ]
- >>648
ttp://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.19
- 650 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 16:28:55 ]
- >>649
マルチスレッド環境ではデッドロックですか・・・
- 651 名前:デフォルトの名無しさん mailto:sage [2007/02/13(火) 19:35:00 ]
- Java言語で学ぶデザインパターン入門 - マルチスレッド編 【Java SE 5 java.util.concurrentパッケージ対応】
を見てみよう。
- 652 名前:デフォルトの名無しさん mailto:sage [2007/02/14(水) 19:33:28 ]
- >>650
どこを読んだら そーゆー解釈になるんだか……
- 653 名前:デフォルトの名無しさん mailto:sage [2007/02/14(水) 21:04:28 ]
- サーブレットでのクッキーの使い方がわかりません…
HTMLのフォームから入力したデータをクッキーに焼くにはどうすれば…??
- 654 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 11:21:14 ]
- >>652
英語難しいですね・・・。
日本語のjava言語仕様はwebにはないのでしょうか?
本屋ではありましたが、高くて・・・
- 655 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 12:04:29 ]
- 翻訳もあるぞ
プログラミング言語Java
っていう本を読め
- 656 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 17:31:54 ]
- >>654
古い版のJLSは日本語訳がweb上にあるよ。でも最新版は見たことない。もしあったら教えて。
- 657 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 15:27:31 ]
- javaでgnuPGみたいに公開鍵暗号化方式でネットワーク通信したいのですが、
そんなものあるでしょうか?
jakartaのcommonsというツール?にあったのですが、
なにか正式リリースではないようなので他にないかと。
- 658 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 16:33:12 ]
- DESっていうのがありました。
- 659 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 07:37:59 ]
- >>657
よく分からんけど認証鯖がないP2Pな暗号路を作りたいなら、
鍵交換はDH法でやって、交換された鍵を使ってRCなんかで暗号化するんじゃ無いのか?
このアタリは確実にどこかの誰かがやってて、しかも大きいライブラリがあるから調べるといい
- 660 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 13:28:05 ]
- >>657
>公開鍵暗号化方式でネットワーク通信
HttpsURLConnection
- 661 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 18:57:29 ]
- あ
- 662 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 19:03:52 ]
- System.in.readを使用して、コンソールから1文字入力するたびにreadをリターンさせることはできないでしょうか?
現在エンターを押さないとreadがリターンされません。
- 663 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 19:35:10 ]
- ちなみにむりやりバッファリングをしないようにしてみましたが
↓はだめでした。
BufferedInputStream b = (BufferedInputStream)System.in;
Field f = BufferedInputStream.class.getDeclaredField("buf");
AccessibleObject.setAccessible(new AccessibleObject[]{f}, true);
f.set(b, new byte[1]);
byte[] a = new byte[1];
System.in.read(a);
System.out.println(a);
- 664 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 19:39:35 ]
- http://www.hcn.zaq.ne.jp/no-ji/reseach/20001128.htm
- 665 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 19:41:40 ]
- http://www.velocityreviews.com/forums/t237234-getch-in-java.html
コンソールアプリケーションにそんな概念が無いので、JNI使えって風にみえる
- 666 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 10:55:15 ]
- >>664
ありがとうございます。
難しいですけどなんとなくわかりました。
イベントってやつを使わないとだめなんですか・・・
- 667 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 11:07:31 ]
- > だめなんですか・・・
まず使ってみてから結論付けしようね
- 668 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 13:55:43 ]
- WEBアプリで、WEB-INF/classes以下を含むクラスパス一覧を取得できるでしょうか?
もっといいますと、サーブレットの中で、その時点で有効なクラスパスの一覧を取得したいのですが。
System.getSystemProperty("java.class.path")では、java起動時のパスしか取れなくて、他の手段がわかりません。
ClassLoaderクラスのpublicメソッドにも取れそうなものがありませんでした。
java1.4です。
- 669 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 10:47:28 ]
- unixの「file」コマンドで、下記のようにファイルの形式を判断できますが、
javaのクラスで、似たような機能を持つクラスはありますでしょうか。
【unixコマンド】
# file cvs.tar
cvs.tar: POSIX tar archive
- 670 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 15:49:18 ]
- >>669
あるっちゃあるけど。
javax.swing.filechooser.FileSystemView#getSystemTypeDescription(File)
現状では Windowsでは「関連付け」の情報を返してくれるけど
*nix ではファイル/ディレクトリの区別ぐらいしかしない。
javax.activation.FileTypeMap#getContentType(File)
現状では デフォルトで登録されてるファイルタイプの種類が少ない。
- 671 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 11:29:24 ]
- strutsなどのパッケージ中にあるクラスを入れ替えたい場合、
WEB-INF/classesいかに同じパッケージ名+同じクラス名でclassファイルを置いて、
自作のクラスパスが優先される設定にして、
強制的に入れ替える方法は邪道でしょうか?
- 672 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 14:34:06 ]
- 強引だけど、ほかにはjarを別構築するくらいしか方法もないし、いいんじゃない?
- 673 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 16:18:21 ]
- >>672
ありがとうございます。
strutsなどはapacheライセンスというのでしょうか、そのjarを再構築するのはライセンス違反ですか?
- 674 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 17:02:47 ]
- 違反じゃないよ。
- 675 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 17:09:55 ]
- >>674
ありがとうございます。
その方向で修正します。
- 676 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 11:13:06 ]
- リストからイテレーターを取り出してループ処理をしている最中に、
リストに要素を追加するとエラーになってしまいます。
どうもそのような仕様らしいですが、ループ中に追加してもエラーにならない方法はあるでしょうか。
- 677 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 12:05:31 ]
- >>676
仕様違反な、エラーにならない List を自作すれば良いのでは?
- 678 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 13:17:19 ]
- >>676
ListIterator
- 679 名前:デフォルトの名無しさん [2007/04/23(月) 00:22:45 ]
-
- 680 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 15:50:41 ]
- すいませんコンパイルができません・・orz
プリーズヘルプミー
class JPanelset extends JPanel
{
JPanelset()
{
JRadioButton jr_a = new JRadioButton("A", true);
JRadioButton jr_b = new JRadioButton("B", true);
jr_a.getForeground(Color.red);
}
}
getForeground() (java.awt.Component 内) を (java.awt.Color) に適用できません。
jr_a.getForeground(Color.red);
^
↑こんなエラーメッセージが出ます・・・orz
- 681 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 21:00:03 ]
- >>680
色を取得したいのか設定したいのかによるけど
jr_a.setForeground(Color.red);
にするか
Color color = jr_a.getForeground();
にするかで解決と思われ。
- 682 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 05:31:12 ]
- >>681
助かります。
ありがとうございました^^
- 683 名前:デフォルトの名無しさん mailto:sage [2007/04/28(土) 21:15:59 ]
- すまん、javaの言語仕様の
Integer Literalsで符号の定義が見当たらんのだかどこに書いてあるの?
- 684 名前:デフォルトの名無しさん mailto:sage [2007/04/28(土) 22:34:45 ]
- 符号はリテラルではないよ。
単項演算子
- 685 名前:デフォルトの名無しさん [2007/04/29(日) 01:59:10 ]
- すみません、ホームページビルダーが作ってくれたjsなんですが
CGIに組み込むと動きませんでした。
単体では動作するので、何か変態な仕様なのかと思いました。
一般的なものに校正していただけませんでしょうか?
よろしくお願いします。
<!--HPB_SCRIPT_CODE_40
function _HpbShowObj(lId)
{
var ob;ob=new Array;
var appVer=parseInt(navigator.appVersion);
var isNC=false,isN6=false,isIE=false;
if (document.all && appVer >= 4) isIE=true; else
if (document.getElementById && appVer > 4) isN6=true; else
if (document.layers && appVer >= 4) isNC=true;
if (isNC)
{
w_str = "document." + lId;ob[lId] = eval(w_str);
if (!ob[lId]) ob[lId] = _HpbFindHiddenObj(document, lId);
if (ob[lId]) ob[lId].visibility = "show";
}
- 686 名前:685 [2007/04/29(日) 01:59:40 ]
- if (isN6)
{
ob[lId] = document.getElementById(lId);
ob[lId].style.visibility = "visible";
}
if (isIE)
{
w_str = "document.all.item(\"" + lId + "\").style";ob[lId] = eval(w_str);
ob[lId].visibility = "visible";
}
}
function _HpbFindHiddenObj(doc, lId)
{
for (var i=0; i < doc.layers.length; i++)
{
var w_str = "doc.layers[i].document." + lId;
var obj;obj=new Array;
obj[lId] = eval(w_str);
if (!obj[lId]) obj[lId] = _HpbFindHiddenObj(doc.layers[i], lId);
if (obj[lId]) return obj[lId];
}
return null;
}
//-->
- 687 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 02:01:18 ]
- Javascript は Web 制作板、CGI は Web プログラミング板へ。
- 688 名前:685 [2007/04/29(日) 02:10:40 ]
- 移動します
- 689 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 20:49:21 ]
- ちょっと寂しい気持ちになったが為になった
ありがとうム板さようならム板
- 690 名前:デフォルトの名無しさん [2007/05/01(火) 10:29:45 ]
- (´Д`)ノシ
- 691 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 10:24:57 ]
- ORマッピングなどでよくStatementクラスのProxyを使っていますが、
これってProxyしなくて、デコレートすればよくない?って思ったのですが、あえてProxyを使うメリットはあるのでしょうか?
- 692 名前:デフォルトの名無しさん [2007/05/02(水) 21:00:39 ]
- JAVAでxlsファイル(計3シート)を
csvファイルに変換したいのだが・・・。
どうしてもcsv変換後は前と(セルの中身)配置が違う。
どうしたらいいんだ〜!誰か・・
エレガントなロジックをおしえてくれぇぇ!!
なお、読み込みにはPOIを使用してます
- 693 名前:デフォルトの名無しさん [2007/05/02(水) 21:23:22 ]
- >>692
エレガントも何も・・・。
何がどう「配置が違う。」のか分からない。
もう一度質問を読み直してみろ。
- 694 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 21:37:34 ]
- まるちんこ
- 695 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 05:55:43 ]
- >>691
デコレートは、オブジェクトを作る時点ですでにそのクラスになっていないといけないから、できてしまったStatementオブジェクトに機能を追加するならProxyではないだろうか?
オブジェクト生成がコントロールできるならデコレートが使えるけど、オブジェクト生成はコントロールできないから。
デコレートだと登場オブジェクトはひとつで、Proxyだと登場オブジェクトは元オブジェクトとProxyオブジェクトの2つになる。
- 696 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 23:06:40 ]
- コンストラクタの実行に時間がかかるクラスを作ったんで、カウンタ設置してその値に応じてJProgressBarで経過を表示しようとしたんだが、コンストラクタの実行中はバーが全然更新されなくて、実行終了後に更新されてバーがMAXになる。
どうすれば・・・
- 697 名前:デフォルトの名無しさん [2007/05/06(日) 01:38:55 ]
- JTextFiedlやJTextAreaで全角文字が入力されたのはどうすれば検出できるでしょうか?
actionPerformed、keyPressed、keyTypedでは半角文字の入力しか検出できなくて・・・
- 698 名前:697 mailto:sage [2007/05/06(日) 01:51:52 ]
- >>697
自己解決しました・・・
普通にkeyTypedで検出できますね。
keyTyped時に行ってる処理の影響で検出できないようになってましたorz
- 699 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 02:34:35 ]
- >696
ひとつのクラスに処理を詰め込みすぎている可能性があります。
まずはクラス設計を見直しましょう。
- 700 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 03:16:35 ]
- >>696
長い処理の間は、画面の更新されない。
適当にrepaintかなんかよびだす
- 701 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 19:41:23 ]
- >>699
>>700
ありがとうございます。
あとSwingWorkerというものを使う手もありました。
- 702 名前:デフォルトの名無しさん mailto:sage [2007/05/07(月) 22:56:08 ]
- >>701
標準バンドルのSwingWorkerは、JavaSE6以降なので一応気をつけて・・・
でも、コンストラクタに処理を詰めすぎなのはProgressバーの進捗と関係なく
やっぱちょっとコード見直した方がいいと思うよ。
- 703 名前:701 mailto:sage [2007/05/07(月) 23:27:37 ]
- >>702
最近SE6になったのを知って早速いれました。
やっぱつめすぎはだめなんですね。
自分も作ってるとき少し感じてたんですが・・・
見直してみます。
- 704 名前:デフォルトの名無しさん [2007/05/08(火) 11:23:15 ]
- >>1
ではさっそく質問します。
最近PCを購入したのでそれでJavaを始めたいとおもいます。
どうすればいいですか?
- 705 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 18:04:32 ]
- いろいろインストールする
- 706 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 18:11:09 ]
- 必要なものの目安としてはeclipse,JDK,tomcat,各種DBどれか,struts。
0から覚えるの大変そうなので書いてて悪寒がした。
まずJDKだけインストして、他は色々落ち着いたらで。
- 707 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 18:32:12 ]
- >>706
いやいや、始めに色々列挙したけど最後ぶった切りすぎだろw
eclipceは入れておいた方が便利すぎる
- 708 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 19:24:37 ]
- eclipse確かに便利だが、素人の内は手動でやった方がよくないか?
- 709 名前:704 mailto:sage [2007/05/09(水) 11:55:16 ]
- アドバイスありがとうございます。
まずはJdkだけをインストとのことですが、
それはどうやればいいんでしょうか?
- 710 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 12:04:51 ]
- jdk インストール でググれ
終わったら 環境変数 java でググれ
- 711 名前:704 mailto:sage [2007/05/09(水) 14:28:41 ]
- ありがとうございます。
JDK1.3.1というのをDLできました。
- 712 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 19:19:16 ]
- >>711
釣りか?釣りなのか?敢えて釣られてやる。
せめてJDK 6u1にしてくれい(よりによって1.3.1…)
あと「Java SE 6 ドキュメント」もあわせてDLしておいたほうがいいぞ
- 713 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 21:02:36 ]
- 釣りにしか聞こえんwってかそっち落とす方が難しいだろ・・・
- 714 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 21:03:47 ]
- wwwwJDK1.3.1 持ってこれるってどれだけ熟練してんだかww
- 715 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:15:29 ]
-
初心者です。JDK1.3.1というのをダウンロードする方法を教えてください。
- 716 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:19:10 ]
- もう釣られないんだからね!
- 717 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:20:11 ]
- JDK1.3.1 でググって最初のページ
っていうか普通の落とせ
- 718 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 05:41:08 ]
- JDKでググって出てきたダウソページから過去のダウンロード見たいなの
たどっていけばダウソできる。
余程の事が無い限り落としてくるな。何故かというと落とした後のサポートレスがダルイからだ。
普通ならJavaSE6、事情があってもJDK5までにしろ。
1.4以前は知っている奴(というかのっぴきならない事情のあるやつ)のみ使え。
- 719 名前:704 mailto:sage [2007/05/10(木) 15:56:08 ]
- >>712
ありがとうございます。
そっちの 6u1と SE6ドキュメントというやつのDLに挑戦してみようと思います。
- 720 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:08:00 ]
- ストリングのハッシュコードから文字の復元はできますか?
ハッシュコードでユニークになるということは、復元できるのかなと思うのですが。
ただ復元メソッド的なものは無いので・・・
- 721 名前:704 mailto:sage [2007/05/11(金) 13:25:15 ]
- >>720
わかりません
- 722 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:28:16 ]
- >>720
できない。
そもそも、String#hashCode() の戻り値が完全にユニークである事は保証されてない。
- 723 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 14:09:10 ]
- http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/String.html#hashCode()
System.out.println("A`".hashCode());
System.out.println("BA".hashCode());
結果は両方 2111
- 724 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 15:24:16 ]
- >>723
ええええええええええええええええええええ!そうなんですか。
じゃはすべてのハッシュマップへのキーを今から見直さないと・・・
- 725 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 20:03:13 ]
- >>724
もしかして、万一
「HashMap にキー "A`" のエントリとキー "BA" のエントリの両方は格納できないのでは?」
と心配しているのでしたら、
内部の 2111 にあたる欄に2つのエントリとも格納されるだけなので、
気にする必要はありません。
- 726 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 23:36:51 ]
- >>725
どうもありがとうございます。
先走りました。
- 727 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 00:06:55 ]
- 等しいと判断される二つのもののハッシュ値は同じにならないといけないが、
等しくないものに対するハッシュ値が同じになっても構わない。
できるだけ違った値になった方が少し効率がよくなるだけ。
- 728 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 12:00:35 ]
- Stringの情報をなるべく短くして管理したいと思っています(メモリ節約)。
長さに制限が無いStringを、固定の文字長でユニークにすることはできないと思っていますが、
MessageDigestを使えばできる的な事がどこかで紹介されていました(理屈は書いてませんでしたが)。
確かにパスワードなどでよく使用しますが、MessageDigestで上記が実現できるのでしょうか?
- 729 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 17:11:41 ]
- > MessageDigestを使えばできる的な事がどこかで紹介されていました(理屈は書いてませんでしたが)。
無理。
・Stringに必要なメモリ > MessageDigest に必要なメモリが複数あれば、
別々の String に対してMessageDigestが衝突する可能性がある。
・MessageDigest に必要なメモリ > String に必要なメモリであれば、
MessageDigestを使うと逆に必要なメモリが増える。
・そもそも、MessageDigest からは String を復元できない。
- 730 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 05:12:03 ]
- >>728
そういうことをやりたいならハッシュやダイジェストがキーワードではない。
普通に可逆圧縮しろ。
圧縮後のデータを管理するときに、さらにハッシュを使うというのはありだけど、
それもメモリ容量の節約にはならない。
ハッシュはメモリを余分に使うことで時間を節約する技法。
ハッシュが事実上一方向関数であるということを認識すべき。
特にMessageDigestのようなものは多対一の写像なので元に戻すのは不可能。
自分で可逆圧縮の実装をするのが面倒ならDeflaterとInflaterがある。
メモリ節約を考えるほどだから、それなりに長い文字列を扱おうとしているんだろうけど、
もし短いようなら、この圧縮方法は向いていないので注意。
使い方のサンプルがDeflaterの説明にある。
- 731 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 10:52:05 ]
- >>730
ありがとうございます。
調べてみます。
ちょっと話がずれますがMessageDigestも多対一ということは、
パスワード認証で、入力→ダイジェスト→DBのダイジェストされた値と比較 の流れで実装していますが、
誤認証の可能性もあるということでしょうか。
現在パスワードのマックスは100バイト(全角も可)になっています。
- 732 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 12:27:19 ]
- >>731
ダイジェストを得るのに使用しているハッシュ関数が優秀であれば、
誤認証(異なるパスワードで同じダイジェストを生成)の可能性は、
入れるパスワードの数(長さではない)にのみ依存する。
例えば、ハッシュ値長160ビットでダイジェストするとし、
入力された2^10=1024個のパスワードで同じダイジェストになる確率は、
1/2^70程度となる(ttp://burtleburtle.net/bob/hash/hashfaq.html#unique)。
ということで、管理するパスワードの数にもよるけれど衝突する可能性は結構低い。
でも、衝突しないという保証は決してできない。
- 733 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 12:33:48 ]
- >>732
○ パスワードで同じダイジェストになる確率は、
× パスワードの中で同じダイジェストになるものが存在する確率は、
- 734 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:43:16 ]
- J2EEコンテナでリモートアクセスが出来ますが、これってRMIの使用して実現しているのでしょうか。
こんな感じに ttp://www.hellohiro.com/rmi.htm
- 735 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 12:03:47 ]
- >>730
ありがとうございます。
Deflaterのjdocを見ましたがサンプルらしきものがなかったです。
- 736 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 12:29:14 ]
- >>735
君の目は節穴だな。
DeflaterにもInflaterにもサンプルコードがあるというのに。
- 737 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 13:05:38 ]
- >>736
すいません。1.4見てました。
- 738 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 15:13:08 ]
- あああ
- 739 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 15:17:24 ]
- WEBコンテナ実行中にeclipseでデバッグ接続して、ソース変更でホットコードリプレイスによりコード即時置換できますが、
linux環境で、WEBコンテナ実行中(デバッグモード)中に、修正したclassを使用してコードを置き換えることはできないでしょうか。
たとえば下のようなコマンドがあるとか。
ホットコードリプレイスができるコマンド 修正クラス
- 740 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 15:25:39 ]
- >>739
seasar2使え
- 741 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 16:08:11 ]
- ランタイムのrt.jarのクラスファイルを置き換えようと思い
rt.jarをjar xfv rt.jarで解凍した後、java.io.File.classを独自なものに置き換えて、jarcfv rt.tar rtってやったけど
圧縮サイズは元のものとぜんぜん違うし、javaを実行すると、java.lang.Object.classが見つかりませんってなります。
どこがいけないのでしょうか?
- 742 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 16:38:17 ]
- >>741
無茶するなぁ
動作保証されてる提供クラスを俺様クラスに置き換えって…
悪いことは言わん、元に戻してFileクラス拡張することを考えろ。
- 743 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 16:41:06 ]
- >>741
そういうときの為のOOPだと思うんだけど…
- 744 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 17:03:22 ]
- ちょっとライセンス斜め読みしてみたけど、rt.jar内のクラス入れ替えってソフトウエアの改編にあたらね?
利用許諾違反になっちまわないか?
- 745 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 17:24:13 ]
- > 743
OOPってのは、想定外の用途に対応できるような万能ツールじゃないからな。
> 744
OpenJDKを待てってことだな。
ということでOpenJDK使ってソースからビルドしなおすほうが安全かもね。
- 746 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 17:30:48 ]
- >>745
OOはともかくとして、普通は java.io.File を改変するよりも改変せずに済ませる方法考えるけど。
配布とか保守とかの手間考えるとコスト高いし。
ってか、なんで >>741 は java.io.File 改変したかったんだろ?
- 747 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 19:51:38 ]
- Fileに機能拡張したかったんでそ。
APIが返してくるオブジェクトにその機能が欲しかったとか。
欲しいフィールドがprivateだったとか。
まあ、privateメンバにアクセスするならリフレクション使えば問題ないが。
あとは、デフォルトコンストラクタが欲しいとかかな。
JAXBみたいに、スーパークラスにデフォルトコンストラクタがなかったら使えないようなライブラリがあるから、継承して拡張とかは意味なかったりするし。
- 748 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 20:17:58 ]
- > privateメンバにアクセスするならリフレクション使えば問題ない
こーゆー感覚も怖いけどな。
> あとは、デフォルトコンストラクタが欲しいとかかな。
これはフレームワークが対応してりゃ 1.6で追加された
java.beans.ConstructorProperties が設定されたコンストラクタがあれば必要なくなってくかも。
まぁ、無視される可能性も高いけど。
- 749 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 20:32:36 ]
- privateで持ってる値を見たかったらソース書き換えるかリフレクションしかないだろ。
標準APIでネイティブ関連の情報を持っていたり、フレームワークに関する重要な情報があったりすると、はっきりいってそれしか選択肢はないしな。
ConstructorPropertiesって、複合型のプロパティ指定するやつだから、デフォルトコンストラクタがないことの解決にはならんような。
5.0対応のライブラリもようやく出揃ったくらいなのに、6の機能使ったライブラリなんか皆無だな。
- 750 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 21:17:29 ]
- > はっきりいってそれしか選択肢はないしな
private で持ってる値を見なくても良い方法を考えた方が……
> ConstructorPropertiesって、複合型のプロパティ指定するやつだから
プロパティに初期値与えられるようにするもの。
デフォルトコンストラクタ + setter/getter だけだったものが
@ConstructorProperties 付きコンストラクタ + getter でも表現できるようになるわけで。
- 751 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 21:53:05 ]
- ブートストラップを変えればすむだろ?
- 752 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 22:30:11 ]
- 741ですが、やりたかったことはフレームワークが使用しているファイルを調査したかったから。
ソース添付してFileのコンストラクタで条件付ブレイクを張れば簡単にできるけど、
しょっちゅう呼ばれるクラスに条件付ブレークを設定するとものすごく遅くなるので、Fileのコンストラクタで
設定ファイルからファイル名を取り出して、そのファイル名でコンストラクタを呼んだときにブレイクさせたかっただけ。
- 753 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 22:44:05 ]
- >>750
privateで持ってる値に興味があって、普通には見れないときには、ほとんどの場合ほかに手はないよ。
- 754 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 23:17:41 ]
- >>753
private になってるって事は他人が見てはいけない/見なくてもいいはずのもの。
見ないで済む方法を考えるのが先っしょ。
- 755 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 23:25:39 ]
- だから、見ないで済む方法がないときにどうすんのって話してんのさ。
低レベルに近かったり、フレームワークに近かったりするほど、そういうことは多々ある。
きれいごとじゃプログラム組めないよ。
- 756 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 23:27:01 ]
- privateになってるってことは、他のクラスからも見えないってことだから、そのクラスにアクセス手段がなければリフレクションしかないってことだからな。
- 757 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 23:35:28 ]
- >>755
> だから、見ないで済む方法がないときに
だから、>>747 はそれを確かめずにリフレクションの話してるから怖いって言ってるのさ。
- 758 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 00:14:35 ]
- 水掛け論だが754のレス先の753では「普通には見れないとき」とわざわざ断ってるわけだが。
フレームワークの機能拡張する場合には、そういう場面に遭遇することがある。
フレームワーク作者は、フレームワークを単純に利用することだけ考えがちで拡張についてはあまり考えが至らないことがあるからな。
privateになってるってことは、privateって書いたやつが「見てはいけない/見なくていいはず」と思ったというだけであって、そうではないこともある。
特に、privateのフィールドまでたどりついたときには、他に手がないことがほとんど。
- 759 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 00:43:11 ]
- >>758
まずはフレームワークの修正が本筋で、
どうしようもない時は回避策として利用してもいいかもしれないが
でも、リフレクションとか使った拡張はあくまで回避策と認識しておくのがよいな。
- 760 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 00:49:12 ]
- セキュリティーマネージャとかがいると、プライベートアクセスに問題があるの?
- 761 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 01:06:55 ]
- >>753
逆に言うと、それまで 2〜3個レスがあるのに断り書きすら出てこないわけじゃん。
怖いよなぁ、やっぱり。
> そうではないこともある。
読む方が そう思わなかったというだけであって…… と言い返されたら水掛け論。
あんまし自分の能力を過信しない方が良いと思うよ。
>>760
ReflectionPermission "suppressAccessChecks" が許可されてないと、
AccessibleObject#setAccessible が SecurityException 食らう。
- 762 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 01:07:55 ]
- ×>>753 ○>>758
- 763 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 02:11:51 ]
- 基本は拡張には開かれてて、修正には閉じられている。
個人的には、privateアクセスやfinalクラスは好きではない。
本人がそうしたくても、他人から見たらそこに有意義なコードがあれば再利用したいし、
拡張の発想なんてたくさんの人が多岐に持っていると思う。
privateやfinalにしないで、コメントで注意してね見たいなjdocタグがあればいいと思う
- 764 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 02:16:28 ]
- >>763
たしかに!Stringやラッパークラスがfinalがゆるせない。
- 765 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 02:21:36 ]
- 注意できない奴等が引っ掻き回しやがるから利便性を捨ててでも制約をかけざるを得ないんじゃないか
- 766 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 02:28:29 ]
- >>1
おれはこの3年間必死にJAVAを勉強してきた。
実際クソみたいな言語仕様だが改良に改良を重ねた1.5はチト使える。
よって、まともな言語としての扱いを受けるスタートラインにやっと立ったと言える。
ってあるけど、javaよりいけてる言語は?
- 767 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 03:28:20 ]
- Q.いけてる言語は?(複数選択可)
□JAVA ☑3年間必死に勉強してきたJAVA ☑Java □java □その他( )
- 768 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 04:12:34 ]
- JavaFX , Pnuts
- 769 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:12:55 ]
- >> 764
Stringとかラッパークラスは、実装上しかたない部分もあるんだよ。
- 770 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:13:47 ]
- 誤解してるやつ多いみたいだけど、JavaFXはJava言語で使えるよ。JavaFX用の言語はJavaFXScriptだ。
- 771 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:17:36 ]
- >>761
レス先に書いてあることを無視して話すすめられたら、やりとりにならんわけで。
ひとりで怖い怖い言ってればいいよ。
- 772 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:30:04 ]
- マルチスレッドである変数に並列アクセスする場合、
代入、参照の先勝ち、後勝ちがどうでもいい場合でも、ロックをして同期をしなければならない?
スピードアップが求められる処理なので、なるべくロックはしたくないなと。
もっというと、javaの場合、複数ロックしたとき開放される順番がロックを書けた順番ど通りになることが保障されないから
ロックかけたくないんだよね。今回順番が大事だから。
読み込みスレッド
multiReferenceInstance = overrideInstance;
使用スレッド
operationInstance = multiReferenceInstance;
operationInstance.xxx();
Cの場合だと、確か代入でアドレス書き込み中にでも、その変数アドレスの読み込みが走って
アドレスがおかしくなるからだめだったような。
- 773 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:47:02 ]
- > 複数ロックしたとき開放される順番がロックを書けた順番ど通りになることが保障されないから
保証できるロックがあったと思う
http://www-06.ibm.com/jp/developerworks/java/041112/j_j-jtp10264.html
- 774 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 15:33:25 ]
- >>751
-Xbootclasspath/p:でいけました。
- 775 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 15:58:50 ]
- privateアクセスで、setAccessible(true);やった後setAccessible(false);にする必要時はありますか?
影響があるのは、setAccessible(true);かけたインスタンスだけですか?
- 776 名前:デフォルトの名無しさん [2007/05/21(月) 16:54:18 ]
- 半角で-0000と入力した場合,1文字目が記号のためエラーとなる処理を行いたいのですがどうすればいいでしょうか?
- 777 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:08:21 ]
- if("-0000".startsWith("-")) throw new Error("記号ではじまってるよん");
- 778 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:08:30 ]
- boolean is記号(char c){
//cが記号ならtrueを返す処理を、776のプログラムでの記号の定義に従って書く
return c == '-';
}
void hoge(String str){
char c = str.charAt(0);
if(is記号(c)) throw new Exception("記号のエラー");
//続きの処理
}
- 779 名前:778 mailto:sage [2007/05/21(月) 17:11:18 ]
- 先をこされて悔しいのでバリエーションを
if("-+/*・・・(記号の羅列)・・・".indexOf("-0000".charAt(0)) >= 0) throw new Error("記号っす");
- 780 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 11:17:11 ]
- いやきっと>>776は
> 半角で-0000と入力した場合,1文字目が記号のためエラーとなる
という方法は知っていても
> 処理を行いたいのですがどうすればいいでしょうか?
という処理の行わせ方がわからないんだろう
つまり>>776はJavaを見たことはあるけどやったことがない新人と捉える
最適なアドバイスは「プログラムを書いてパソコンに処理を行わせればいいよ」と言うことだ
- 781 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 11:33:53 ]
- わかった。
プロにまかせろ!
ってことか。
- 782 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:28:43 ]
- String str = "aaa";
この場合、Stringクラスの適当なコンストラクターが呼ばれるのでしょうか?
- 783 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:30:57 ]
- >>782
すいません。乗ってました。
String str = "abc";
は、次と同じです。
char data[] = {'a', 'b', 'c'};
String str = new String(data);
- 784 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:48:39 ]
- >>783です。
上のように書いてありましたが、new String(char[]);にデバッグを張ってもとまりません。
new String(new char[]{'c', 'c'}); は止まりますが、
"bb";は止まりません。なぜでしょうか。
- 785 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 18:12:59 ]
- >>784
止まるわけないよ。
だってString str = "abc";はnew String(char[])を呼んでないんだから。
コンスタントプールから"abc"のエントリーを取り出しているだけ。
"abc"のインスタンスが無いときにどう生成するかはVMの実装次第。
Stringをnewして<init>をinvokespecialするString str = new String(data);と違って、
String str = "abc";はldcしているだけ。
- 786 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 18:42:05 ]
- >>785
ありがとうございます。
コンスタントプールはJDKにはなかったですが、標準クラスではないのでしょうか?
あとldcってなんですか?
- 787 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:15:28 ]
- >>786
コンスタントプールってのは、クラスファイルとかVMの方の用語だ。
ldc は定数をロードする JVM のインストラクション。LoaD Constant かな?
- 788 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:02:13 ]
- Stringのような不変クラスは、中身書き換えられる心配ないから
インスタンス使い回しをした方が効率いいから使い回せるもんは使い回してる、と。
- 789 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:09:54 ]
- >>786
詳しくはJava VM仕様を。
でも、仕様文書そのものよりも、それを解説しているものがあれば、その方が理解しやすいとは思う。
String str = "abc";とかString str = new String(data);が、どうコンパイルされたかは、
クラスファイル名がHoge.classならjavap -c Hogeとやれば生成されたバイトコードが見られるから、
シンプルなプログラムを書いてみて、バイトコードを比較してみれば違いが分かる。
- 790 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 10:14:01 ]
- >>789
確かにnewと""ではコードが違いました。""の時クラスファイル内部ではnewしていなかったので、
VMが何らかの方法でStringを生成して、ldcでプッシュしているって感じですかね。
リテラルからのStringクラス生成は、VMレベルなので、ブートストラップを変更しても制御できそうにもないですね
っと、とりあえず自分で考えた結論ですがあっているでしょうか。
- 791 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 13:46:26 ]
- >>790
そんな認識でいいんじゃない。
- 792 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 15:39:50 ]
- xml文章のある要素を取得したタイミングで、スタックとレースをダンプしたいと考えています。
javaのxml処理について調べました。おかしい点があれば指摘していただけないでしょうか。
・読み込み向けはsax、更新する場合はdomと、jdkでは2つのインターフェースを定義している。
・sax、domを実装したモジュールが各ベンダーから配られている。
基本、すべてのベンダーはsax、domを実装している。
・jakartaなどのxml関連ライブラリも、sax、domAIPを利用(拡張実装もあり)している。
・なので、ブートストラップでNodeクラスを変更したクラスにパスを通し、値をセットするときのコードを変更し、
xxだったらトレースをダンプするコードを書けば、
目的の要素をどこのクラスから読み込んでいるかを追うことが出来る。
- 793 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 15:54:53 ]
- >>792
要素を取得したタイミングをいうより、
ある要素を処理するタイミングという訳ね。
静的な解析手法でなくてよいのだったら、
eclipseなんかのデバッガで、DOM,SAMの実装クラスの要素処理のコードの所で
ブレイクポイント置いてそこで止めてみては?
- 794 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 16:38:50 ]
- だれか助けてください!!
jdbやeclipseのデバッグ、その他なんでもかまいませんが、
あるインスタンスを参照している箇所(ソースの行数またはクラス名のみでも可)をリストアップすることはできるでしょうか?
- 795 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 17:14:28 ]
- classの参照って、普通にeclipseで見られなかったっけ?
- 796 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 17:35:48 ]
- >>795
String hoge = "hoge";
bean1.setString(hoge);
bean2.setString(hoge);
bean3.setString(hoge);
としたときに、
このローカル変数のhogeの参照サーチってやると、
bean1、bean2、bean3って出てくることを望んでます。
そんなことできましたっけ?
- 797 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 18:46:55 ]
- >>792
読み込み・書き込みの違いじゃなくて、saxは1タグ・1属性ごとのコールバック処理、domは全部一気に取得してDOMツリーを扱う、という違いです。
実装てきには、DOMはSAXを使って読み込みをしたXMLツリーの全体をDOMオブジェクトとして返すという感じです。
そのため、DOMの場合はすべてのタグが対応したちゃんとした形のものしか読めません。不完全なXMLファイルを読み込んで正常部分だけは処理したいなどという場合にはDOMは使えません。
あるタグを読み込んだ時点で処理を行うということはできません。
一方SAXはコールバック形式でプログラムを組むので、複雑なプログラムを書く必要があります。
で、その欠点を補ったStAXというライブラリがJavaSE6から追加されています。
StAXは逐次読み込み/書き込みを行うライブラリですが、プログラムが組みやすい形式になっています。
対応ライブラリを使えばJava2SE5.0以前でも使えます。
ということで、今回の件ではStAXをオススメします。
他に、JavaにはJavaBeansとXMLの相互変換を行うJAXBというライブラリもあります。
XMLファイルの中身にあまりこだわらず、データとしてJavaに取り込みたいという場合には非常に楽です。
- 798 名前:デフォルトの名無しさん mailto:sage [2007/05/27(日) 11:40:09 ]
- >>792
プロファイラー使ったことないけど、プロファイラーならトレースが出ると思うし追えるんじゃん
プロファイラー自体がどのような技術で実現しているのかわからないけど
メソッドをトレースするからjavaエンジンレベルで何かしているのだろうね。
- 799 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 15:50:06 ]
- >>740
これって、seasarのクラスローダーを使うではなく、seaser自体使えってことですよね。
HotdeployClassLoaderを見ましたがNamingConventionみたいな物を使っていて・・・
結局javaはクラスを明示的にアンロードする仕組みがないから、
再ロードしやすくなる規約を作らないとできないってことですかね。
ここにいろいろ書いてありましたが。
ttp://www.nminoru.jp/~nminoru/java/class_unloading.html
- 800 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 10:55:13 ]
- メソッドの引数はローカルスコープでしか有効でないので、
ローカル変数みたいに値を代入したりしても問題ないですよね?
xx(String str) {
str = str.toUpper();
.
.
}
- 801 名前:デフォルトの名無しさん [2007/06/01(金) 11:03:38 ]
- おk
- 802 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 14:58:11 ]
- >>800
言語仕様的には問題ないけど、
たまにコーディングルールで禁止とか非推奨な場合もあるから気をつけた方が良いかも。
- 803 名前:デフォルトの名無しさん [2007/06/05(火) 01:12:03 ]
- JavaでWebアプリ作った場合、一般的にFullGCかかる頻度って
どの程度が理想的なんでしょうか?
根拠はないけれど10分くらい?
- 804 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 01:17:16 ]
- アプリによる。以上。
- 805 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 10:26:12 ]
- jadでデコンパイルできますが、行数が元のソースと合いません。
そのため、eclipseのjadエディターでブレイクポイントを指定しても、同期が正しくない状態で止まります。
行数が元のソースと同じ状態で出コンパイルすることはできないでしょうか。
またはメソッドを定義している行数だけでも知る方法はないでしょか?
- 806 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 11:15:34 ]
- リフレクションでprivateにアクセスすることはできましたが、
finalのフィールドを変更することはできないでしょうか。
- 807 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 11:29:17 ]
- >>805
むり
- 808 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 15:55:27 ]
- URLクラスのメモリ用なんてありますか?
new URL("mem://xxx");
よくフレームワークで、リソースをストリームではなくURLのみで受け付けるものがあり、
ByteArrayOutputStreamの場合、一度ファイルに書き込まなければならないので
そこを何とかしたいです。
- 809 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 16:26:56 ]
- >>808
無理。
ファイル作りたくないだけなら、FTPサーバかHTTPサーバになりすまして
そのURL渡す方法もあるけど、ファイル作るよりよほど手間かかるぞ。
- 810 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 16:36:01 ]
- >>806
finalはコンパイル時に実値に置き換えられるから、無理
たとえば
class A{
public static final int a = 5;
}
があるとき
class B{
void a(){ System.out.println(A.a); }
}
は
class B{
void a(){ System.out.println(5); }
}
としてコンパイルされる。
その後a=10としてclass Aだけをコンパイルすると、class Bではa=5の値が使われ続ける。
- 811 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 18:49:52 ]
- >>808
ここはム板だ。無ければ作ればいい。
URLで指定して読み込みたいんだから、そのURLを開いて得られるストリームは、
ByteArrayOutputStreamでなくてByteArrayInputStreamでいいんだよね?
必要ならByteArrayOutputStreamをパイプ入力ストリームに繋げばいいし。
class MemURLStreamHandlerFactory implements URLStreamHandlerFactory {
public URLStreamHandler createURLStreamHandler(String protocol) {
if (protocol.equals("mem")) return new MemURLStreamHandler();
else return null;
}
}
みたいなファクトリを作ってURL#setURLStreamHandlerFactoryでセット。
URLStreamHandlerを継承したMemURLStreamHandler内でopenConnection(URL)を実装して、
URLConnectionを継承したMemURLConnectionを返すようにする。
MemURLConnectionのgetInputStream()で該当するByteArrayInputStreamを返してやるように実装する。
おおまかにはこれで、
InputStream in = new URL("mem:").openStream();
みたいにしてデータを読み込めるようになるので、
URLとしてnew URL("mem:")を、そのフレームワークに渡してやればいい。
まあ、どのストリームを返すかをURL表記でどう表現するかとか、
それを解釈して実際のストリームにどう関連付けるかとか、細かな実装はがんばってみてくれ。
決まったByteArrayInputStreamを返すURLならプロトコルの"mem:"だけでいいし実装も簡単だ。
- 812 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 19:12:42 ]
- URL#setURLStreamHandlerFactoryの呼び出しはJVM動作中1回だけなので注意して。
- 813 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 15:46:46 ]
- >>811
できました。
ありがとうございます。
URLがfinalだったので、これはどうしようもないと思っていたのですが、
こんな機構が用意されていたのですね。
- 814 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 15:46:47 ]
- while (1000回) {
"xxx".replaceAll("xxx","yyy");
}
この場合、無駄に正規表現のコンパイル処理が走るので、
コンパイルしたMatcherでreplaceしたほうが、処理が早くなるでしょうか?
実際試しましたが、ほとんどかわりはなかったですが・・・
- 815 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 16:08:42 ]
- >>814
1000回くらいでは差があまり見えないのでは?
int i = 100000;
long a = System.currentTimeMillis();
while (--i > 0) {
"xxx".replaceAll("xxx","yyy");
}
System.out.println(System.currentTimeMillis() - a);
と
int i = 100000;
long a = System.currentTimeMillis();
java.util.regex.Pattern p = java.util.regex.Pattern.compile("xxx");
while (--i > 0) {
p.matcher("xxx").replaceAll("yyy");
}
System.out.println(System.currentTimeMillis() - a);
と
int i = 100000;
long a = System.currentTimeMillis();
java.util.regex.Matcher m = java.util.regex.Pattern.compile("xxx").matcher("");
while (--i > 0) {
m.reset("xxx").replaceAll("yyy");
}
System.out.println(System.currentTimeMillis() - a);
だと、1番目は2,3番目より時間かかるね。2,3番目はあまり違わない。わずかに3番目が速いか?
コンパイラやVMでの最適化の関係もあって正確な測定ではないけれど。
実際に扱うデータ量で測定してみてあまり変わらないのであれば、記述の分かりやすさを選べばいいと思う。
- 816 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:43:28 ]
- >>815
ありがとうございます。
100000回くらいで差が出てくるほどでした。
Pattern#flags()でフラグのセットが返りますが、Pattern.DOTALLが含まれているかの確認はどうすればよいのでしょうか。
Cでビット演算はしたことがあったのですが、忘れてしまいました。
- 817 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 15:57:46 ]
- (Pattern#flags() & Pattern.DOTALL) != 0
- 818 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 07:34:39 ]
- >>814
気にするほど遅いならばそのメソッド自体が提供されていないと思う。
- 819 名前:デフォルトの名無しさん [2007/06/17(日) 14:34:08 ]
- 符号無し演算のオーバーフロー判定ってどうやるの?
具体的には、文字列からintへの変換で、"0xffffffff"は
OKだけど、"0x7ffffffff"はNGって扱いたいんです。
resultが前の桁を適用した結果、
digitが今回の桁の値だとして、
Cみたいに符号無しの比較が出来れば
unsigned value = (result * radix) + digit;
if (value <= result) {
// オーバーフロー
}
こう書けるんだけど。
先に右シフトして桁を落としてやる以外に思いつかない・・・。
if ((((result >>> 16) * radix) + digit) >= (1 << 16)) {
// オーバーフロー
}
- 820 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 16:32:16 ]
- >>819
要件がよくわからんけど、こんなのじゃ駄目?
String str = "0x7FFFFFFFF";
int value = 0;
try {
value = Integer.decode(str).intValue();
} catch (NumberFormatException nfe) {
//オーバーフローやフォーマット不正
}
- 821 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 17:42:59 ]
- >>819
桁読み込んだ後に、result の更新と判定の順番変えて
digit = .....; //一桁読み込み
if (0xFFFFFFF < result) {
// オーバーフロー
}
result = (result * radix) + digit;
- 822 名前:819 mailto:sage [2007/06/18(月) 07:53:06 ]
- 自己解決しました。
glibcのソースやら何やら眺めてたら、
基数毎にこれ以上桁増やしたら必ずオーバーフローする
限界値を計算しておいて確認する以外は無理っぽいです。
>>820
decode()じゃ結局parseInt()と同じなので、
0x80000000以降がオーバーフローしちゃうんです。
よくよく考えてみると、符号無し演算が可能でも、
>unsigned value = (result * radix) + digit;
>if (value <= result) {
これで判定出来ないケースがあるんですね。
- 823 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 18:25:35 ]
- 1.4でコンパイルしたクラスを、1.5のエンジンで実行させることはできるのでしょうか。
jakartaなどのライブラリのダウンロードで、JDKのバージョンが乗っていないので動くような気がするのですが。
試せば早いのですが、モデム環境なので1.5のダウンロードが・・・
ちなみに、javaのエンジン(ランタイム?)としてbeaが出しているjrokectなるものがありますが、
仕様はsunが提示したものにのっとっているので、使う側としてはsunとbeaどちらを使用しても正しく動作するけど
処理が早い、遅いの差があるから、好きなのを選んでよいですよって感じなのでしょうか?
- 824 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 19:12:06 ]
- > 1.4でコンパイルしたクラスを、1.5のエンジンで実行させることはできるのでしょうか。
できる。
- 825 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 19:49:58 ]
- >>823
>好きなのを選んでよいですよって感じなのでしょうか?
よいですよ
- 826 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 10:12:12 ]
- >>824
>>825
ありがとうございます。
たすかりました。
- 827 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 14:34:47 ]
- >>824
実行できましたが、実行が恐ろしく遅いです。
ただ、任意の処理の2回目からは通常通りのスピードなので、
おそらくクラスをロードするときに時間がかかるものなのでしょうか?
- 828 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:09:40 ]
- ファイルのエンコードがEUCかSJISかを判断してから、そのエンコードでファイルを読み込みたいのですが、
ファイルのエンコードを判断する方法がわかりません。
そうすれば判断できるでしょうか。
イメージはUNIXのnkfのように、ユーザーに元のエンコードを意識させず、
特定のエンコードでデータを取得させたいのですが
- 829 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:11:18 ]
- >>827
Hotspot というキーワードと
JIT というキーワードでググってみるといいかもしれない。
後は、クラスのローディングコストに興味があれば Class Data Sharingとか。
- 830 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:12:53 ]
- >>828
つ ttp://www.void.in/wiki/Universalchardet
- 831 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:49:43 ]
- >>828
JISAutoDetect
- 832 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 16:28:18 ]
- >>830
ありがとうございます。
JDK1.4なのですが、実行すると5.0をサポートしていないというようなエラーが出ました。
java.lang.UnsupportedClassVersionError: org/mozilla/universalchardet/UniversalDetector (Unsupported major.minor version 50.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at other.Free.main(Free.java:37)
- 833 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:37:43 ]
- 普通にJISAutoDetectじゃだめなん?
- 834 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 23:03:03 ]
- >>832
ClassVersion 50.0 だから 5.0 とは違う。
ClassVersion 50.0 って Sun の JDK だと 1.6 が吐く奴だっけか?
- 835 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 10:13:19 ]
- >>829
ありがとうございます。
調べて見ます
- 836 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 13:17:19 ]
- IMAPでメール受信できるクラスありますか?
- 837 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 17:42:12 ]
- commonsのNetというパッケージにPOP3Clientクラスがあり、これにより簡単にメールを受信することができました。
但し、メール情報の戻り値がReaderで、ヘッダーを含む生のデータとして出しか取得できません。
受信メールのバイトデータから本文やヘッダーを取得できるクラスはJDKのAPIにあるでしょうか?
- 838 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 17:49:53 ]
- JavaMail
- 839 名前:デフォルトの名無しさん [2007/06/22(金) 21:32:52 ]
- HATS(IBMの製品。HostPublisherの後継。)を使って、ホスト(PL/I)画面
の見かけだけをWeb化し、JSP化しようと思います。
この時、ホスト画面で「入力不可のテキストボックス」になっていて次画面
に値が引き継がれるものは、HATSで変換した後もやはり「入力不可のテキス
トボックス」になってしまうのでしょうか?例えば、Web化した時に、
<input type="text" value="次画面に引き継がれる値" disabled>
となってしまうと、ユーザがインターネット一時ファイル内の「次画面に
引き継がれる値」の部分を改竄してしまうことを懸念しているのです。
ホスト用のエミュレーターで、「次画面に引き継がれる値」の部分が保存
されるなら良いのですが、どなたかお分かりでしょうか?
- 840 名前:デフォルトの名無しさん mailto:sage [2007/06/23(土) 09:23:47 ]
- それはHATSの人に聞くしかないだろ
- 841 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 15:40:43 ]
- >>831
まさにこれでした。
ありがとうございます。
- 842 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 14:41:28 ]
- >>839
そういう金がかかってる製品の細かいトコを
掲示板で解決できると思うセンスはやばいです
- 843 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 16:29:21 ]
- Serializableを実装する場合、serialversionUIDを実装しないと何が問題になるのでしょうか?
実装しなくても処理は正常に動いています。
- 844 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 16:54:54 ]
- >>843
シリアライズしたクラスと、それを復元するクラスで serialVersionUID が違うと
復元時に InvalidClassException 食らう。
んで、serialVersionUID は設定しないとコンパイラがクラス定義から
自動的にデフォルト値を計算するけど、これはコンパイラが違うだけで
値が変わる可能性があるので推奨されないって事らしい。
http://java.sun.com/javase/ja/6/docs/ja/api/java/io/Serializable.html
http://java.sun.com/javase/ja/6/docs/ja/platform/serialization/spec/class.html#4100
- 845 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 18:40:24 ]
- >>844
ありがとうございます。
参考になりました。
- 846 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 13:31:39 ]
- linux環境にて、weblogicのWEBアプリを起動しています。
プログラムのどこかで不具合があり、アプリが応答しない状態です。
CPUがフルなので、多分どこかで無限ループしてます。
しかもリクエストスレッドをすべて使用中にしてしまい(おそらくすべてで無限ループ)、
サービスが全滅している状態です。
デバックモードで起動していないですが、この状態のスタックトレースをダンプすることは可能でしょうか。
JDK1.4です。
- 847 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 14:14:41 ]
- >>846
うまくいけば、kill -3
- 848 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 15:46:20 ]
- >>847
QUITですか?
そのダンプってC言語のダンプになりますかね?
- 849 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 17:15:25 ]
- >>848
すみません。何が何だか分かりません。
言葉に出来る違和感は、JavaじゃなくてCが出てくる辺りくらいまでです。
>>847 のシグナルを該当プロセスに送ればスレッドダンプがコンソールに取れる。
まだJVMが生きていたら。
コアダンプが欲しければ・・・すまん、linuxはよく分からん。Solarisなら分かるが。
- 850 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 18:56:22 ]
- >>849
ありがとうございます。
javaがシグナルを補足して、javaの処理としてすべてのスタックをダンプして終了する処理になっているということですよね。
確認してみます。
- 851 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 14:22:17 ]
- >>850
あー、遅いかもしれんけど・・・kill -3では、スレッドダンプするだけで
終了はしないはずですよ。
- 852 名前:デフォルトの名無しさん [2007/06/28(木) 16:15:36 ]
- JSP では、 jsp:include タグよりも <%@ %> ディレクティブのほうが高速だ
という認識は当たってますか?
- 853 名前:デフォルトの名無しさん [2007/06/28(木) 21:37:36 ]
- >>852
どちらも一度実行し、ファイルの更新は、もうしないとしよう。すると、
今後はどちらも、同じ程度の行数のクラスファイルを実行するだけだから、
速さは殆ど変わらないはず。
- 854 名前:デフォルトの名無しさん [2007/06/29(金) 09:37:23 ]
- >>853
あれ?jsp:include は実行時にインクルードするんじゃなかった?違うか?
- 855 名前:質問!! [2007/07/02(月) 23:21:50 ]
- こんにちは。
WEBアプリケーションでよくファイルアップロード機能があると思います。
その仕組みとして直接クライアントで指定したファイルを
サーバにアップロードしないでDBにBLOGなどで登録は可能でしょうか?
可能であればその仕組みを教えてください。
よろしくお願い致します。
- 856 名前:デフォルトの名無しさん [2007/07/03(火) 09:37:01 ]
- ん?
DBがサーバーにないってこと?
- 857 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 11:21:08 ]
- Javaでは、Unicodeを使った識別子名が使えますよね。しかし
int Δx;
int 凅;
とすると、上は通りますが下は「\8895 は不正な文字です」とエラーになります。
8895は16進数で0x22BF、つまり凾フ文字コードです。
このように、使用不能な文字コードには、他に何があるでしょうか? JDK1.4です。
- 858 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:30:34 ]
- 全角スペース
- 859 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 15:05:59 ]
- 全角数字も怪しかった気がする
- 860 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 16:23:14 ]
- >>857
Character#isJavaIdentifierStartとCharacter#isJavaIdentifierPartに簡単な説明が書かれてある。
実際に分からない時はこのメソッドの返値の真偽を見ればいい。
''は識別子には使えない文字だが、'1'は2文字目以降には使える文字ということに。
- 861 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 17:37:38 ]
- ありがとう。java仕様とUnicode仕様の交差点は、まさに伏魔殿ですね
- 862 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 00:44:59 ]
- > 使用可能な文字
Java 仕様できちんと定義しているようなので、伏魔殿は言いすぎかと。
20.5.16 isLetterOrDigit 辺りを見ると書いてあります。
- 863 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 22:40:18 ]
- IEで見れる時計の作り方を教えて欲しいです。
- 864 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 23:00:25 ]
- これを適当なアプレットに埋めこめ。
paint(Graphics g){
g.drawString(new Date() + "", 10, 20);
new Thread(){
public void run(){
try{
sleep(100);
}catch(Exception e){}
repaint();
}.start();
}
update(Graphics g){
}
- 865 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 10:24:28 ]
- スレッドをデーモンにする、と仕様書に書いてあるのですが
デーモンにするとしないとでは何が違うのでしょうか?
- 866 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 12:38:02 ]
- >>865
スレッド?
- 867 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 12:39:49 ]
- http://www-06.ibm.com/jp/developerworks/java/010302/j_j-king.shtml
- 868 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 10:31:02 ]
- weblogicにkill -3を送ってスレッドのダンプを取ろうと思っています。
ただ、weblogicのスタートのシェルを他社が製造していて、標準出力のリダイレクトをどうしても許可してくれません。
らちが明かないので、アプリ内でSystem.setOut()、System.setErr()を使って出力先を変えました。
アプリのコンソール出力はうまくいきましたが、killの出力はうまくいきません。
killのイベントはOSレベルなので、nativeメソッドで出力をしているようですが、
System.setOut()ではnativeレベルでのファイルディスクプリタの変更ができないようです(動かして感じたレベル)。
何か対策はないでしょうか。
- 869 名前:デフォルトの名無しさん mailto:sage [2007/07/16(月) 11:33:28 ]
- >>868
以前の質問と同じ人だとすると環境は Linux + J2SE 1.4 かな?
以下のような方法はどうでしょ(但動作未確認)
・リモートデバッグを有効にして、eclipse とかで接続
・(一時的にJava5を使用して)ThreadのgetStackTrace()、getAllStackTraces()を使う
リクエストの受信スレッドが枯渇してるなら、自分でダンプ指示受信用のポートを開けとくとか
・(同じくJava5で)JConsoleを使う
・HPROFを使う。java -Xrunhprof:thread=y,monitor=y,file=<file>... とか。
ただし、かなり重くなるので、再現性が高い現象でないと辛いかも。
あと、他のオプションをOFFにしたりするのも必要。
- 870 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 16:32:59 ]
- >>869
ありがとうございます。
1.5にはThreadのgetStackTrace()、getAllStackTraces()なんてあるんですね。
何とか対応できそうです。
これ頂きます。
- 871 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 13:55:18 ]
- DESで質問です。下記のクラスを作り、mainから呼び出すとエラーになります。
問題が見つけられません。ご教授いただけないでしょうか。
public class CompressUtils {
private static final Cipher encrypt;
private static final Cipher decrypt;
private static final SecretKey sk;
static {
String kagi = "abc12345";
DESKeySpec dk = new DESKeySpec(kagi.getBytes());
SecretKeyFactory kf = SecretKeyFactory.getInstance("DES");
sk = kf.generateSecret(dk);
encrypt = Cipher.getInstance("DES");
encrypt.init(Cipher.ENCRYPT_MODE, sk);
decrypt = Cipher.getInstance("DES");
decrypt.init(Cipher.DECRYPT_MODE, sk);
}
public static String decrypt(String string) throws IllegalStateException, IllegalBlockSizeException, BadPaddingException {
byte[] base = string.getBytes();
byte[] dec = decrypt.doFinal(base);
return new String(dec);
}
public static String encrypt(String string) throws IllegalStateException, IllegalBlockSizeException, BadPaddingException {
byte[] base = string.getBytes();
byte[] enc = encrypt.doFinal(base);
return new String(enc);
}
}
String ret = CompressUtils.encrypt( "hogehoge" );
System.out.println( CompressUtils.decrypt( ret ) );
- 872 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 00:20:46 ]
- >>871
正しくは「ご教示」ね。
それはさておき、この辺りが参考になると思う。
ttp://forum.java.sun.com/thread.jspa?threadID=361230&messageID=3820872
UTF-8 + Base64方式を使ったら、問題なく動いてるように見える。
Base64 だけでなくて、別のエンコード/デコード方法でもいけそうな感じ。
javax.crypto.* パッケージは初めて使ったから、なんか間違ってるかもしれんけど。
変更点:
getBytes() -> getBytes("UTF-8")
encrypt()#return new String(enc) -> return Base64.encode(enc)
decrypt()#decrypt.doFinal(base) -> decrypt.doFinal(Base64.decode(string))
- 873 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 10:19:49 ]
- >>872
ありがとうございます。
できました。
- 874 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 17:27:52 ]
- InputStream(FileInputStream)からオープン対象のファイル名を取り出すことはできないのでしょうか?
- 875 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 17:30:42 ]
- >>874
無理。FileInputStream 自体がファイル名を記録してないはず。
- 876 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 17:34:54 ]
- >>875
確かにファイル名は捨ててますね・・・
ありがとうございます。
- 877 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 17:40:45 ]
- jspやテンプレートでstaticメソッド群を持ったをユーティリティクラスを使用したいと思ってます。
その場合インスタンス化する必要があり、コンストラクタを持っているものはnewしてから
テンプレートなのでメソッドを呼んでいます。
特に問題は出ていないですが、
そもそもstaticメソッドの非静的アクセスは、いい悪いを除いて何が問題なのでしょうか?
- 878 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 18:21:47 ]
- >>877
インスタンスメソッドと間違えるのでヒューマンミスを助長しやすい。
インスタンスメソッドだと思って上書きしようと思ったらできねーとか、
実はインスタンスが null だったけどクラスメソッドだから動いちゃってたとか。
- 879 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 18:50:16 ]
- >>878
なるほど。ありがとうございます。
機構的には問題ないけど、紛らわしいのでやめてねって事ですね。
- 880 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 21:48:15 ]
- >>877
staticメソッドは非静的アクセスなんかできないよ。
ようするに、非静的アクセスしてると誤解してしまうのが悪いんじゃねえの?
class A{
static void a(){
System.out.println("a");
}
}
class B extends A{
static void a(){
System.out.println("b");
}
}
A a = new B();
a.a();
なんてコードを書いても、aと表示される。
- 881 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 23:53:24 ]
- B a = new B();
a.a();
b
- 882 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:05:11 ]
- xmlをxpathで検索するにはどうすればよいのでしょうか?
jxpathというフリーな?ソフトがあったのですが、これを使わないといけないのでしょうか?
- 883 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 14:04:47 ]
- Collections.synchronizedList(list)した場合、SynchronizedListを返すからダウンキャストするとエラーになります。
これを回避するためには、リフレクションのプロキシを使うと解決できるといわれましたが、
調べても使い方や仕組みが分かりません。
同じようになるって言われても違うクラスだし・・・
すいません。なぜエラーにならない(キャストできる)かを簡単に説明していただけないでしょうか。
- 884 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 16:10:28 ]
- 継承を考えるとき、ベースのクラスを、
インターフェースとAbstractどちらを選べばいいか良く分かりません。
Collection、Listはなぜインターフェースをとったのでしょうか?
ある程度上位で決まった動作があれば、抽象クラスにしてもいいのではないかと思うのですが。
- 885 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 01:28:28 ]
- 実際問題、選ぶような局面にならんと思うぞ
Interfaceが必要なのは使う側の話で、
Abstractが必要なのは使われる側の話。
必要がないのにInterfaceとAbstractのどちらがいいとか考えるから
わけがわからなくなる。
- 886 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 01:36:02 ]
- >>884
interfaceにできるときはinterfaceにしておけ。
2chみたいに情報が少ない状態で言えるのはそんくらい。
- 887 名前:デフォルトの名無しさん [2007/08/06(月) 00:54:48 ]
- Swingアプリからデスクトップにドラッグアンドドロップするにはどうしたらいいですか?
ドロップした箇所にテキストや画像を書き出す感じ。
- 888 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:04:29 ]
- Swingのドラッグ&ドロップの方法がそもそもわからない?
Swingのドラッグ&ドロップは出来るけどデスクトップにドロップできない?
- 889 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:19:35 ]
- classファイル実行時の総文字列取得方法を探しています。
実行環境はWindowsXP
SWTを利用しWin32APIをコールして取得できるもくろみでしたが
SWTのDll(?)に未定義でした。
何かよい手段はありませんか。
- 890 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:21:09 ]
- 「classファイル実行時の総文字列」ってどういう意味・・・?
- 891 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:24:55 ]
- ターミナルとかで
「java Test args1 args2」
と実行するもうそのもの全てです。
説明不足もうしわけない。
- 892 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:40:07 ]
- その例だと何文字?
- 893 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:45:58 ]
- 引数の文字数は動的ですから
2,3文字の場合もあれば極端に言えば100〜以上の場合もあります。
- 894 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 01:51:32 ]
- >「java Test args1 args2」
で、この例だと何文字?
- 895 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 02:03:07 ]
- >>894
「java Test args1 args2」の場合
java で5文字
Test で5文字
args1が「ABCDE」として5文字
args2が「あいうえお」として5文字
となり計20文字です。
args1、args2は動的な値です。
- 896 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 02:09:28 ]
- >java で5文字
なんで5文字?スペースも数に入れるの?
>「ABCDE」として5文字
こっちはスペース入れないの?
- 897 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 02:15:59 ]
- アワワワ間違えました。
訂正します。
「java」で4文字
「 Test」で5文字
args1が「 ABCDE」として6文字
args2が「 あいうえお」として6文字
となり計21文字でした。
- 898 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 02:32:31 ]
- argsの要素数+argsの各要素長さ+4
かな?
- 899 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 02:41:16 ]
- >>898
目的としているのは文字列長ではないです。
argsの要素中に"や'が入っていると
TestクラスのMainメソッドに正しく値が引き渡されないので
「classファイル実行時の総文字列」を取得しようと考えています。
- 900 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 04:09:58 ]
- クラスファイル実行時って
class Hoge{
public static void foo(){
Test.main(null);
}
}
みたいな感じのこともあるから、「クラスファイル実行時の文字列」 じゃだれもわからんと思うから。javaコマンド実行時の文字列って言ったほうがいいと思う
- 901 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 04:21:30 ]
- そんなもの取得して何がしたいの?
- 902 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 09:12:05 ]
- >>899
> argsの要素中に"や'が入っていると
> TestクラスのMainメソッドに正しく値が引き渡されないので
コマンドラインでjava Test A"Bとかやってargs[0]にA"Bが引き渡されないって意味なら、
それはjavaプログラムの中でどうこうできるものではない。それはシェルの問題だ。
標準のシェルを使ってるならjava Test A\"Bのようにエスケープする。
でも、'についてはCMDは普通に引き渡すと思ったが。
そうでなくて、正しく"を引き渡しているにも関わらずargs要素中に正しく入っていないというのなら、
たぶんTestクラス中でargsの扱い方を間違えて、入っていないようにみえるだけだ。
- 903 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 09:40:39 ]
- >>905
確かにその通りでなんですが
起動時にエスケーブ処理をかませられないんです。
だからSWTのWIN32コール機能を使おうとしてたのてす。
- 904 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 09:59:33 ]
- そんなことするなら、exe作って前処理すればいいのに
- 905 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 10:01:43 ]
- >
- 906 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 10:05:37 ]
- >>907
そのとおりですね
ただJavaでは絶対に出来ないと思えなかったので。
- 907 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 10:11:44 ]
- cmdのユーザインタフェースから起動する限り何を起動しても
コマンドライン引数での特殊文字の処理は変わらんと思うんだが
- 908 名前:デフォルトの名無しさん mailto:sage [2007/08/15(水) 22:50:23 ]
- Attach APIでAttachされる側からAttachを拒否るにはどうすればよいのでしょうか?
AttachPermissionはAttachする側でのチェックでしかないですし。
- 909 名前:デフォルトの名無しさん mailto:sage [2007/08/19(日) 23:19:48 ]
- | \
|Д`) ダレモイナイ・・オドルナラ イマノウチ
|⊂
|
♪ Å
♪ / \ ランタ タン
ヽ(´Д`;)ノ ランタ タン
( へ) ランタ ランタ
く タン
♪ Å
♪ / \ ランタ ランタ
ヽ(;´Д`)ノ ランタ タン
(へ ) ランタ タンタ
> タン
- 910 名前:デフォルトの名無しさん mailto:sage [2007/08/29(水) 10:19:05 ]
- 正規表現で\p{xxx}のいろいろなグループがありますが、
半角かながありません。
正規表現で半角かなを簡単に指定する方法を教えてください。
- 911 名前:デフォルトの名無しさん mailto:sage [2007/08/29(水) 11:52:03 ]
- [\p{InHalfwidthAndFullwidthForms}&&\p{Katakana}] こんな感じ?
- 912 名前:デフォルトの名無しさん mailto:sage [2007/08/29(水) 11:55:19 ]
- [\uff61-\uff9f] の方が簡単かもしんない
- 913 名前:デフォルトの名無しさん mailto:sage [2007/08/30(木) 11:34:42 ]
- >>911
おお、こんなものが。
ありがとうございます。
- 914 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 15:25:44 ]
- lhaの解凍クラスってJDKにないのでしょうか?
- 915 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 15:32:00 ]
- ないねー。
あれは日本のローカルなものだからねー。
Java で書かれたフリーな lha 解凍ライブラリはいくつかあるみたいだから、それ使ってみたら?
- 916 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 16:14:37 ]
- >>915
ですよね。
ありがとうございます。
- 917 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 13:02:41 ]
- JDK1.3でJavaからJCOMを使ってActiveXを呼び出せるんですが以下のような出力パラメータの受け渡しでJVMがコアダンプします。
func(String outarg1[],String outarg2[])
このようなパラメータを呼び出す方法やライブラリはありますでしょうか。
- 918 名前:デフォルトの名無しさん [2007/09/22(土) 18:52:26 ]
- これからやろうとしているのだが、
環境変数をどう設定するのでしょうか?
超基礎質問スマソ。
- 919 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:39:53 ]
- 環境変数の設定もわからんのなら、NetBeansでも使ってろ
http://www.netbeans.org/index_ja.html
- 920 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 00:09:00 ]
- javaてc/c++よりも全然簡単じゃないですか?
- 921 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 06:11:08 ]
- メモリ管理を考えなくていいところは、簡単だな。
- 922 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 20:44:47 ]
- リフレクションも評価してやってください
- 923 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 15:35:38 ]
- double value;
valueが小数点以下が0の場合のみ Math.round を使いたいのですが、
小数点以下が0(整数)の判断はどうすればよろしいでしょうか?
- 924 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 15:43:56 ]
- value % 1 == 0
- 925 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 18:53:16 ]
- value - ((int)value) ==0
- 926 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 17:05:06 ]
- >>925
valueが1e20とかだとfalseにならないか?
それにオーバーフローとかは置いておいても
そう書くならvalue == (int)valueの方がすっきりしないか?
- 927 名前:デフォルトの名無しさん [2007/09/26(水) 18:07:25 ]
- 画像上の、指定した座標の色を返してくれる関数ってありますか?
- 928 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 18:30:59 ]
- 画像ってのは java.awt.Image のこと?
だったら PixelGrabber を使う
int[] color = new int[1];
new PixelGrabber(image, x, y, 1, 1, color, 0, 1).grabPixels();
- 929 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 18:59:02 ]
- Color c = new Color(color[0]);
- 930 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 10:15:06 ]
- unixのdiffコマンド的なものをjavaで実装したいのですが、
お勧めなクラス・jarなどあれば教えてください。
- 931 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 11:10:49 ]
- InputStream
InputStreamReader
BufferedReader
HashMap
ArrayList
LinkedList
StringBuilder
あたりでできるのではないだろうか
- 932 名前:デフォルトの名無しさん [2007/09/27(木) 11:35:13 ]
- 初心者なんですが、
http://bigwww.epfl.ch/sage/soft/watershed/
のImageJプラグインの処理を、16bit対応の処理に改造してほしいです。
どなたかわかる方いらっしゃいませんか?
- 933 名前:デフォルトの名無しさん [2007/09/27(木) 14:37:13 ]
- javaで輪郭追跡処理を勉強しているのですが詳しい人いますか?
- 934 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 14:55:15 ]
- 居る
- 935 名前:デフォルトの名無しさん [2007/09/27(木) 18:14:41 ]
- >>884-886
interfaceとAbstractの使い分けは
そのクラスの抽象レベルによってつかいわけるんだよ^^
継承する具象クラスが一部の機能だけを継承するならinterface
クラスとして継承するならAbstract
ある意味抽象度で言えばより曖昧な存在がinterafaceであり
より具象化しているのがabstract
より曖昧な存在のinterafaceならポリモーフィズムを利用してよりたくさんの
クラスを扱える
- 936 名前:デフォルトの名無しさん [2007/09/28(金) 00:26:48 ]
- 白い背景の中に黒の点が一つある画像を左上から調べて黒い一点の座標がいくつなのか
自動的に調べられるプログラムを作ってみたいのですが
考えがつく人いらっしゃいますか??
あんまりうまく伝えられなくてすいません。
よろしくお願いします。
- 937 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 00:39:40 ]
- それは、普通に考え付くだろ
- 938 名前:デフォルトの名無しさん [2007/09/28(金) 00:54:47 ]
- すいませんプログラムおしえていただけませんか??
- 939 名前:デフォルトの名無しさん [2007/09/28(金) 00:57:42 ]
- すいません936で書いた内容のプログラムおしえていただけませんか??
- 940 名前:デフォルトの名無しさん [2007/09/28(金) 01:01:26 ]
- 普通わかるよ
- 941 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 01:06:50 ]
- >>927と同じ人じゃないのか
- 942 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 01:39:22 ]
- >>936
課題などで自分ではプログラムを作りたくない、作る技量が無いってことなら、
もっと仕様をきちんとまとめて宿題スレに投げればやってくれる人がいるかもよ。
自分でそういう「プログラムを作ってみたい」って言うんなら、
その程度のことは自分で思いつかなけりゃ結局全て他人任せのプログラムにしかならない運命だ。
- 943 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 03:20:02 ]
- なんだ
結局作ってみたいとかってのは嘘だったってことか
- 944 名前:デフォルトの名無しさん mailto:age [2007/09/28(金) 14:41:53 ]
- ->
を使ったプログラムを作れ
- 945 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 15:31:55 ]
- お前が命令できる立場か
- 946 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 23:25:42 ]
- class _{
public static void main(String __[]){ System.out.println("->"); }
}
- 947 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 11:35:02 ]
- ServletContext.getRealPath("/")
これは、Linuxでルートコンテキストのパスまでにシンボリックリンクが使われていたときは、
リンク先のフルパスが戻るということでしょうか?
その場合、リンク先のパスを使いたくない場合は、
ServletContext.getResource("/")..getPath() で大丈夫でしょうか?
手元にWindows環境しかなく確認できません。
よろしくお願いします。
- 948 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 11:52:38 ]
- Virtual PC が無料で使える時代なんだから、Virtual PC 上に Linux インストールして自分で確認すればいいじゃん
- 949 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 12:06:53 ]
- Virtual PCって無料で使えるようになったの?
- 950 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 12:09:48 ]
- あ、去年から無料になったんだ。
Virtual PCってLinuxインストールはライセンス的にOK?
だめならVMWareとかXenでいいけどね。
- 951 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 14:10:34 ]
- Virtual PCってprofessionalじゃなきゃ駄目だけど>>947のホストOS次第だな
Virtual PCが無料なんだからって流れからすればVMWareやXenは候補に挙げられんだろ
- 952 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 14:25:21 ]
- じゃあqemu?
- 953 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 14:56:06 ]
- homeはだめなのか・・・それはすまんかった。
- 954 名前:デフォルトの名無しさん mailto:sage [2007/10/04(木) 11:03:29 ]
- >>947
Linuxでやってみましたが両方ともリンク先(自体)のフルパスでした。
- 955 名前:デフォルトの名無しさん [2007/10/08(月) 09:34:07 ]
- コマンドライン引数から文字列を取得して数字かどうか判別したいから
isDigitを使ってたんだけどこれだと小数と負の数が数字じゃないことになってしまう・・・
ちゃんと数字だと判別させるためにはどうしたらいいかな?
- 956 名前:デフォルトの名無しさん mailto:sage [2007/10/08(月) 10:17:31 ]
- Double.parseDoubleやってみて例外が発生しなかったら数字、っていうのが一番簡単
- 957 名前:デフォルトの名無しさん [2007/10/08(月) 10:33:35 ]
- >>956
ありがとう!それでやってみる。
- 958 名前:デフォルトの名無しさん [2007/11/16(金) 15:59:09 ]
- パイプで標準入力を受け取って処理することはできるのでしょうか?
例えば
ls -al | java Hoge
のようにコマンドの標準出力をJavaに直接渡したいのですが何か方法
はありますか?
- 959 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 16:04:45 ]
- xargs
- 960 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 16:07:22 ]
- >>958
普通に System.in で受け取ればいいんじゃない
- 961 名前:958 [2007/11/16(金) 16:16:50 ]
- >>959
そんなコマンドがあるなんて知りませんでした!!!
でも、バイナリデータも渡したいので、直接渡せたらいいんですけど・・・
>>960
System.inだと起動時の標準入力は受け取れないようなんですが、書き方が
悪いんですかね・・・
- 962 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 22:16:19 ]
- 書き方が悪いに一票
- 963 名前:デフォルトの名無しさん [2007/11/16(金) 22:56:05 ]
- http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29791
このプログラムの内容がわからないので解説がほしいのです。
一列ずつのプログラム説明をお願いしたいです。
どなたかわかるかた教えていただけますか
- 964 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 23:00:36 ]
- >>963
わからないところだけピックアップして訊けよ
- 965 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 01:05:12 ]
- >>963
やさしいオレ様が、4行程度教えてやろう。
49行と51行と53行と55行は、それぞれ左上、左下、右上、右下と表示する。
あとは自分で勉強すれ。
- 966 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 08:26:01 ]
- >>963
やさしいオレ様が、少しだけ教えてやろう。
「00010:」って左に書いてある数字はプログラムじゃないぞ。
あとは自分で勉強すれ。
- 967 名前:デフォルトの名無しさん [2007/11/17(土) 08:39:29 ]
- PHPとJavaなら、PHPでしょ?どっち?
インターネット派の俺が聞いてみる。。。(・∀・)ニヤニヤ
- 968 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 10:22:45 ]
- 次の質問をどうぞ
- 969 名前:デフォルトの名無しさん [2007/11/17(土) 10:34:13 ]
- ちょ。。。
- 970 名前:デフォルトの名無しさん [2007/11/17(土) 12:27:41 ]
- >>963
すいません。場所は
13行目から22行目の内容と63行目から73行目ですよろしくお願いします。
- 971 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 12:35:47 ]
- >>970
13-22 行目がわからないとなると、初心者本で勉強した方が良いのでは
としかいいようが無い。初めの方に書いてあるはず。
- 972 名前:デフォルトの名無しさん [2007/11/17(土) 16:58:42 ]
- 質問なのですが、
eclipse3.2を使っております。
Javaでログを取りたいのですが、テキストファイルなどにはFINEST〜SEVERまでキチンと排出
されるのですが、エクリプスのコンソールにはconfigまでしかでません、レベル設定はどうやったらいいのでしょうか?
- 973 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 17:08:14 ]
- jre/lib/logging.propertiesファイルをいじればいいんじゃね
[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]
前100
次100
最新50
▲ [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<263KB
read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) ...の不正改造版アヒャーリ
担当:Momi