質問失礼します。
とある事情により、Javaから他のJarファイルを起動する事になりました。
Runtime.exec 関数を利用して cmd /K (OSXだと open) (もしくは java -jar )を実行すれば、Jarファイルを実行できるのは心得ています。
Runtime.exec 関数を利用しない場合、クラスローダーでMain関数をたたく(?)やり方があると思うのですが、それは可能なのでしょうか?
また、どこかに良い資料は無いでしょうか?
分かる方、お願いします。
可能です。jarファイルをURLClassLoaderで読み込んでloadClassすればいいだけです。
資料は検索してください。
なおマニフェストファイルが含まれる場合はそれを解析する必要があります。
>>3 >>4 呼び出しに成功しました!
Jarの中で作っているSwingの作成でInvocationTargetExceptionが発生(呼び出し元で)しましたが、自力で解決できると思います。
ありがとうございました。
6 :
デフォルトの名無しさん:2014/03/16(日) 04:04:56.45 ID:ADiZNGzO
basicの基本、上から順番に実行していくタイプのプログラムしかできない。
「コードが大きすぎる」と怒られたので、クラスというのを学ぼ・・・・。
くそむずかしいw
誰に怒られるんだよ
荒らしいないと思ったらID出るようになったんだな
3月18日に何か発表でもされるの?
え? コンパイルするとエラーで「コードが大きすぎます」って
限界のサイズがあるみたい・・・。
mainに1MB書いたら怒られた。
一日に一回だけ処理を行ないたい場合はどうすればよいのでしょうか?
一日に一回だけ実行すればいいよ
一日に何度も実行するのですが特定の処理だけ一日に一回だけにしたいのです。
実行した日付をファイルにでも書き出して実行したか実行するかをチェックすればいいんじゃないの
ありがとうございました。
Java でデスクトップ上でキーボードで何かボタン押したら何かするっていうようなことってできます?
Java プログラムの窓とかGUI部品にフォーカスがあるときに
そのイベントリスナーで何かすることはできるんですけど
そういうGUI部品とか出さずにフォーカスがどこにあってもキーに反応するような感じにしたいんですけど
かじった程度でプログラマ気取りしないでよITドカタさん
>>16 そのデスクトップのソフトによるんじゃないの。
Javaって今全盛期だけど人手が足りなくて
ドカタさんの一斉教育が不十分な印象があるんだけど
>>11 java.util.Timer
(javax.swingじゃないよ!)
Javaドカタさんは出来る人と出来ない人の差が激しいよね
人数出さないと金もらえないような簡単な仕事だからドカタ雇う必要があるんだろ
そっかー経営者は有能なJavaプログラマを求めてないのかなぁ
こいつが今まで荒らしてた奴かw
ID出るとわかりやすいなwww
ITドカタさん明日から仕事だよ
このスレにいた土方厨だろ
>>18 リプありがとうございます
研究でボタン押すとデスクトップをキャプチャして
Java で画像をごちゃごちゃするようなのを作りたくて
マウスでクリックするメニューを作りたくなかったので
いろいろ調べた感じやっぱり無理そうですよね…
Javaっつたらドカタ用言語の筆頭だよね
スーパーJavaプログラマとか聞いたことない、イメージも出来ない
20世紀のJavaは新興宗教でした。
21世紀のJAVA(笑)は、ブビ厨の受け皿となってドカタの巣窟。
漠然とした質問ですみませんが
最近JavaからMySQLを操作するコードを書いているのですが、どうにもSQL文のソースコードが汚いのです。
MySQLを操作する場合、Javaでは何かメジャーなSQLビルダーなのでしょうか?
そのほか、細かなテクニックや、参考になるURLを教えていただけると幸いです。
>>29 だからデスクトップによるっていってんだろ。まずデスクトップが何だかんだわかってないだろ。
>>30 他の言語を貶さないと安心できないほどダメな言語を使ってるのか。可哀相だな。
468 デフォルトの名無しさん sage 2014/03/16(日) 20:34:59.67 ID:+0w7Q/Uu
Ruby案件ってもうないんでしょ
趣味で使うとしてもどこに使いどころがあるの
早く寝なよードカタさんの朝は早いよー
>>32 どんなソフトかわからないけど、O/R Mapperという種類のソフトを使う方が一般的だと思うよ。Hibernateとか。
またくだらない質問に大真面目に回答しちゃった
>>35 おぉ、O/R MapperとかHibernateとか、技術ブログで見たことある単語。
>>35 途中で送ってしまった…
ありがとうございます、調べて使えるようにします。
>>38 完全に仕事の質問だったねー
奴隷としての仕事はどう?
ドナドナドカタワドカタカタワ
>>39 ん?
Javaなんて欠陥言語は使いたくないと思っていたんだけど、やっぱり使いたくないと再確認した。
とはいえ、オープンソースは偉大だなということを学んだよ。
それは失礼いたしました
ORマッパーも知らないところみると研修中のぼくちゃんだろ
以前のconst君か
45 :
デフォルトの名無しさん:2014/03/17(月) 05:23:16.30 ID:IV4bO854
ITドカタになれなかったセルフガードマンの嫉妬がひどい
業務系のJava屋さんって捨てられたらどうするの?
あんなモッサリとゴツイもの1人で使い続けることできるの?
プログラミングスキルなんて単体では大した価値ないよ
当然、そのプログラミング言語がサポートしてる開発手法もセットだろ。
NG推奨 ドカタ
うんこjavaドカタの仕事は今日も大したことない
webアプリケーションでClientAbortExceptionを発生させたいのですが、
レスポンスをwrite、flushしてその後ブラウザを終了して
netstatでソケットがクローズされているのを確認して
その後先程のレスポンスにwrite、flushしてもClientAbortExceptionが発生しませんでした。
こちらからの報告以上です
IT奴隷の日常ですねわかります
今日も元気にjavaでうんこフレームワーク満載でデスマ一直線webアプリを作ってきたぞ
客にうんこ食わせて便所掃除で儲ける仕事ですから
>>57 ※「つっぱりハイスクールロックンロール」の節で♪
幻覚が見えるようになる職業って怖い
データを関数に渡して、関数内でも変数宣言して、処理して戻して・・・
って、すごく無駄な気がするんですが気のせいですか?
無駄だからやめたほうがいいよ
>>61みたいに基礎も出来ないとドカタにすらなれない
こーなるともうどーしよーもないよ
>>61 お前みたいな奴が多いせいでCOBOLという史上最低最悪の言語が流行した
いやCOBOLは小さなプログラムの組み合わせとしてアプリを作るからグローバル変数オンリーでもまだいいが、
Javaでそれやると本気で保守不能になる
>>61 その"無駄"を止めると、mainに全ての処理を書くことになるわけだ。
何万、何十万のコードをな。
>>61 BASIC使ってみればいいよ。Visualとかまがいものでなくて、行番号つけるやつ。
67 :
デフォルトの名無しさん:2014/03/18(火) 09:12:08.28 ID:yus0YWej
とはいえ、処女は偉大だなということを学んだよ。
何万行のコードをJavaドカタが大量に書かねばならぬ
ゴミJavaドカタの今日の仕事質問はこれですか?
仕事してないかもですね、書き込み時間帯的に
>>61 それより数桁上の無駄な処理がごろごろしてるから
ほとんどの場合そっちを気にすべき
>>69みたいな嘘レビューを信用したらドカタにもなれない
2chの匿名のレスに信頼性はないから、
真面目に質問してありがとうございますしてる人は簡単に騙される人間
|ω・`)すみません…JavaでServretを作る際の質問はここでも良いのでしょうか…?
ここで糞質問するってことはドカタの仕事質問か解雇されたドカタ、あるいはドカタの資質がある人だから
回答する人もそういうレベルのレビューしか返ってこない
どれかに該当するんなら自分で修業して得た知識のほうがよっぽどいい
どうしても質問したいんなら知恵袋とかのほうが少しは有益なレビューが得られるでしょう
>>61 setterのメソッド名と仮引数名とフィールド名と@param名に
いちいち似たような名前タイピングしてると
そういう気分になることはまれによくあるから安心しろ。
>>74 ドカタさんは2chしてないてお仕事しなよ
Java8来るのは西海岸の朝頃か
Javaはバージョンアップしてるのにドカタさんの能力は横ばい(笑)
78 :
SuperDokata:2014/03/18(火) 19:40:12.39 ID:8JATeyAW
D:8JATeyAW
が自らの糞知識をもって糞教えてるそうですよ
こうご期待
質問失礼します。
JavaでMacのドックアイコン(下のアイコン)を変えたいです。
--------
Application clApp = Application.getApplication();
Class<? extends Application> clClass = clApp.getClass();
Method clMethod = clClass.getMethod("setDockIconImage", new Class[] { Image.class });
clMethod.invoke(clApp, new Object[] { clImage });
--------
上記のコードで変える事ができました。
が、proguard4.10で難読化した後試したら、Application.getApplicationの個所でRuntimeExceptionが出てしまいました。
(エラーメッセージは"Unimplemented"でした)
Application内のソースを見たのですが、
--------
static RuntimeException unimplemented()
{
return new RuntimeException("Unimplemented");
}
public static Application getApplication() {
throw unimplemented();
}
--------
となっていました。
難読化した後のjarで正常にアイコンが表示されるようにしたいのですが、proguardのどの辺を修正すれば良いでしょうか?
分かる方、お願いします。
そんな細かいこと自分で解決しろアホ
proguardよく知らんけど難読化とリフレクションは相性悪いと思うよ。
昔(1.5?)はFrame.setIconImage()でDockアイコンも設定できたんだけどねー。
>>82 答えるなら真面目に答えろ
出直してこいザコ
>>80 proguardがリフレクションの中まで考慮してくれないということだろう。
面倒だけどリフレクションの部分を抽出して難読化しないクラスにまとめるしかないのでは。
>>80 です。
解決しました!
あろうことか、Application と getApplication の名前を変えていたようです。
Shrinking -> Keep additional classes and class members に com.apple.** を追加してやって、
Class members に <fields> と <methods> (要は全て)を登録する事で解決できました。
口頭でも文章でも人に問題を説明すると、どこが問題か自分で見つけやすくなりますね^^;
ありがとうございましたー。
>>85 お前みたいなザコじゃここでは適当に解決できたかもだが
仕事では役に立たなくて解雇される運命だからな
>>87 部下4人いる社員がこのザマw
こりゃ部下も脳たりんドカタのままだわ
だめな上司のせいで永遠テストだこりゃ
ソフトの設定ミスでしたと報告(ホウレンソウ)してくれたので会社員としては合格。
>>88 分かった分かった。
お前みたいな奴とは一緒に仕事したくないから人事から相談きたら速攻却下。
俺の会社入れないわ。
もう最後にするけど、問題解決したから誰が何と言おうと俺の勝ちだわwww
じゃーな。
2chでこんなこと質問してる上司wさすがjava業界
仕事の質問を2chで質問して見事解決w
部下には知られたくないね
>>92 雇い止めのドカタさん、仕事は探してますか?
マ板でやれよ雑魚ども
>>94 つまりあなたはJavaの自分の能力を誇示するためだけに入り浸ってる自己顕示欲野郎でしょ?
余計なこと言ってたら質問者は釣れないよ、素直に全裸待機しているべき
Java SE 8 キター
>>90 そいつは常にアホとか馬鹿とか書いてる真性だから相手しないほうがいいぞ
プログラムに関することは一切書かない。というより書けないといったほうが正しいが
馬鹿には無理
>>97 プログラム書けないなら黙っててください
無能ドカタJavaドカタさん
Javaは君たちドカタにも理解できるように設計してあるよ
Servletで質問です。
クライアントからアクセスされて少し時間のかかる処理をやりたいので
別スレッドにしたいのですがクライアントにはすぐに
レスポンスを返して接続を切りたいです。
このような場合どういう方法があるでしょうか?
Javaのスレはここしかないから質問したんだろうけど
そんなの自分で調べろと言いたい
それにここの連中はドカタレベルなんだから曖昧でデタラメな回答しか反ってこない
それを承知で質問してるとしても低レベルすぎます
java8のインストールで
ウィルスソフトやツールバーの抱き合わせ製品出てこなくなったの俺だけか?
>>102 動画アップローダの再エンコ待ち画面みたいなことしたいならFutureとCookie
まともな回答返ってこないスレなのになんでまた立てたの?w
Javaドカタは常に場当たり的な処置しかできない低能さんです
ム板の汚し続ける糞野郎消えろや
>>104 >>105 いるよねム板にはこんな役に立たない低能が
ボソッとしゃべって俺わかってるぞみたいな回答をして(全然わかっていないのに)
文章で返すことが出来ない低能ゴミ、回答になってないからレスしないでください
教えてください。
java初心者です。
APIを活用したいけど膨大な量があって使えない&調べきれません。
欲しいものがあってもそれが存在するのかもわかりません。
皆さんはどのように使っていますか。
ひと通り見て覚えるしか道はないのでしょうか。
こんにちは厨房
Servletからサブスレッドを起こしてそちらで処理し
Servletのほうはreturnしてしまうことで望みの処理になりました。
>>109 こういう馬鹿質問すること時代終わってるんだからよ
>>102 解決しちゃったのね。
クライアントがリクエストしてサーバーがレスポンスを返すのが基本なので、
サーバーが別スレッドでやってた処理結果を送信する方法をどうするか問題になる。
1
一番簡単なやり方はhtmlファイルの
<meta http-equiv="Refresh" content="<%=refreshRate%>">
のところのrefreshRateを動的に設定することで定期的に結果を見に行く。
2
Cometという技術もあったけど今どうなってるか知らん。
3
AjaxやjavaScriptでソケットをつかう。
>>109 使いたいAPIがあったらググって該当APIを探して使うだけ
「探しても見つからなかった」と主張するのならどのようなAPIを探して見つからなかったのか具体例を出してね
>>116 すみません。
もっと根本的なところで
「A」がしたいけど「A」ができるAPIが有るのかもわからない、です。
そのAPIが有るのが存在していることを知っていればggrことも可能ですが
知らない場合は無駄な時間を使いそうです。
やはり数千ある物をひと通りみて概要をつかむほうがいいのか
「なんかやっているうちに慣れてきた」
というものなのか。
極力効率にしていきたいので
皆さんはどのようにして覚えていったのかをお聞かせいただきたい。
120 :
117:2014/03/19(水) 17:36:49.26 ID:YxW5wh3i
>>119 ありがとうございます。
そのたびにググるのがベストと言うことですね。
恐らく本職の方もそうされてるんでしょうね。
地道にググってだんだん慣れていきます。
121 :
デフォルトの名無しさん:2014/03/19(水) 17:44:49.34 ID:tXYePzaA
cron4j使ってたら
*/55 * * * *
としたら1時55分と2時00分の二回にタスクが実行されるんですが
*/55とした場合は55分おきに実行されるものだと思っていたんですが
これはバグでしょうか?
>>120 問題は情報を見つけることではなく見つけた情報が新しいか古いかを判別すること
Javaのコードは単純にググるとJava 6のコードばかりヒットするからそれをそのまま使うと「お前いつまでそんな古いコード使ってるんだよ」と言われることになる
例えばファイル入出力のコードは単純にググると古いAPI使った(ゴミ)コードばかり
だから
>>119のサイトを探す上ではググるワードに工夫が必要。普通にググったら見つからないw
123 :
デフォルトの名無しさん:2014/03/19(水) 18:23:13.93 ID:c3S3SpX5
書き込みテスト
ほらみてよこれ
馬鹿は質問者はいつまでも質問繰り返してるし、
自己顕示欲回答してる馬鹿もいつまでもつきあってるでしょ
こういうのがム板の正常な流れになりつつある
こいつら全員ゴミなんだから消えてもらいたいね
>>109 JDKドキュメントのdocs/technotes/guides/index.htmlあたりから
興味のあるとこかじってみよう。
>>126 はいゴミの回答入りましたー
嘘知識を自慢して楽しい?
>>122には概ね同意だな
javaは解説サイトが多い分、現在では非推奨の処理で解説してるコードも多かったりするし
初心者視点からするとその辺の取捨が大変だと感じた
最終更新日時が2003年とかだとまず疑ってかかるかな
>>128 が馬鹿なのは概ね賛同
Javaは解説が多いサイトも本もあるけど結局ドカタ用言語だし
馬鹿しかやらない言語だから最終更新日時も確認せず情弱が多い
130 :
117:2014/03/19(水) 21:25:44.28 ID:4UM5MjvD
>>126をはじめ皆さんありがとう。
初歩的で失礼しました。
趣味として始めたばかりですが
早く形になるよう励みます。
φ(..)メモメモ。
ありがとうございました(笑)
2chのゴミしか集まらない掲示板で感謝の念を表した大馬鹿質問者
完全にIT派遣=奴隷の道一直線だね、これからも糞エセプログラマでありつづけるだろう
>>122 googleの期間指定は便利だね。1年以内のページに絞ってる。
まあ、古い情報みてやってみたblogにひっかかる場合もあるけど。
>>132 だから何?
古い情報をもってくる馬鹿はいるんだから
お前のやってることがどうこうじゃないでしょ
ID:pgTJKr0l 必死だな
それ今日のNGIDじゃん。
pgか
pigなんだろw
Eclipseで開発しようと思うんだけど、インテリセンスがまったく出ないのはなぜ?
>>138 原因が自分にあるってなんでわからないの?
短文で回答が終わってしまうJavaドカたに同情の余地なし
ID制導入反対の立場だったけど、便利だなコレ
ID:pgTJKr0l みたいなのNGに出来るからな
今日も出来るだけ早く頭の悪そうな文打って正体表してくれな
速攻でNGするから
NGされてる奴の話してんじゃねえよ
結局ドカタは自分の無能さにイライラしてしまうのか
自信のある人間はこんなに余裕のない態度はとらない
馬鹿には無理
NG設定してまで質問スレ読んでるやつw
ここは質問スレだから議論が行われることは殆どないだろうし
入り浸ってるとしたら質問者側ではなく回答者のほうだろう
つまり今か今かと質問者という餌を待ち続け我先にと回答したがる自己顕示欲旺盛の異常者のことじゃん
>>109 Javaを何やと思っとる?
Javaは多くのプログラミング・コンテストでも、
採用されているんだぞ
多くの天才どもが、Javaを作っている
文字列、日時、数学の関数、
君らが思いつくものは、何でもあるわい
APIは目次だけ見ればよい。覚えるのは無理
ついでに質問です
Win8で、Eclipseできますか?誰かやってる人います?
天才がJavaでじゃなくて、を作ってるんだよな
ざまあ
>>151 EclipseよりNetBeans使え
天才がJavaで何かすごいものを作るっているさまを創造できないよね
天才は何を使うんだよ。
LISPか?Cか?
C++はJava以下だからないだろうけど。
すごいものってなによ?
Javaっていうドカタ言語はC++みたいにいろんなテクニックが使えない
馬鹿が変に高等なテクニックを乱用するのを防ぐために制約された糞言語になった
JavaでP2Pテレビ電話見たいのを作りたいのですが
どのあたりを勉強すればよいでしょうか?
良いサイトや本などもありましたら教えて欲しいです
>>158 真性の馬鹿が現れた
勉強する以前に勉強の仕方を教えていうんだからな、しかもスレ違い
こういう人間はプログラマとして大成しないし、ここにいるだけ無駄
ざっとスレ読んだけどこの人毎日張り付いてるのか…
すごいものか。
みんなが大好きEclipseとか?
Hadoopとか流行ってるけどどうだろう。
どっちもjavaだな。
>>160 レスの内容見たら、コード書けない人だって一発でわかるよね
プログラマじゃなくても書けるようなレスしかしてこないもんw
ドカタは仕事上のコーディングでも苦労しているね
単純な労働作業が出来ないんだ、だからここで質問してる
マー板逝けよ雑魚ども
プログラマに相当恨み持ってるみたいだからなんかされたんだろ
現実でプログラマに馬鹿にされたとか
プログラマ志望だけど全然なれないとか
奴隷志望の人間っているの?奴隷は気付かぬうちに奴隷になりたがっているとか言うけど
プログラマ市場の悲惨さを知らない無知野郎がなるんでしょ
>>161 あんなの規模がでかいだけでやってることは単なるドカタバッチ処理
java製って聞くと、「またもっさり動作か」と起動を躊躇してしまう。
分からん!!
新しい日付API、俺は嫌いじゃないが java.time.chrono との付き合い方が分からない
for (JapaneseEra era : JapaneseEra.values()) {
System.out.print(era.toString());
System.out.print(':');
System.out.println(era.getDisplayName(
TextStyle.FULL, new Locale("ja", "JP", "JP")));
}
出力:
Meiji:-1
Taisho:紀元前
Showa:西暦
Heisei:2
完全にオブジェクト指向が目的化していて無駄に複雑になってるよな
.NETみたいにシンプルなのでいいのに
ドカタ二号
が現れた
ろくに知らないのに用語を持ち出し経験者であるかのような振る舞いをするドカタ
仕事で得た知識がいかに曖昧で理解不十分かがわかる
今日はお薬飲んだ?
ドカタは毎日抗鬱剤でしょ
おれおれフレームワークでデスマ一直線のwebアプリ作成今日も頑張ってきたぞ
抗鬱剤飲みたくなきゃ戦線離脱っていう賢い選択肢もあるよ
一つのキーワードをしつこく書き込む人は、そのキーワードがコンプレックスになっている。
ってのをどこかで読んだ。
ドカタ ←これは誰でもわかる言葉なんだけどさ、それ書き込んでる人はそのドカタさんなんじゃないの?
質問スレで初心者相手にグダグダ言ってるからダメなんだよ。
プログラムの神様は見てまっせ。
どこで読んだの?
>>179 ドカタにすらなれなかった奴だろう。
就職浪人あたりかな。
勝手に神を作り上げてまつりたてるドカタさん
マジでこの業界は宗教じみてるほど精神がおかしい
やっぱりブラックなんだね
NGIDおつかれさまです
必死なんて見ないでもその日で一番発言回数多いやつだからすぐわかるんだよね
JavaでGUIといえばHTML。
サーバーでJavaを動かしてHTMLをブラウザへ返すわけ。
基本的にJavaはサーバーで動かすのが一般的で、君がアプリと聞いて思い浮かべるようなアプリを作るのには普通使わないの。
>>187 回答ありがとうございます
サーバーサイドのJavaについておっしゃってるんだと思います
おっしゃっていることはその通りだと思います
いま、Javaを復習していて、あえてGUIの勉強をしているので、
現状Swingはどういう位置づけなのか聞きたくて質問しました
質問の仕方が悪くてすみません
>>189 レガシー。
一応JavaFXという新しいGUIフレームワークがあるんだけど、全く使われていないし使われるようになる気配もない。
やるなら少しは実績のあるSwingの方がマシ。
邪道と呼ばれてもいいなら、SWTというのを使えばJava臭くない使いやすくてきれいなGUIが作れるよ。
Javaドカタの回答は心の奥では無意識のうちに質問者を軽蔑して
優越感に浸ってるんだよな
>>192 今助かったかもしれないけどのちに後悔することになる
このスレに来たことを
too many aborn
あぼーんだらけだよ、ドカタの人生は
>>186 何でもいいから、分離できるように作る練習しておけばいい。
>>197 練習してもドカタにしかなれないから安心しろよ
>>198 Javaでなくて何でもいいってことだぞ。
ID:8onNXptuはNGIDかな
あれ、今日はこいつNGに入れ忘れてた。コテハンつけろよ。
Swingもそれはそれで面白いよ
作ったアプリが実用的なものになるかどうかは置いといて
今は昔、ITドカタの懐古
Java8の日本語APIドキュメントはいつごろになるだろうか
Java7が相当遅かったから無い可能性があるな
英文読めばええねん
過去の日本語資産と今後の翻訳活動をボランティアに移管すれば
全員がハッピーになれると思うのだが。
「APIは知的財産」とか主張する企業には難しいか。
知的財産は先進国に残された最後の武器なのに
>>197 回答ありがとうございます。
>何でもいいから、分離できるように作る練習しておけばいい。
その通りなのですが、恥ずかしながら、
私の実力では分離できるような設計までは難しい状況です
馬鹿には無理
クライアントアプリなんてSWTでいいだろ。高速だし見た目もwindowsライクだし
どうせJavaでクライアントアプリなんて趣味以外で作る機械ないんだから
javaのGUIが商用で使われてるの見つけたぞ
VMware vSphereのクライアント
J#だけどw
IBMはクライアントJavaをよく使ってるよ
有名なのだとNotesがあるしeclipseベースのも色々ある
もちろんSwingは使わないw
その昔、Swing+Servletのジャバジャバな企業システム作ったことある
クライアント⇔サーバー通信はXMLだのJSONだのの汎用フォーマットに変換することなく、SerializedしたJavaオブジェクトをそのまま流せるので楽だった
無職ダメ板のやつらに馬鹿にされるム板住人w
146 名前:名無しさん@毎日が日曜日[sage] 投稿日:2014/03/22(土) 17:10:52.10 ID:M7KDhKq+
ム板は質問者より回答者が低レベル過ぎるんだよ
あやふやな回答ばかりしてた奴に突っ込んで聞いたら逃げたし
148 名前:名無しさん@毎日が日曜日[sage] 投稿日:2014/03/22(土) 20:36:22.64 ID:QQzmUo/7
答えが返ってくるような質問してる時点で自分も馬鹿で低レベルということに気づいてないんだろ
大抵自分で調べるなりリファレンス読めばわかるからほんとうにわからんことは
ム板で聞いてもまず答え何か返ってこない
3/22 は1位と2位 aBNmXC5d 26レス
とは同一人物tみなし、計65レスとしたいところだが
うぜいからアク禁にするなり壊してやれよ
特長ある文書くからID変わっても一発で特定できる
見返したらIDついた15日からずっと1位のままだわこいつ
で、これって uy?まさか QZ !?
>>214 最初から上手くできる必要はない。
いくつかのツールキットに対応させていれば見えてくるはず。
ゆとり死ね
JKava 8 使ってみたくてインストールしようとしたら
RegDeleteKeyExA がないとかなんとかいわれたんですけど><
ありがとうございます。おかげで解決しませんでした
解決できないならほかの道探したほうがいいだろうね
>>232 Java8はWindowsXPをサポートしなくなったのでインストールさせてくれなくなりました
なにー、大変だー
>>237 はもう何も頭にインストールできない頭になりましたとさ
>>237 そうだったんですね><
親切にありがとうございました
そういえば XP ももうじきサポートきれるんでしたっけ…
買い換えなきゃ…
"iN+OyuMJ"はオワコン
>>240 ありがとうございました(笑)
Javaドカたはニュースも知らない馬鹿
>>242 コテつけろやゴミカス
びびってんじゃねーぞ屑が
>>232 >>237 えらく不親切なインストーラだなあ、おい。
java.comが8対応するのはいつだ不安になってきたぞ
一生XPやってろ
>>244 java.comなんて普通は使わねーよw
一生Javaやってろ
C++からJAVAへ、ちょっとしたソースコードを移植したい。
参考になるHPとかありませんか?
エラー出してから質問しろクズ
今時64bit Windows使ってないような奴まだいたんだ。
蓋を開けてみれば荒らしていたのは案の定ゴミ屑ニートただ一人
このスレNG設定までしてずいぶん熱心に読んでる奴いるのにまともな回答出てこないよねw
>>253 あれはプロの2chネラーで、ニートは俺らだけというオチ
唯の厨房
去年の今頃を思い出すねえ
ゆとり死ね
プロのレスは1レス100円で取引されているらしい
一日60レスX30日で月18万か、紹介して
ゴミのレスは0円オナニー
263 :
デフォルトの名無しさん:2014/03/25(火) 18:16:57.09 ID:/pK65cV1
Windows7 64bitユーザだけど教えて!
今、32bitのJRE7-51が入っているんだけど、
JDKを入れたい。
どのバージョンを入れてた良いの?
どのバージョンを入れたら良いのかと漠然と聞かれても答えようが無いかも。
枯れたもの(古いもの)を入れた方が良いとは思う。
必ず入れなくてはいけない物があればそれを網羅したものを入れる。
とりあえず入れたいだけってだけなら 6u45 で良いんじゃね?
8 は人柱募集中だから、まだオススメはできない。
最新バージョン入れとけば旧バージョンのソースもコンパイルできるし、
旧バージョンのVMをターゲットにしたクラスファイルも生成できる
わざわざ古いバージョンのJDKインストールする意味が分からん
266 :
デフォルトの名無しさん:2014/03/25(火) 20:02:56.64 ID:/pK65cV1
>>264-265 32bitのJRE7が入っているのに、64bitや8のJDKを追加して良いのか…という質問でした。
お二人の仰ることは両方正解だと思います。
大変、参考になりました。
ありがとうございました。
アホか
一回インスコしてフォルダー丸ごとコピーしたら即アンインスコ。
バージョン違いを複数入れてEclipseで選択。
Eclipse起動用のJDKだけ環境変数JAVA_HOME通してるわ。
>>266 Javaを何だと思ってるんだ
最強のドカタプラットフォームだぞ
そんなドカタにありがちなシチュエーションに対応してないわけがない
ランタイムのサポート期間には限りがあるからさっさとJava8は試した方がいいな
本体は7でテストコードは8とか柔軟に分けれたらいいのだが
Javaのメモリーに関してなんですけど
Runtime.totalMemoryとかfreeMemoryで取得する値と
Windowsのタスクマネージャに表示される使用メモリー数がまったく一致しないんだけどどっちを信用すればいいの?
てっきりtotalMemoryで取得できる値がタスクマネージャにも表示されると思ってたんですが
しかも-Xmxで指定したmaxメモリ数とかも平気で超えた値がタスクマネージャ側には表示されてるんですけど
そうゆうもんなんですかね
>>263-266 Windowsは、64のProgram Filesと、
32のProgram Files(x86)に分かれている
でも、デスクトップもそうだけど、
パスに空白が入っているから、ここに入れるとマズイかも
\C 直下に置くのがよいかも
漏れのノートは、パソコン工房のWin8
JREは最初から入っていない
Java, Eclipse, NetBeansできるかな?
今どきパスに空白入ってる程度どうということはないよ
275 :
273:2014/03/26(水) 04:06:35.06 ID:ybtB2GSh
Windows入れてるとマズイかも
基底はアク禁か
今eclipseの色分けを本気で頑張ってるんだけど
みんなどういう規則で色分けしてるのかな?
特に強調がハッキリわかる太字・斜体字・下線を有効に使いたいのだが
一貫したルールを持ちつつ分けるのが意外と難しい
例えば、静的(static)には下線(underline)。
宣言(Declaration)には太字(bold)。
継承(inherited)には斜体字(italic)。
ってしてみたんだけど、外部からデータなり変数なりを貰ってくるイメージだと
inheritedもstaticも下線か斜体かのどっちかで統一した方がいいよね
JDK8の中に、jrunscriptとjjsと二つのjavascript処理系がある。
tomcat7のヒープメモリを拡大したいのですが
service.batの--JvmMsと--JvmMxを変更すればよいでしょうか?
WildFly8はJDK8だとJSPでエラーになるな
StringBuffer#appendでJasperExceptionが出る
JAVAイよ~
JAVAさっぱりわからんよ~
Java がヤバイと聞いているけど、どうヤバイの?
私がクグった限りでは、ホームページを表示する際に、悪意ある Java が実行されるというもの
これはプラグインとして使わない様に設定すればいいだけじゃない?
悪意あるソフトを落として、自分で実行するヤバさというのは Java に限った話ではないし
プラグインを殺していれば、ヤバさは exe ファイルと同じだと思うけど違うの?
>>284 javascriptからJavaにアクセスした時にセキュリティポリシーが無視できるってやつ? javascriptもオフにしとけば。
あと、exeはサンドボックスないが、Javaはサンドボックスがあるからと安心してしまうと、そこに穴があった場合、危険ということ。
exeにもサンドボックスはありますし
Windowsだって毎月セキュリティパッチが出るくらいだから
ヤバイのレベルとしちゃ似たようなもんだろ。
アプレットの話だから騒ぎになっただけだよ
なんだかんだ言って昔は広く使われてたから知名度あるし、
騒ぎの前までは何となく入れてる人も多かったから危険度は極めて高い
一般ピープルのPCから一掃されたことで余計な悪評の元が無くなって
オラクル的には完全にお荷物であるクライアントJavaを葬り去る良い機会になったんじゃないかな
アプレット踏むのは
知らないJARファイルクリックするぐらい危ないですよーという話だろ?
そんなことよりJenkinsやMavenのプラグインに悪意あるコードが混ぜられないか、
の方が心配だ。
オープンソースによる素性のチェックとか、もはや機能してない段階なのでわ。
オープンソースなら誰がコミットしたのか記録に残るから問題ないっしょ
オープンソースなら・・・誰かが・・・きっと・・・コミットを・・・チェックしてくれてるはず・・・
そんなに心配なら使わなきゃいいだろう
誰でもコメットさんできるから問題なんじゃ?
windowsがオープンソースになったら
安全だと思う?
安全以前にWindowsという複雑怪奇な互換性オバケを保守できるのはMSだけ
烏合の衆じゃ破綻してOSの体をなさない
仮定の質問には答えられません()
JavaのクラスAでprivateメソッドaを宣言した後
クラスAを継承したクラスBを空白で宣言した時
クラスBではメソッドaを継承する事が出来ないと書かれていましたが
これってクラスBからクラスAのメソッドaを呼び出す事は無理ということでしょうか?
だとしたらKen Arnoldのプログラミング言語JavaでいうクラスAでメソッドaを使えるという契約をBが継承したという事に
矛盾するのではないでしょうか?
private ってそういうものでしょ
継承先で使いたければ protected
>>297 継承というのはあるクラスを別のクラスに特別な方法で関連付けること
決してクラスが融合するんではなく、継承元と継承先はあくまで別のクラスだ
継承してもクラスAに定義されたメソッド(の実装)は依然メソッドaを使えるんだから
>クラスAでメソッドaを使えるという契約をBが継承した
には矛盾しない
private無いと、おっかなくてコンストラクタからメソッド呼べねぇよお
全部publicでstaticでいいじゃん
まともなサンドボックスも作れないくせに何がアプレットなくなってよかっただよ
無能なオラクズはさっさとGoogleに譲れよ
ほんとうオラグズの社員がウザイわ
IEがflash, applet, silverlightとかプラグイン全部切り捨てて
javascriptに一本化するって話じゃなかったっけ?
わざわざブラウザに埋め込む必要なかったんや
>>302 そりゃ前提が間違ってるよ
オラクルにとってクライアントJavaなんてそもそも全く必要ない
過去の負の遺産が無ければ喜んで捨てる
実行したい関数一覧を登録してまとめて実行する方法はありますか?
現在、処理したい内容がクラスごとにclass A public void save(), class B public void save()のように作ってあります。
アプリ終了時などに、各クラスを記述したsavelist() {A.save(); B.save()}を呼び出しているんですが、クラスが増える度にあっちこっちに記述して見落としたりします。
そこで、各クラス内部で登録処理が完結する方法はないでしょうか。
関数ポインタのArrayListみたいなことができれば解決できるんですが。
>>305 インターフェースを定義して
インターフェースのリストを持てばいいのでは
>>306 インターフェースをimplementsした関数をリスト化できるんですね。
調べてみます。ありがとうございます。
うまく実装できました!ありがとうございます。
インターフェースだと関数名は統一しないとだめなんですよね。
もうちょっとランダムに登録できないか調べてみたいと思います。
>>304 きもいんだよ
オラクズの社員はよ。さっさと消えろ。
プログラムも出来ない木偶の棒が
>>305 つ 「アノテーション」
JUnit4かじってみれば使い方はすぐにわかると思う。
いやどう考えてもインターフェイスで正解だろ
わざわざリフレクションとかアホかよ
312 :
デフォルトの名無しさん:2014/03/29(土) 19:41:45.09 ID:n4WDTRkd
JavaFXはクライアントじゃないのかよ
そうだね
で、流行ってる?
オラクルのやる気は感じる?
Javaドカタは一生ドカタだからな
ほんと馬鹿、このスレで発狂するなよ
Javaとは何ですか?
ggrks
哲学的概念を問うているのだ
反VBのドカタの拠り所
機械語→アセンブラ言語→C言語→C++言語→Java言語
というプログラム業界の王道の最終形。
異論は認めない。
反MSドカタの拠り所
プログラマにだけはなりたくねえな
少数精鋭ならまだしも、実際はドカタ大量投入してライン工作業みたいなもんだし
どんだけスキル身に着けても周りがついていけなきゃ意味ないもんな
>>319 ほぼそのルートを辿ってきたけど、例に漏れずC++のプロジェクトは惨憺たる結果になったわ・・。
C++が悪いんじゃない
C++を使う人間が悪い
MSだろうがGoogleだろうがセキュリティホールを量産するんだから、
人類にはまともに扱えない言語と結論付けるほかない
C言語最強ってこと?
>>325 C を最初に触ったのは 1987 年頃だけれども,どうもそんな気がしてきた
C が最強な理由はいまだにわからないけど
>>325 人に書かせる立場にない人にとっては、そうかもな。
サーブレットでJSPからサーブレットに値を渡す際に
HTTPステータス 500 - サーブレットの実行により例外を投げました
とあり、該当のエラー箇所をみてみると、
エクリプスなので、注意マークがありそこをクリックしたところ
プロジェクト準拠及びJREを1.7に変更
とあり、それに変更したところ、先ほどまで見えていたJSP画面すら映らなくなりました。
こういったエラーの時どうすればいいでしょうか?
>>327 業界にしがみついている人にとっては、そうかもな。
別業界にいけばプログラミング能力の持ち主は…、言わずもがなだろう。
330 :
328:2014/04/02(水) 22:15:48.58 ID:DOU/B2aC
>>328 Cannot switch on a value of type String for source level below 1.7. Only convertible int values or enum variables are permitted
ちなみに、エラーそのものはこういったメッセージになってます
javaが出しているエラーではなさそう。サーブレットコンテナは何を使ってる?tomcat?
サーブレットコンテナを動かしているjavaruntimeと
あなたが作ったプログラムをコンパイルしたjavaruntimeが
別物でバージョンが異なるから起こると推測しますがどうでしょうか?
>>331 tomcat 7.0.47
JRE 6 とあります。
何か他に情報必要でしょうか?
ちなみに、パソコンを変えても同じところでつまづいてます。エクリプスで何か設定を間違えてるのでしょうか
jre6 じゃswitchで文字列分岐できないよ。jre1.7でTomcatを動かさないといけない。
Tomcatをjre1.7で動かすのと
プロジェクトファセットでjava1.7を指定しないといけない。
Scanner sc = new Scaner(System.in)
Connection con = DBManager.getConnection();
インスタンスの生成は
クラス名 変数名 = new クラス名()
と学習したのですが、上の二つの例外的なものは各々どういうことなのでしょうか?
> インスタンスの生成は
>
> クラス名 変数名 = new クラス名()
これが誤解の原因なので学習教材を変えることをおすすめします
>>338 一応、サクッと質問自体にも答えていただけますでしょうか?
サクっと答えられるほど簡単なものじゃないので
(学習書で数ページに渡って説明してるものをサクっと答えられたら本なんていらないわけですし)
Scanner sc = new Scaner(System.in)
これはコンストラクタに引数として、System.inを入れてる。
Connection con = DBManager.getConnection();
これはDBManager.getConnectionの中に new があるか、何かを返しているか。
この辺は本で説明はしないだろうね。
経験を積むしかない。
っていうか初心者用の本呼んでるレベルの人がDB扱うのは無理だから、
この件はほっといて、別の基礎をしっかりやった方が良い。
そんなことわかっても奴隷にしかなれないから安心しろ
まだ「ドカタ君」がいる
344 :
デフォルトの名無しさん:2014/04/03(木) 19:46:55.71 ID:hdAJfaMv
javacはなぜJavaで作られてないのでしょうか?
JAVAでもマルチプラットフォームを捨てればCと同じ速度は出せるんでしょ?
>>344 javacはJavaで作られてるぞ。
昔は言語仕様がシンプルだったから
サードパーティ製の高速性を売りにしたネイティブ版javacもあったけど。
JITが入る時点でネイティブと同じにはどうやってもならない
仮になるとしたら相手のコンパイラがあほなだけ
理想的にはJITの方が速くなる。実行しながら最適化できるからな。
クライアントや単発短時間のジョブには向かないけど、
JVMはあくまでサーバー専用に作られてるからそれでいいんだよ。
そういう研究論文はたまにみるけど
いまのJREのJITって今実行時情報利用してるの?
ループの実行回数とかは思いっきりみてますがな
クソ時間のかかるループ処理なんかだと
ある程度の区切りごとに出力していたログの速度がどんどん早くなっていくのが目で見てわかる
そうなのか
やじゃるん
ビーンズって結局 インターフェース と考えていいんですかね?
seizableがあってカプセル化された、インターフェース。という認識ですが違いますでしょうか?
>>337 Connection con = DBManager.getConnection();
これは、new DBManager とされて、
自由にオブジェクトが作られるとイヤなので、
こういう専用の初期化関数を使って、オブジェクトを作る
何とかManagerといって、何かを管理するクラスに多い
クラスにこういう専用の初期化関数がある場合は、
勝手にnewせず、これを使ってオブジェクトを作るべし
APIドキュメント読めば済む話をわざわざ説明って
みんな優しいんだね
getXXX() でインスタンスを取るケースって、毎回別のインスタンスを返してくるクラスと
実はシングルトンで同一インスタンスを返してくるクラスがあって、ぱっと見どっちか判らないら嫌いだわ・・
358 :
デフォルトの名無しさん:2014/04/04(金) 06:30:47.19 ID:ppz6cjtb
ArrayList<ExpressBeans> list = new ArrayList<ExpressBeans>();
とあった場合、このgenericsによって何が決められるんでしょうか?
ArrayList<String> list = new ArrayList<String>();
list.add()
list.get()
これらの操作でStringの型指定を省略できる。
という概念だけはわかるのですが、自分で作成したbeansなどのクラスをgenericsとして指定した場合の動作というのが全くわかりません。
教えてください。
でーびーまねーじゃー(笑)とかもはや初心者がサーブレットで勉強するときぐらいしか使わん死語だな
ググれば3秒でわかる質問が増えたな
じぇねりくすは省略じゃなくて、型を保証するもの
型を明示しておかないと配列にどんなオブジェクト入ってるかわからんだろ
明示と制約で安全性を誓約させることによって確実な実装が成約されるんだよ!
いや省略だよ
入れようと思えば他のも入れられてしまう欠陥品
まだ荒らしいたのかよ
4月だから木端ジャマーとか専門学校生が増えたのか
ここってプロしか質問しちゃだめなの?
木端ジャマーとか専門学校生はどこできけばいいの?
煽らんで淡々と質問すればいいじゃん
馬鹿には無理
A.java の中でクラス B, C って使ってたら
javac -O A.java したときに
B.java C.java にも javac してくれるんですか?
>>368 仕様は知らないがいつも勝手に芋づる式にコンパイルされるなと思ってた
流石に java/lang/String.java とかはわざわざ再コンパイルしないよ。
芋づるコンパイルしてほしいかどうかは-Xpreferで指定できる。
学生とドカタの質問以外そもそも無理なので学生さんはどんどん質問してね!
Makefile みたいにソースの更新時間みて
変更ある場合だけコンパイルとかはしてくれないんですか?
ant、maven
IDE使えばいいじゃん
コンパイルとか知らん
Cゲンガー・その他 → コンパイル
ジャマー → ビルド
豆な
っつーか答えるに値にことを教えてやっても礼の一つも言わないカスしかいないから
荒らししかいねーんだろ。みんな専用のコミュニティに逃げた
Javaにビルドって概念あるのか?
コンパイルしたものをアーカイバに詰め込むだけだろ、Javaって
おまえジャマーじゃないのになんでこのスレ見てんの?
それをビルドと呼ぶんだよ
特にJavaはコード生成などプリプロセスやりまくるし
>>372 interfaceがあるとはいえ、宣言と実装が不可分なのがJava。
ソース間の依存関係をヘッダで解決させるようなC言語の世界とは違う世界なのよ。
Javaでも本気で結合緩くしたいときはデザインパターンのBuilderとか使う。
Cで使ってるmakeを流用すればいいじゃん
Makefileにjavaファイルの依存関係を書くだけでいいわけだし
なにがいいのか。IDEでビルドする限り依存関係を自動で解決して不要なものを除外してくれるぞ。
Javaソース同士の循環参照とか普通にあるので、makeで一列に並べたところで
どうしても一度に芋づるコンパイルされうるんだよね。
javacはコマンドラインで指定したファイル以外は更新あるファイルだけコンパイルするんじゃないの
やってみればわかる。ファイルの更新時刻をみる
>>386 ちゃんとみてくれてるんですね
ありがとうございました
コマンドライン引数から受け取った文字列をURIとして処理しようとしたんだけど
URIとして認められない文字列を使ってjava.net.URIのインスタンスを生成しようとすると問答無用でコマンドプロンプトまでもが落ちるんだけど、何で?
コード的には
class Test {
public void main(String[] args) throws java.lang.Exception {
URI uri = new URI(args[0]);
// URI uri = URI.create(args[0]); // こっちでも落ちる
}
}
コマンドラインから
これは問題なく処理される
java Test
http://2ch.net/ これが問答無用でコマンドプロンプトまでもが落ちる
java Test hoge
ちなみにargs[0]じゃなくString s = "hoge"; とか 直接 "hoge" を渡してやった場合は落ちなかった
"hoge"の入力された args[0] を渡すと落ちる
原因よくわかんない
もう一つおかしいといえば
> String s = "hoge"; とか 直接 "hoge" を渡してやった場合は落ちなかった
これ
本来URIとして無効な文字列渡したのだから例外が発生してもいいのに例外が発生しなかった
jdk1.7.0_51
java.net.URIじゃなくjava.net.URLを使ったら例外メッセージは出たけど、やはりコマンドプロンプトが落ちた
出た例外メッセージはこれ
Exception in thread "main" java.net.MalformedURLException: no protocol: hoge
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at Test.main(Test.java:16)
>>390のこの例外自体は正常な動作なのに、その後すぐ何故かコマンドプロンプトごと落ちた。
ごめん、ちょっと違ったURLやURIが悪いんじゃなくてargs[0]に何か問題があるらしい
System.out.println(args[0].length());
をしただけで落ちた・・・
393 :
388:2014/04/05(土) 05:36:40.96 ID:Tz3VMZbn
PowerShellは、何をやってもエラーになるだけで、落ちないよ
すぐ落ちるコマンドプロンプトが悪い
bash使えばいいのに。
>Javaと関係ない処理で落ちてた
質問する前にその程度の判断が出来ない奴には
デバッグは無理だな。
自分が作るプログラムがどのような技術の上に成り立っていて
何ができるのか理解してないだろ
いや、バッチファイルから実行してたんだけど
処理の終了に exit使ってて
exitのスイッチを exit -B って書いてて間違えてたってオチなの
正しくは exit /B だったなの
本当お騒がせしてごめんね
日本語が理解できない奴にデバッグは無理だな
Javaと関係ない質問をJavaスレでするなよtn
荒らしってJava触ったことないのにこのスレ荒らしてんだぜ
びっくりだろ?
あのあの Java 習いたての学生の質問なんですけど
64bit OS の Java の int って 64bit なんですか?
>>400 int の長さが環境によって変わるのは C言語だね。
Javaの場合は int = 32ビットと規定されてるので、CPU変えても長さは変わらないよ。
C で int が 64bit ってのもみかけないけどね
>>401,402
ありがとうございます
BufferedImage の getRGB よんで RGB の int 配列取り出したら
24bit しか必要ないのに 64bit の広大な領域確保しちゃうのかと思いました
64bit 環境に 32bit 版の java 入れる方法ってありませんか?
win32ext とか swt とか使ってるとあちこち int を long に書き換えないといけなくて…
>>404 入れるって、単にインストールすればいいだけ
「両方入れたらどちらが使われるのか」は環境変数を調べればいいだけ
環境変数を知らないのならOSの基礎からやり直せばいいだけ
407 :
デフォルトの名無しさん:2014/04/05(土) 15:41:10.63 ID:tipTUdZK
64環境に32bitのJavaをインストールする必然性は無い
C++言語じゃ無いんだから
32ビットブラウザー用のJRE派付いてるんだっけ?
JNIで32ビットネイティブ使ってる糞プログラムも実行できるの?
だめでした…
インストールはできたけど実効するとき別窓がでるようになって
コマンドラインから実行したときUACどうのこうのきかれるようになるし
し窓だして入力待ちするはずのプログラムなのに即終了しちゃうし…
javaでHTTPクライアントに使われるフレームワークのデファクトスタンダードってなんでしょうか?
比較的低レベルなConnectionインターフェース
httpclient
Javaってどうやって勉強すりゃいいんすか?
まず本屋へ行きます
本屋で服まで脱ぐは理解しました
それからどうすればいいですか?
コンピュータ関連の本の売り場に行きます。
ほうほうそれで?
Webアプリを動かすアプリケーションサーバというか
サーブレットコンテナで、TomcatとJettyを比べる場合、
本番運用に向いてるのはどっちですか?
Tomcatは重くてJettyは軽い印象がありますが、
稼働中のサーバ情報取得などはTomcatのほうがやりやすいとか
トータルで見るとどうなんでしょう?
好きなほうでいいんでないかい
スラスラわかるJavaという参考書を見て勉強してるんですが何と無くの理解しかできず知識が定着している気が全然しません…
ふざけた質問かもしれませんが
Javaが楽しく分かりやすく勉強できるサイトってありますか?
もしあれば教えて頂きたいです
あと授業とかでなくて独学で勉強された方でお勧めの勉強法があればこれも教えて頂きたいです
どうかお願いします
ゆとりか
>>423 プログラミングそのものも初学なのか、他言語のベースがあるのかによる。
そもそもプログラミングというのは実学以外の何者でもないので、「知識が定着」みたいな発想は的を外してる。
実際に使ってれば、必要なものは憶える。
開発と違って、学習においては、スパイラル学習が基本。
ウォーターフォール的な発想は世間知らずな情報科の教官の物事の捉え方。
AOJでもやっておけ
>>425 こらこら、ご本人かどうかわからないが、ステマするなよ。
そのカバ顔おじさんのサイト、Googleで何か調べるとよく上位に出てくる割に、
いちばん読み辛いんだよ。むしろ邪魔なんだよ。
適当に情報ひっぱってきて集めてあるだけみたいな内容なんだもの。
>>426 高校の授業で少しhtmlを習ったくらいなので無いも同然です
要するに確実に知識を定着させていこうとはしないで何度も反復学習をして自然とみにつけていくべきだということですね
参考になります
スパイラル学習というのは何を利用して学習されたんですか?
自分の使っている参考書では解説を読んでサンプルコードを写すくらいしかできそうにないのですがそれでも十分なんでしょうか?
>>429 いや、そうじゃなくて…… orz
>何度も反復学習をして
これって直線的であって、決してスパイラル(曲線)的じゃないでしょ?
まずは、自分の全身に、接着剤を塗りたくって、それであちこちをゴロゴロと転げ回る。
そうすれば、雪ダルマ式に色んな知識が360°全方位的に身に付いてくるって話。
自分の場合は、JavaはAndroidアプリを作るために初めて使った(他言語の経験はある)。
それで何か一つやりたいこと(機能)があったら、ネットで調べ、本で調べして、実現できるまでやる。
そういうことを色々と繰り返してたら、色んな方面のことが積ってきただけ。
言えることは、転げ回らなかったら、こういう状態には至ってなかったってことだ。
本とか学校授業だけだと、実質、一度も転げ回らないで、終わることだってある。
それは理解とか定着とかの問題ではなく、「転げ回らなかった」こと自体に問題があるだけ。
ロックミュージシャンみたいに、観客席にダイブしろってことだね。
>>430 お前うまいこと言うな
観客席にダイブしろか、気に入ったぜ
プログラミングをする目的とモチベーションが
>>430の人と同じじゃなけりゃ無理だろ
Javaはつまりロックミュージックなのですか?
分からない時はダイブ?
言語を覚えること自体は初歩の初歩にすぎず、実際に開発するようになると
その何十倍も調べたり苦労することになるから今の段階で楽しくとか言ってるレベルだとオワコン
楽しんで何が悪いんだぎゃ
今って高校でhtmlなんか教えてるのかすげーw
っつーか1年もしないうちに変遷する技術を高等教育に組み込むとか金の無駄だろ
まず本職じゃない教師が覚える気ないとついていけないし
と思ったけどhtmlなんて鼻糞みたいなもんだから別にありか
目糞java糞
全員がプログラマーになることを想定した教育じゃないわけだし
プログラミングの初歩の初歩に触れるという目的で
ブラウザさえあれば実習できるHTMLは有りだと思うけどね
>>437 HTMLは4以降、ほとんど変遷なんてないだろ。オマケ機能が肥大化してるだけ。
fontとか教えてそうで怖い。
自称プロでも酷いのいるしな。
>>442 いやHTMLに関してはプロってのはデザイナー系がほとんどでエンジニア系ではないから、そういう連中がデフォルトでしょ
そういうWeb業界の酷さって2chでのPHPerの態度とかに如実に表れてるよ
おじさんが学生の頃の授業はFORTRANとPASCALだったよ
今や誰も使ってないよ
BASICを教えていた時代から考えればHTMLも有りかもね。
そりゃサイトがシンプル(≒コンテンツがショボイ)なら
スマホでもシンプルに表示されるでしょうよ
htmlだって拡張しをhtaにすれば簡易GUIアプリが出来るんだお・・・
>>449 そうか、htmlのマークアップ自体がコンテンツだと思っている奴がいるのか。そりゃ、webも終わるわ。
>>451 出たよこうやってわかってるフリだけして偉ぶるやつw
デザインはコンテンツの重要な一部ではあるな。
それ以外もあるけど。
servletでHTTPリクエストヘッダを受け取る際に、
request.getHeader("some_param");
と、パラメータ名にアンダースコア "_" を付けたものは無効ですか?
nullになってしまいます。
(ブラウザ側からも "some_param" で送ってます)
ブラウザ側から "some-param" で送って
request.getHeader("some-param");
だと、ちゃんと受け取れるのですが。。
>>457 ありがとう。
ただ、そのサイト見る限りはHTTP Header全体的な仕様はわかるけど
ヘッダーフィールドのフィールド名に使用可能な文字種でアンスコに
関する記述は無いっぽい。
とりあずスタコバ見てたら
> Underscores in header fields are allowed (
http://greenbytes.de/tech/webdav/ > draft-ietf-httpbis-p1-messaging-26.html#header.fields), but indeed uncommon.
ってな記述があったから、仕様的にはアンスコは一応使えるけど現実的には
それを実装してあるのは稀ってことかな。。。
とりあえず、半角マイナス記号で問題ないです。
質問です。
JAVAでニコ動にログインしたいのですが、下記のコードを実行しても
”入力したメールアドレスまたはパスワードが間違っています”というページが帰ってきてログインできません。
どうすればログインできるのでしょうか?
CookieManager manager = new CookieManager();
CookieHandler.setDefault(manager);
URL url = new URL("
https://secure.nicovideo.jp/secure/login?site=niconico");
HttpURLConnection http = (HttpURLConnection)url.openConnection();
http.setDoOutput(true);
http.setRequestMethod("POST");
http.setRequestProperty("Accept-Language", "ja,en-US;q=0.8,en;q=0.6");
http.setRequestProperty("User-Agent", "Mozilla/5.0");
http.setRequestProperty("Referer", "
https://secure.nicovideo.jp/secure/login_form");
http.setRequestProperty("Content-type","application/x-www-form-urlencoded");
http.setRequestProperty("Content-Length", Integer.toString(param.length()));
String param="next_url=&mail_tel=mamoru@ghostwriter.com&password=samuragochi";
PrintWriter printWriter = new PrintWriter(http.getOutputStream());
printWriter.print(param);
printWriter.close();
http.connect();
460 :
459:2014/04/09(水) 16:55:43.90 ID:R7Roma+l
上記訂正します。
String param="next_url=&mail_tel=mamoru@ghostwriter.com&password=samuragochi";
は param.length() よりも前です。すみません。
461 :
デフォルトの名無しさん:2014/04/09(水) 19:31:49.59 ID:DauMfuc4
アンスコって女子テニスプレーヤーが履いてるアレだよな?
463 :
デフォルトの名無しさん:2014/04/09(水) 20:28:09.82 ID:gj8rQfUA
なにこれー。Javaって言うの。すごい簡単じゃん。
やはり学習教材を変えることをおすすめします・・・w
464 :
デフォルトの名無しさん:2014/04/09(水) 21:30:37.22 ID:gj8rQfUA
きみにはレスを読んだ全員と(´・ω・`)寝ないと死んでしまうのろいをかけた
ユーザ定義ヘッダの意味がわからなかったのか、ま、どうでもいいけど
>>459 javaの質問ではないので自力でなんとかしてください。
>>459 >どうすればログインできるのでしょうか?
アクセス先のサイトの仕様を調べろ。
そしてスレ違いは去れ。
servletのPOSTで、HttpServletRequest request を引数にして
request.getParameter()で複数あるパラメータから任意の1つを取得した後に、
request.getReader().readLine()でリクエストをまるごと取得しようとすると
nullが返ってくるのですが、
requestからデータを取得する場合は1回しか使えないのでしょうか?
request.getParameter()をせずに、
request.getReader().readLine()を実行した場合は問題なくリクエストを
取得できています。
>>469 ありがとうございます。
>You should only use this method when you are sure the parameter has only one value.
>If the parameter might have more than one value, use getParameterValues(java.lang.String).
このへんがヒントになりました。
試してみます。
>>470 なあ、その説明の4行先の文までは
目を通したらどうなんだ?
メソッドの説明は最後まで読んで欲しいもの。
>>471 >If the parameter data was sent in the request body, such as occurs with
>an HTTP POST request, then reading the body directly via
>getInputStream() or getReader() can interfere with the execution of this method.
なるほど。。。
英語は苦手ですけど、POSTのリクエスト本体で送られてきたパラメータ取得に
getParameter()を使ってしまうと、
getInputStream() or getReader()経由でのリクエスト本体の読み込みが
阻害されてしまうと。。。orz
ありがとうございました。
逆かな、
POSTされてきたリクエストに対してgetInputStream() or getReader()から
リクエスト本体を読む場合、getParameter()の実行が阻害される、ですかね?
あなたは、パラメータを1つだけ持っていることを確認しているときにのみ、
このメソッドを使用する必要があります
パラメータに複数の値を持つ可能性がある場合は、GetParameterValuesを使用します
パラメータデータは、そのようなHTTP POSTリクエストで起こるような、要求本体に送信された場合は、
getInputStream()またはgetReader()を経由して直接本文を読むと、
このメソッドの実行を妨害する可能性がある
google翻訳より
つまり?
つまり、最後に「vice versa」が抜けている
API仕様の記述漏れがある
477 :
デフォルトの名無しさん:2014/04/10(木) 08:04:34.70 ID:cHkBS6BK
なあ、どうして仕様を調べようともせずに
2ちゃんで質問するんだ?
2chも仕様の内の一つだから
ゆとりかー
1回しかパラメータを取得できないのは仕様です。あきらめて一旦格納したのを使いまわしましょう
JavaSE8だけど
java.util.Spliterator
java.util.Optional<T>
java.util.SplittableRandom
java.util.StringJoiner
どう使えばいいんだ || どこが便利なんだ ?
482 :
デフォルトの名無しさん:2014/04/10(木) 21:22:30.31 ID:XsRAGQ76
なぁ何回も要求したらDOS攻撃じゃね?
カメラで四枚写真を撮影して、それぞれの写真を5秒ずつ表示する動画を出力するアプリを作ろうとしています
カメラでBitmapデータやCamera.PreviewCallbackのonPreviewFrameで出るYUVデータで画像は獲得できるのですが、
そこからその静止画のデータを動画に変換する方法が分かりません
何か参考になるサイトやヒントがあれば教えていただきたい
>>483ですが誤爆です。androidの質問スレに対するものでした
自分なりにやってみたのですがうまく動作しないので質問します。
「filename.txt.txt.txt」というテキストファイルがあるとします。
これの一番最後に出てくる「.txt」だけを削除したい場合どうしたらいいのでしょうか?
.txt.txt.txt
を
.txt.txt
にリネームすればいいのでは?
サーブレット内で、セッションタイムアウトしたときに
DBのテーブルを更新する処理を、
HttpSessionListener#sessionDestroyed()に書いています。
処理自体は、現在のセッションからServletContextを取得して、
DBを更新する処理を実装してあるサービス層にアクセスしています。
この際に、ServletContextの取得を都度セッション単位で取得するのではなく
アプリケーション全体でServletContextをstaticな1つ持っておいて、
HttpSessionListener#sessionDestroyed()からは
それを読むようにするのは間違いでしょうか?
>>487 ServletContextはアプリケーション単位に一つ存在してるのだけど
>>488 なるほど、どのセッションを経由しようと、ServletContextは
その1つが取得されるのですね。
ありがとうございました。
ジェネリクスについて教えて下さい。
class Sub extends Base {}
ArrayList<Sub> sub_list = new ArrayList<Sub>();
.
.
. //sub_list.add()などを行う
.
.
ArrayList<? extends Base> list = sub_list;
list.set(idx, list.get(idx + 1));
とした場合、
The method set(int, capture#3-of ? extends Base) in the type ArrayList<capture#3-of ? extends Base> is not applicable for the arguments (int, capture#4-of ? extends Base)
表示されコンパイルエラーになります。
どうすればよろしいでしょうか??
よろしくお願いいたします。
>>486 リネームだと特定のファイルしか変更出来ないことないですか?
[filename.txt.txt].txtの[]内の文字列は何が来ても対応出来るようにしたいんですよね
.replaceAll("??.txt$", "")
2chの糞仕様のせいで文字化けしたが、ドットの前はバックスラッシュ
2chMate 0.8.6/asus/Nexus 7/4.4.2/LR
のせいかもしれないが
>>492 解決しました。ありがとうございました!
なるほど正規表現で末尾を指定すればよかったのか…
496 :
490:2014/04/14(月) 01:08:27.05 ID:tfROQgvv
すいません。自己解決しました ・ω・A
>>492 が変に表示されるなぁ
"\\.txt$"
java 8 さわってみたけど lambda 表現とか可読性さがるだけじゃん
これ実用性あんの?
インターフェースにメソッドかけるのはちょっと便利
普通の言語じゃ無茶苦茶強力で便利な機能だけど天下のブルーカラー言語Java様だからな
上流様が作業員の統制に有効だと未だに信じている検査例外と極めて相性が悪いし、
残念ながらほとんどの工事現場じゃ禁止されるだろうね
C#はもちろんC++ですらラムダ式搭載されているし、
Java8以降の案件なら普通に使われるんじゃないかな
502 :
忍法帖【Lv=6,xxxP】(1+0:5) :2014/04/15(火) 01:43:40.87 ID:p0nGWz9V
ラムダ
ラムネ
ラクダ
新しい要素付け加えられると現場で混乱起こすからやめて
不便だろうがなんだろうが使い慣れれば逆にそれが便利なものになっていくもんだしいいじゃん
もうコードレビュに神経使うのやなんだよ
馬鹿には無理
放送禁止用語とか公序良俗に反するような文字列を
検知するようなライブラリってありますか?
ラムダ?新機能は新言語名でやってほしい。ジェネリクスもいらん。
こマ?
Microsoft Updateしたらageるスレ 92
http://toro.2ch.net/test/read.cgi/win/1397020536/135 135 名前:名無し~3.EXE[sage] 投稿日:2014/04/15(火) 00:43:46.63 ID:zWhHO5pK
Oracle、米国時間4月15日提供の定例アップデートの事前情報を公表
今回のアップデートでは、Oracle Database、Fusion Middleware、Access Manager、Java、Solaris、VirtualBox、MySQLなど、
各種製品に関する103件の脆弱性を修正する。
脆弱性のうち37件はJava SEに関するもので、共通脆弱性評価システム(CVSS v2)の
基本値が最も高い「10.0」と評価される脆弱性も含まれる。
ジェネリックスいらないていつの化石だよ
>>507 C++のジェネリクスならまだしも,ねえ
これじゃ void * と変わりないじゃん?
ドカタにはこれで十分
510 :
デフォルトの名無しさん:2014/04/16(水) 03:28:55.95 ID:PoaauFkf
>JavaScript, Ajaxの質問は、ここでは受け付けていません。
javaで、あるサイトのトピックス情報をとってきて自分のHPに表示する技術は
jsoupでできますか?
スクレイビングでいいAPIなどありますでしょうか?
サーブレットで画像のアップロードとリサイズをするサーバを作っています。
リサイズ処理自体は、
public class ResizeUtil(){
public static String doResize(){
~リサイズとフォルダへの出力処理~
return outputPath;
}
}
こんなクラスでstaticメソッドにしているのですが
こういう用途でstaticメソッドの仕様は問題ないでしょうか?
それとも、siaticメソッドにはせずセッションごとに
ResizeUtilクラスのインスタンスを作って
その中でdoResizeメソッドを実装すべきでしょうか?
そういう便利ユーティリティのインスタンスぽこぽこ作るようなことはあまりしない
staticにするかシングルトンで使い回すかは好み
javaドカタたるものResizeUtilというインターフェイス作ってそれの実装AbstractResizeUtilというクラス作って
さらにそのサブクラスを作るべき
517 :
デフォルトの名無しさん:2014/04/19(土) 22:13:06.64 ID:YuCAOXC0
初歩的かもしれないのですが
下記のようなメソッドの書き方がよく理解できないので誰かご教授を…
public static <T> List<T> method( List<T> list){ ....何かの処理 }
になっている時の修飾子の後の<T>って一体何なんでしょうか?
戻り値の型?はList<T>だし…一体どんな意味があるんでしょうか?
そのリストから要素を取り出すときに勝手に<T>の型にキャストしてくれるようになる。
ジェネリクスと呼ばれる機能なんだけどJavaのそれは張りぼてに過ぎない歪な仕組みでユーザーから見れば極めて複雑な仕様(恐らく今のJavaで一番難解な部分)。
初心者なら最初は無理に理解しなくていい。
>>515 ありがとうございます。staticでやってみます。
>>514 tomcat においてstaticを使うのはアホです。
なぜならそのメソッドをちょっと改造しただけでも
無関係な全アプリケーションの全セッションまでもがtomcat再起動するまで
そのstaticメソッドの影響を受けるからです。。
521 :
デフォルトの名無しさん:2014/04/19(土) 23:15:45.62 ID:YuCAOXC0
>>518 ありがとうございます。
ソースを読んでて見たことない記述が出てきたので質問しました。
List<String>から要素を取り出せば自動的にStringで返ってくるもんだと思ってましたが
実際にはこういうメソッドが裏で実装されているってことなんですね
こんな経験をしたことはありませんか?
static int a=0;//10から0に改造
public static getA(){ return a;}
結果 10
改造前に設定した値がデプロイ後も残ってることがある。
tomcatではこんな恐ろしいことがたまーにあるのです。
だからstatic を安易に使ってはいけない。
523 :
デフォルトの名無しさん:2014/04/19(土) 23:23:16.08 ID:Firi/9oq
定義部
static int a=0;//10から0に改造
public static int getA(){ return a;}
使用部
System.out.println(HogeHoge.getA());
どうせもんくいわれるので訂正しときましょう。
hot deployなんてローカル・サーバでのテスト以外で使うことあんの?
ホットデプロイのやり方にまずい点があったか何か原因があるんだろ。
static との因果関係の説明になってないし、static の使用を否定する理由にはならない。
グローバル変数はダメってばっちゃに教わったからスタチックはいかんでしょ
プログラムの世界の上っ面だけかじってるおまえらが知るはずもない。
それと部下は知ってても無能上司にノウハウを教えることはない。
こんな場所でノウハウをぶちまける気が狂った俺に感謝するんだな。
>tomcatではこんな恐ろしいことがたまーにあるのです。
>だからstatic を安易に使ってはいけない
この論法だと、選択肢としては
Tomcatを使用しないという方が筋がいいと思うのだが
530 :
デフォルトの名無しさん:2014/04/20(日) 14:02:04.66 ID:I6Nwishv
tomcat8の組み込み起動でROOTを使う方法がわからん。教えて
ググルとチュートリアルにはチラホラあるのだが動かんのよ
http://programcreek.com/java-api-examples/index.php?api=org.apache.catalina.startup.Tomcat Tomcat tomcat = new Tomcat();
tomcat.setBaseDir("./tomcat");
tomcat.setHostname("localhost");
tomcat.setPort(9090);
tomcat.getHost().setAppBase("/webapps");
Context ctx = tomcat.addContext("/", "/ROOT");
String name = "dispatcher";
Wrapper wrapper = ctx.createWrapper();
wrapper.setName(name);
wrapper.setLoadOnStartup(1);
wrapper.setServlet(new MyServlet());
ctx.addChild(wrapper);
ctx.addServletMapping("/*", name);
スレチ
ちなみにルートでなければ動作が確認できた
String docbase = "/hoge";
Context ctx = tomcat.addContext("/", docbase);
ctx.addServletMapping(docbase+"/*", name);
localhost:8080/$docbase/*****
TomcatのAPI叩くとスレチなん?
特定の製品の使い方に強く依存した内容はスレ違いだろうな。
ちなみに使用製品の構成情報をアプリケーション
プログラムから制御する必要性が全く不明
とりあえず自己解決した
>>535 横だが、tomcat、servletのすれも見当たらないのが、この場合どこがいいと思う?
>>526 なんでpublicとstaticがごっちゃにされてんのさ?
>>538 うーん、需要がでてきたら自分でたてるか
サーバサイドならWebProg板にある、Servletスレもある
あっちへ誘導すると違うと言われるぞ、たぶん
見たけど過疎ってるな
WebProg板はPHPの人しかいないよー
今更だが組み込みはJettyの方が向いてたな
546 :
デフォルトの名無しさん:2014/04/21(月) 02:03:19.43 ID:ckLxtVSe
JSPとサーブレット動かすのはtomcatが一番いい?
Jettyが起動も早くて好きだけど
Tomcatは8になってサーブレットコンテナ自体の
パフォーマンスどうなの?
機能性能信頼性サポートの面ではTomcatに優位性など無いのだが、
何を「良い」の基準として考えているかぐらいは示せ
一番普及してるのが「良い」と思います。
案件による
総額200万円の案件でもWebLogic使えってのか?
Tomcat:手軽
Jetty:改造
WebLigic:商用
Jettyより組み込み版Tomcatの方がjarの数からしてコンパクト
554 :
540:2014/04/21(月) 18:59:08.65 ID:hxh5aI2P
200万円ならPHPでいいや
556 :
デフォルトの名無しさん:2014/04/21(月) 23:22:31.08 ID:ckLxtVSe
Tomcat:オールJSP実装が最強
JAVA詳しい人に質問です。
private static final String DOG = "DOG";
みたいな固定値が定義されています。他にも、CAT="CAT";, PIG="PIG"; のように、中の文字列と変数名の同じ定義があります。(各変数は複数回使われるものとします)
javaは、コンパイラの最適化で、同じ文字列は同じインスタンスになるので、中味と同じような名前の変数群を定義するくらいなら、最初から文字列をそのまま書いてもよくね?と思うのですが、いかがでしょうか。
続き
正規化の観点から、定義を1か所にまとめておくのが好ましいとは思うのですが、上記のように変数名と中の文字列が同じでも、変数化した方がいい理由があれば教えて下さい。
(「仕様変更で全箇所書き換えしなくてはならない」以外で。このケースでは、変数名自体も変える必要があるため、いずれにせよ全箇所書き換えが必要。)
コンパイラの最適化に期待したコード書くな、というのはあるかとは思いますが、詳しい人助言お願いします。
557です。
質問したのは、そのようなコードに遭遇して、ふと疑問に思ったためです。
スペルミスを防ぐため。
>最初から文字列をそのまま書いてもよくね
アホ
>定義を1か所にまとめておくのが好ましいとは思うのですが
アホ
理由はお前が成長したらわかる
>>557 あとでDOG = "犬"に変更したくなることもあるだろう。
そのたびにソースの該当箇所を全てサーチ置換するのか?
サーチして置換できるならそれでいいけど(よくないけど)
文字列に間違いがあったらサーチすらできないのがもっと問題。
文字列にスペルミスがあってもコムパイルが通っても良いというのか
(コンパイル)エラーは出難いほうがいいに決まってるじゃないですか!
ってマジメに言われた
Cの
void hoge(int* i){
*i = 100;
}
みたいに引数経由でプリミティブ型の値を変更するのってどうすればいいんですかね?
void hoge(Integer i){
i = 100;
}
だと無理ですよね
>>566 引数用クラスを作っておく
class Hikisu {
Integer i;
}
Hikisu hikisu = new Hikisu();
void hoge(Hikisu hikisu) {
hikisu.i = 100;
}
いちいちクラス作るのが面倒なら配列渡すとかだな。
馬鹿には無理
>>566 質問内容を見る限り勉強中の学生さんだと思うんだけど、
ちゃんと本読んでる?この辺りの内容はみっちりと解説されてるはずだよ
戻り値をintにすればいいじゃん
戻り値が複数必要なら設計がおかしいと思うべき
馬鹿には無理
こういう参照渡しみたいな発想はJavaでは基本的に避ける。
オブジェクト指向の根幹に関わることだから。
参照型とインターフェースがオブジェクト指向の根幹と妄想して
嘘をはき連ねる
それがJAVAドカタの特徴
馬鹿には無理
>>574 何なのこのクルクルパーマンは?
>>573>参照渡しみたいな発想は……基本的に避ける。
が、
>>574>参照型……がオブジェクト指向の根幹
とどうやったら正反対の読解になるのか(クルクルパーの思考は理解不能だ)。
つまり、妄想してるのは自分自身じゃねえか。
自分がやましいことを、そのまま人に転嫁しようする性癖は、典型的な精神病だぞ。
Javaにもコンパイル時定数ってのがあったんだな
知らなかった
他人に変えさせるな、自分で変えるためのメソッドを持て。
ということじゃね?w
>>573 >オブジェクト指向の根幹に関わることだから。
本当か?
同じくOOな言語であるC++や何よりも対抗馬 C# では普通に参照渡しが可能だ
どうして参照渡しはオブジェクト指向への障害となるのか説明を頼む
>>578 それ実質的には参照渡しに近いものだと思うけどな
カプセル化してるかどうかの違いはあるけどそれってオブジェクト指向自体とはまたちょっと違う話
本来のオブジェクト指向ってどんどんオブジェクトの状態を変化させていくもんで、
そういう参照渡し的なことは多用するぞ
最近だとイミュータブルなオブジェクトを多用して関数型っぽくするのが流行りだけど
関数型スタイルだと参照渡し的なものは基本的に嫌われるね
>>579 あのさ、メソッドとデータが分離しているのを、「オブジェクト指向」と言うのか?
>>582 それはメソッドに与える引数にしても同じことだが?
>>579 Javaには参照渡しがないので
くるくるパーなJAVA()使いは
オブジェクト指向は参照渡ししない
と妄想しただけです。いつものこと
>>582 あのさ、intに対してtoStringが呼べない糞言語を
「オブジェクト指向」と言うのか?
>>587 戻り値で代用することもできるわけだしな
一つの引数で入出力を兼ねるのはオブジェクト指向とは無関係にウンコなので論外としても、
出力に限定した引数(C#のout)なら戻り値と等価
>戻り値で代用することもできる
こういった、意味を無視して処理的に可能かどうかという発想は
オブジェクト指向的には論外だな
>>587 >意味を無視して処理的に可能かどうかという発想は
>>585 >あのさ、intに対してtoStringが呼べない糞言語を
>「オブジェクト指向」と言うのか?
噛み合ってないぞ。intに対してtoStringが呼べないことは、仕様の話であって、
オブジェクト指向の問題とは別。そういう論を平気で言う君が
>>587とはお笑い。
議論なんて時間の無駄
プログラミングなんて自分がやりたいようにやればいいのよ
>仕様の話であって、
>オブジェクト指向の問題とは別
仕様がオブジェクト指向的に変なのに
「仕様の話だから別」とか
どうしてJAVA()使いはこうも頭がイカれてるのか不思議
intじゃだめならIntegerを使えばいいじゃない by マリー
だって Java ってまともな二分木も記述できないしぃ by QZ
まともな二分木を記述できる言語って何があるん?
595 :
デフォルトの名無しさん:2014/04/23(水) 00:16:35.16 ID:HqikcyGb
javaで動画ファイル(avi、mpg)を再生したいのですが
JMFをインストールしないと実現できないのでしょうか?
借りているパソコンなので勝手にインストールできなくて・・
ちなみにJDK1.4を使っています
>>557-559 一々、文字列で書くと、全角・半角スペース、
ハイフンの種類の違いなど、見た目では区別できないので、
同じかどうかを確かめるのが、すごく大変。
すごい時間のムダ
JNIでC++&ATL&ActiveXのWMPで再生だ
Javaのカケラもなくなるけどな!
>>596 vlcのlibvlcを使うってのは無理なん?
ローカル変数よそから絶対いじれないのは、
最適化とか安全性の証明とか、地味なとこで結構大事な話。
>>600 では演習問題として,①二分木にノードを追加する,②二分木からノードを削除する,それぞれの機能を持つコードを Java で書いてみてください
参照渡し(Java の方言じゃない方ね)の必要性を痛感するはずです
>>601 C#みたいに必ず呼び出し元でref/outを明示的に書かせればいい
ジャバはオワコンなんだからもうイイじゃないですかぁ
>>603 ま,大雑把過ぎたか,例の上から玉ころがし方式ならできなくはないね
最近の教科書はこういうのが流行りなのか?
>private Node<T> root = new Node<T>();
>if (left == null) {
>left = new Node<T>();
>}
>left.add(item);
少し無駄を感じるんだが‥‥ private Node<T> root = null で組めないか?
>if (this.item.compareTo(item) == 0) {
>this.item = null;
>return true;
この削除ルーチンはさすがに手抜きだろう‥‥Integer じゃなくて int だったらどうする?
>>606 と
>>602 >>603 は別人だから、何とも言えないけど、
参照を使うと(例えばC++)二分木探索がどう書きやすくなるのかわからない。
参考になる情報だけでも教えていただけると幸いです。
あと、C++言語は挫折したので、参照を使って二分木探索を書いた経験が俺にはありません(汗)
それから、ざっと見た感じ、
>>603 のコードは、Javaらしいしっかりしたコードだと思うよ。
俺にはここまでのコードは書けないっす。
>>602は二分木と言ってるだけだから構造が木構造で枝が2本以下になってりゃ二分木だから
わざわざ比較関数でソートしたりは要らないんだよ、参照がうんぬん言ってるけど
別に参照じゃなく値のコピーを保持して作っても二分木は二分木だからね
>>609 ありがとうございます。C++版を読んでみます。とても助かります。
>>610 そのスレを読めばわかるが、うんこ呼ばわりされている代物だ、馬鹿が伝染らないように注意しろ
私が書いた、「二分木探索」はまちがいです。正しくは「二分探索木」です。
>>611 アドバイスありがとうございます。
去年もおととしも唐突に現れた二分木おじいちゃん。
今年もあまり釣れなかったね…
そもそもJavaで二分木の実装する機会なんてあるの?
あぁ。つりだったのかorz
ツリーマップのことだろ?
C++とかjavaで書いたことならあるけどC#だと何か違うのか?
ちょっと文字数が短くなるとかくだらない範囲だろどうせ
>>617 言語仕様において「参照」とか「ポインタ」とかいう概念を陽に表に出す必要があるかどうか?という哲学的問題です,たぶん.
二分木は再帰的構造をもつからそれを扱うアルゴリズムも再帰的構造であるべき,という持論ではありますが,最近この手の問題を問うても
>>603 のように非再帰的にさら~と解かれてしまうのでありました.
ああ,
>>603 は再帰を使っていますが,なんというか‥‥なんだろう?
設計は言語仕様を前提として考えるべきであって
言語仕様を無視したプリミティブ型を参照で引数として渡したいという発想がそもそも間違い
ポインタ=アドレス渡し
参照=アドレス渡し
>>621 細部はみていないが,たぶんあってるよ,いい質問だね,とてもうれしい,しかしそれは K&R レベルだね
>static Node *push(Node *root, int data)
とすると
>root->left = push(root->left, data);
>root->right = push(root->right, data);
とせざるを得ないだろう?これは,ツリーの末端以外では,コールする前と変わらない値をリターン時に延々と代入してまわっているわけで,無駄じゃない?
Java だったらこう書くしかないのだけれども
そろそろスレ違い
>>624 >>609 について
C#は全くわからないので、見てなかったんですが、C#版を見ればよかった。
C#の書式だと、リファレンスがあった方がきれいに書けるのはわかりますが、
「2分木がまともに書けない」とまで言えるのかなぁと思います。
C#の方がJavaより文法がきれいだとは思います。本当にそう思います。
>>620 では言語仕様の設計については?あの pascal ですらある本物の参照が Java にないのは、直感としてなにかおかしいのでは?
言語仕様が糞だと言っている人に対して、
アプリケーションプログラムのデザインは
言語仕様の前提を無視するわけに行かない
などといいだすコミュ障が
>>620
質問ですが、2分探索木の削除は再帰で書けるものなのでしょうか。
>>631 削除する場所を探すまでは再帰でもいいだろう
Javaも大抵は参照渡しだけど、パフォーマンスのために参照書くところに値を直書きするって手段があったというだけでしょう。
ラッパークラス作るとかオートボクシングとかがCのポインタより、書き方は冗長なのに制約が多いから、文句言ってるだけでしょう。
>>632 そうだとすると、
>>609のコードで、
root->left = push(root->left, data);
root->leftへの代入って、pushとpopでは必要ないのではないのでしょうか。
間違ってたらすみません。
皆様。おやすみなさい。
>>598 >>599 情報ありがとうございました。
自分なりに調べてみたのですが、何かインストールしないと厳しそうですね・・
vlcはインストールいらんだろ
これ実行するとどうなると思う?
public class Sitsumon168_621 {
class Hoge {
int one = 1;
int two = 2;
}
Sitsumon168_621(){
Hoge h = new Hoge();
hogeinc(h);
System.out.println("one: " + h.one + " two: " + h.two);
}
private void hogeinc(Hoge h){
++h.one;
++h.two;
h = new Hoge();
}
public static void main(String[] args) {
new Sitsumon168_621();
}
}
>>634 >root->left = push(root->left, data);
>root->leftへの代入って、pushとpopでは必要ないのではないのでしょうか。
新しいノードが malloc() されたときには,この記述は効いてくる
そうでないとき,すなわち既存のノードを繰っているときには不要だ,でもこの記述方法ではこれら両者の切り分けはできない
だ か ら 参 照 ま た は 二 重 ポ イ ン タ が 必 要 に な る
二分木の話はさておき、オブジェクトを二つだけぶらさげられる
ジェネリクス付きコンテナが標準ライブラリにも欲しいなっと
まあMap.Entryでもいいんだけどさ
Commons Lang に Pair があるな。
>>641 回答ありがとうございます。私が間違ってました。
http://ideone.com/Y7HEx (C++)
http://ideone.com/I8Mgb (C#)
pushについては、このコードのように再帰を使うと
root->left = push(root->left, data);
は必要です。
popについては、私がpopの機能を、
「単にデータを読み出すだけ」と勘違いしてました。
実際は読み出したデータを削除してるので
root->left = pop(root->left, data);
は必要です。
>>607 の私の書き込みについて
delete部分について、
>>603 のコードは、しっかりしたコードと言えないかもしれません。
>private void hogeinc(Hoge h){
>++h.one;
>++h.two;
>h = new Hoge();
>}
ここ見る限り、全然ポインタとか分かってないと思った
だからJavaはポインタとは違う挙動をする、それを確認するプログラムだろう
Javaはポインタじゃないことがわからないとバグが出るから、そのままでは可哀相に思った理由(わけ)
Javaがポインタなら1と2が出力されるだろう?
とりあえずオブジェクト渡ししとけばいいんじゃろ?
仮引数はローカル変数なのだと何度言ったら。
ポインタは関係ないやろ!
>>647 ねらねーよ、おまえはc事態わかってない
確かに、ならない。Cをよくわかっていなかった。なるのはC++のポインタの参照渡しだな
javaなんてやってるとこうなるってことですね
参照私でなくてもポインタのポインタでもいいけど
どちらにせよ彼がポインタを理解していないことはたしかなことだ
ここJavaスレだしぃ
Javaスレにいるなら
>>637の結果がどうなるか、
どうしてそうなるか知っておいて欲しいね
そんなプログラムかかねーよ(笑)
ポインタを言語理解の指標に使う奴多いけど
CとJavaで設計した奴の思想が違うのにあーだこーだ言っても無意味
こーやるとこーなるっていうことだけ覚えときゃいいんだよ
使わない言語のことなんか糞どうでもいいし他人の思想の手のひらで踊ってるだけだということを理解しろ
二分木構造の操作なんてVisitorパターンで用足りる話だろ?
659 :
デフォルトの名無しさん:2014/04/28(月) 18:14:17.14 ID:t6GQTPkS
はじめまして。プログラム技術板には初めて書き込みますので、
初歩的過ぎて、イラっとしたらごめんなさい。
Javaの列挙型であるenumについて質問があります。
enumの中に4つの列挙定数を書いたとします。
そして、enumのコンストラクタで初期化するとします。
そのコンストラクタの処理は用意しておいたフィールドに列挙定数を代入します。
実行してみると、コンストラクタが4回呼ばれました。
なぜ、4回呼ばれるのでしょうか?
列挙定数の数だけ個別にインスタンスが出来るということでしょうか?
実際のソースが必要でしたら書きますので、
どなたか教えてください。本当におねがいします。
>>659 > 列挙定数の数だけ個別にインスタンスが出来るということでしょうか?
yes
宣言したenum定数のそれぞれがインスタンスなのでコンストラクタがその分だけ呼ばれる
665 :
デフォルトの名無しさん:2014/04/28(月) 20:15:08.63 ID:t6GQTPkS
>>659のコードを先に追加します。
class Enum {
enum Alpha {
A("A"),
B("B"),
C("C"),
D("D");
public final String alphaName;
private Alpha(String alpha) {
this.alphaName = alpha;
}
static String alphaMethod(Alpha alpha) {
return alpha.alphaName;
}
}
public static void main(String[] args) {
System.out.println(Alpha.alphaMethod(Alpha.A));
}
}
666 :
デフォルトの名無しさん:2014/04/28(月) 20:18:57.62 ID:t6GQTPkS
お礼が後回しになって申し訳ないです。
お二人様ありがとうございました。
>>663 ありがとうございます。
サイトの方も参考にさせていただきます。
>>664 ありがとうございます。
java初心者です。
nextInt()は引数を持つのに、nextdouble()は引数を持たない理由を教えて下さい。
Randomの話だね?
>>668 そうですそうです。
明解javaの演習でかなり躓いてしまいました。
発生する数値の範囲を指定できると便利だからじゃないのかな。
引数のないnextInt()もある。
なぜint以外は範囲を指定できるメソッドを用意しなかったのかは、使用頻度の問題かな。
ドウブルwは数字が小さいほど細かい数字が表せ、
数字が大きいほど表せる数字が大雑把になる
性質があるせいじゃね?w
ドウブルってdoubleのことか
一瞬わからなかったぜ
javaなんてやってるとこうなるってことですね
馬鹿には無理
どうbぇ
綴りはそれで合ってる。なんでwなんだ
犬種名
678 :
デフォルトの名無しさん:2014/04/29(火) 19:06:29.79 ID:e+1gDhQ6
銅振る
double kiJouI;
javaで二分探索木を書いてみたけど、insertについては、参照があった方が楽になりそうだと思った。
>>676 他人の揚げ足とったつもりが自分が馬鹿だっただけだと思われ
Servlet で別々の HTTP request で DB 使わずにでデータを共有する方法ってありませんか?
>>683 ありがとございます。これで簡単なネトゲが作れるぞ!
JavaFXで画面遷移をする場合は
一般的にはどのように実装するものでしょうか?
やはりstart(Stage stage)メソッドのstageをどこかに
格納しておいて使いまわす形になるのでしょうか
スレチ
687 :
685:2014/05/01(木) 08:04:14.49 ID:rKKwwEXV
すみません、Java全般のスレだと思いレスをしてしまいました。
JavaFXのスレにレスさせて頂きます
マルチポストは許さないぞ
689 :
デフォルトの名無しさん:2014/05/01(木) 09:29:25.50 ID:huG5tQUM
これからの時代について、質問です。
Swingを勉強するくらいなら、Androidの勉強をしたほうがマシですか?
食っていけるかという目線が第一ですが、楽しさも含めて。
スレチ
691 :
デフォルトの名無しさん:2014/05/01(木) 09:54:23.41 ID:huG5tQUM
>>691 AndroidはJavaと何の関係もありませんが
エミュ頼りのAndroid開発は思ったほど楽しくないぞ。
まぁかわいそうだからマジレスしてやると
swingなんか勉強のうちに入らん。適当にググって適当に作れよってレベルの代物
swingで食っていけるとかそういう次元じゃない。swingの案件なんぞない
androidは無理やりやらされるのでなければ今やるだけ時間と労力の無駄
需要はなくならんだろうからもっと環境が洗練されたあとに覚えりゃいい
javafxは?
洗練されてからやっても金にならないよ
ゆとりなんだからどうでもいい
698 :
デフォルトの名無しさん:2014/05/01(木) 18:55:10.13 ID:rPg1Uffy
JSONObjectを使って以下のJSONコードの内容を取得したいのですが、
送られてくるデータの配列が無名なのでどうすれば取得できるか困っています。
どうしたらいいですか?
無名だから数値の添字だろうと
jsonObject.getJSONArray("0");
とか試してみたんですけどExceptionが出てうまくいかないです。
[
{
"0": "0",
"1": "0",
"2": "1",
"3": "1",
"4": null,
"5": null
},
{
"0": "1",
"1": "1",
"2": "2",
"3": "1",
"4": null,
"5": null
}
]
pure Java で SQLite みたいな組み込みDBはありますか?
hsqldb
html5だとどうなの?
Play framework使おうと思ってますが、他のframework選んだ方が良いのでしょうか?
jdkに derby ってデータベース入ってんぞ
後は h2 database は情報少なめだけどシンプル軽量快速で組込みに適しててそこそこ使いやすい
ちなみに hsqldb 作った作者が作ってるのが h2 database な
>>698 Exceptionが出てるなら問題ないだろう。
それは原因を伝えるものなのだから。
>>698 System.out.println(((JsonObject)Json.createReaderFactory(null).createReader(new StringReader
("[ { \"0\": \"0\", \"1\": \"0\", \"2\": \"1\", \"3\": \"1\", \"4\": null, \"5\": null },
{ \"0\": \"1\", \"1\": \"1\", \"2\": \"2\", \"3\": \"1\", \"4\": null, \"5\": null } ]")
).readArray().get(0)).get("0"));
"0"
自己解決しました
どういたしまして
最近JAVAの勉強始めたけど、教科書見てその教科書の例文を丸写ししてるんだけどまったく内容が頭に残らない
これって勉強したことになってるんですか?
教科書はスッキリわかるJAVA入門ってやつを使ってます
あとどこまで勉強したら実務可能なレベルなんでしょうか?
710 :
デフォルトの名無しさん:2014/05/03(土) 12:07:51.13 ID:PFJCNp5s
>>709 それプログラミング関係ない
数学の勉強するときに教科書の例題の解法を丸写しして意味ありますか、ってのと同じ質問
そんなの大多数の人間は高校時代にどうすればいいか学んでる
>>709 netbeansかeclipseを使え
勉強は大事だ
きちんと勉強した奴だけが外人に話しかけられても
落ち着いて "this is a pen" と答えられる
>>710 実機ってなんですか?あと走らせるとは?
>>711 高校時代がどうか知りませんがじゃあどうすれば勉強になるんですか?
あなたが知ってるなら教えてください
>>712 eclipseってのを使ってます
そこに例文をひたすら打ち込んで実行してる感じっす
でも、終わったあと頭には何も残りませんし結局例文の意味も分かりません
具体的に何かオリジナルで制作物でも挑戦すればいいんでしょうか?
>>709 漏れは何回か、その本を推薦したけど、
その本の大半は、Javaではなくて、
オブジェクト指向の説明なんだよ
オブジェクト指向を学ぶには、一番わかりやすい本だと思う
親型 p = new 子型()
多態性とは、どうして子型を親型に代入するのか?
インターフェースとは?
is-a, has-a とは?
だから、抽象的で難しいのは当然。
まるで、手続き型のCから、
オブジェクト指向のC++が生まれた歴史を、なぞっているよう
たいていの中年のCプログラマーは、頭が固く、
オブジェクト指向のC++へ移行できないんだよ
インターフェースがオブジェクト指向の根幹と妄想して
嘘をはき連ねる
それがJAVAドカタの特徴
>>717 まだ29Pまでしか進んでないのでオブジェクト指向とかいう分野まで進んでないのですがこの本は難しかったのですか・・・
アマゾンで評価が高かったので買ってみたのですが
親型 p = new 子型()
インターフェースとは?
is-a, has-a とは?
何っいてるかペーチュンチュンです
本当のチンパンジー、ゴミクズ、指示待ちニートでもJAVAが学べる手順を教えてください
○○の参考書をひたすらとけとか
言われたことだけは猿みたいに繰り返し頑張ります
>>720 分かりましたそれ見て頑張ります
ちなみにプログラミングってひたすら例文打つだけ以外に勉強方法ってありますか?
722 :
717:2014/05/03(土) 14:52:23.88 ID:uX7gZPqO
この本は一番簡単な本だよ
オライリーなんて買ってみろ、死ぬよ
難しいのはJava言語ではなくて、オブジェクト指向(OOP)の方。
どの言語でもOOPが出てくるから、
この本で勉強するのが、一番簡単。
JavaのOOPを理解すれば、他の言語にも転用できる
OOPについては、また本を読んでから、質問して下さい
Eclipseなら、入力補完できるから、
ソースコードを書くのも楽でしょ?
でも面倒なら書かないで、本を読むだけにしたら?
でもそれじゃ、しょーもなくて続けられないかも
>>722 まだ死にたくないのでオライリーって本は買わないでおきます
この本で勉強するのがオススメというなら頑張ってみます
分かりました、オブジェクト指向の分野までたどり着いたら質問しますね
Eclipseを使うと入力補完されるので楽なんですが、補完されてる部分の説明がEclipseにも本にも全然乗ってないので
分からないまま先へすすんでいいのか不安でした
面倒くさくても頑張りたいと思うのでコード入力しながら本を読んでみます
ありがとうございました
>>721 簡単なのでいいから、役に立つプログラム(家計簿とか)を一つ作ってメンテナンスし続ける
>JavaのOOPを理解すれば、他の言語にも転用できる
Javaは純粋なオブジェクト指向言語ではないのに
学習にすすめるのはいかがなものかと
割れ鍋に綴じ蓋
728 :
717:2014/05/03(土) 15:32:27.12 ID:uX7gZPqO
>>726 漏れは10言語ほど、本も買って、
色々な入門書も読んでいるけど、
OOPで簡単な本は無いね
C++を簡単に説明できる本があればなー、
なんて、C++のセガ本の著者が言っていたが、
どだい無理な話だよ。Javaよりも数段難しい
Java, C#がまだ簡単な方
Javaのプラットフォーム非依存な所はとても魅力的なのだけれど
言語仕様としてはJavaがC#に勝っているところがあるだろうか?
おまえは言語仕様書読んだことあるの?
732 :
717:2014/05/03(土) 16:16:06.14 ID:uX7gZPqO
>>729 やっぱりJavaがフロンティアだから。
Javaにはとんでもなく頭がいい連中がそろっている
一方、C#はJavaのマネだから
Java7では、数字にアンダーバーも入れられるようになった
1_000_000
感心したよ
>>732 >C#はJavaのマネだから
どう考えてもJava 1.5以降はJavaがC#の猿真似を繰り返してるのにねぇ。
しかもJava VMの互換性に足を引っ張られて劣化仕様ばかり。
まあフロンティアだったことは確か。
734 :
デフォルトの名無しさん:2014/05/03(土) 17:01:08.09 ID:rZa0l8BJ
問題点を具体的に言えない人は、
まだ、しっかりと問題に向き合っていないと思う。
自分もまだまだ初心者だけど、これだけは言えると思うし、
いろんなことに共通してると思う。
>>709 本の丸写しをすれば、本が間違ってない限り、
しっかりと動作してくれます。
コードの内容を人に全部説明できるくらいになるまで、
考えてみてください。
その都度、疑問点が出てくるはずなので、
それを検索で調べて、それでもわからなければ、
ここで質問するなどして、覚えられるはずです。
その上で応用を考えるといいです。
馬鹿には無理
736 :
デフォルトの名無しさん:2014/05/03(土) 17:38:50.00 ID:E+Snt/9u
Javaの開発環境ってeclipseとNetBeansとIntelliJ IDEAどれがいいですか?
使ってみて気に入ったものがいいですよ
738 :
デフォルトの名無しさん:2014/05/03(土) 17:47:18.05 ID:E+Snt/9u
visual stadioとeclipseのテキストエディタのスクロールの挙動が違うんですけど
設定変更みたいなのできますか?
そしたらeclipse使おうと思います
http://www.sbcr.jp/products/4797368833.html androidプログラミングのことに関して質問なのですが、この本を買ってとりあえずサンプルを動かしてみたらOutOfMemoryで動かない事態が発生しちゃいました。
サイトによると、OutOfMemoryを直したサンプルを上げたと書いてありましたが、
それをデバッグしても変わりませんでした。
サンプルは上のページからダウンロードできるので、
もし時間があれば見ていただいて、何がいけないのか教えてください。
「Animation」というサンプルで発生してしまいました。
>>721 なぜJavaを勉強しようと思ったのか?
必要がなければ身につかない。
プログラミングとは問題解決のためのツール。
普段やってることの自動化が簡単な部類。他にはマクロやプログラムエーブルなソフトの設定は部分的な実装になるのでやりやすい。
ただし、問題の発見、分析、設計、実装、運用と要素が多いので、学校の勉強のように目的のない問題だけを解く書籍が多い。
>>740 前のプログラムを間違えて実行しているのでは、cleanなどで一度消してみたか。
>>744 仕事にするなら設計から学んだほうがいい。
>>744 プログラマーに適正あると思う?
それに将来性のある業界ではないと思うが。
俺もスッキリJava持ってるがお前は最初に買う本を間違えたな
言語知識を最大10だとしたら、その本は2か3ぐらいの知識しかない雑魚に最適な本だ
言語知識0のゴミカスはやさしいJavaから読んで変数や関数が何かとかから覚えるんだよ
まぁネット全盛期のこの時代にそのザマじゃ向いてないからやめた方が無難
馬鹿には無理
>>743 そんなことはないと思います。
クリーンもやってみたのですが、特に変わりは無かったです。
outofmemory出すって相当な糞コードだぞ
どういう使われ方してるか知らんが、修正してくださいっていうメソッドの中で
3次元配列の要素1つに対してビットマップ読み込む処理してるけど
単純にもの凄い数のビットマップ読み込んでメモリ枯渇させてるだけのただの糞コードな気がしてならない
>>750 それかおかしい。
クリーンしたら無くなってるのだから、動かないようになってなくてはいけない。
>>752 方法があってるかちょっと不安になってきました;
javaの基礎とアプレットくらいしかやったことないクリーンに関してあまり詳しくなくて…。
Eclipseのプロジェクト→クリーンするだけでいいのですよね?
>>751 そうなのですか?
ではこれを元に別のやり方を考えたほうがいいのでしょうか。
>>745 設計が何のことか分かりませんが調べてみます
>>746 適正あるかどうかは分からないけど他に挑戦できる仕事がないんす
飲食やってて過労で発病して顔面大やけどのような炎症の病気にかかって接客業、営業ができなくなったもんで
残された介護、土木、ITの中から選んだだけっす
ちなみにITの専門学校でてるんで学歴の面では他の業種より1ミリ有利くらいです(在学中は他人の課題を写輪眼でコピペしてしてました)
>>754 そういう事情ならがんばってくれ。入門ができたのなら、
ソースコードを読む
言語仕様
アルゴリズム
オブジェクト指向
デザインパターン
を勉強してね
>>755 ありがとうごじあます、一生懸命頑張ります!
>>752 クリーンしたらIDEが自動でリビルドするだろ。
>>753 >>757 IDEはあんま信用ならないから、コードデバッグとリファクタリングくらいにしか使ってないので知りません。
思ったとおりにならないなら、疑ってみるのが基本だと思うので。(概念的な意味での)クリーンがされた1つの確認方法が動かないということ。
他にも冒頭に違う処理入れて確認とか自分の環境に合わせればいいんじゃない。
変わらないという症状の場合は、コードを疑う前にデプロイを確認しておくのは大事だと思う。IDE使ってるなら尚更。
>IDEはあんま信用ならないから
すごいな
>>758 「知りません」って、質問者はどうやってクリーンしてると思ってたの?
>>760 どうでもいい。
最終的にadb unistallと同等のことがされているかどうかが問題。
何の操作をしたかでなく、どういう結果になったか。
eclipseのことは詳しくないが、buildにadb
Installをフックしてるだろう。それが成功したか失敗したかをちゃんと読み取れてるかわからないし。実機かエミュレータかわからないが、全てがうまく行ってるとは限らない。特に始めたばかりというのだから環境の信頼性も低いだろう。
つかビルドの話ならandroidスレいけばいい
数日ググッてますが詰まりました
Apache HttpComponentsでCloseableHttpClientを使ってPOSTをするときに
ポートを指定して送信するにはどのようにすればいいのでしょうか?
764 :
デフォルトの名無しさん:2014/05/04(日) 13:07:15.61 ID:L9YrNdZb
>>763 HttpPostのインスタンス作るときにポート番号つきのURIを渡せばいんでないかしら
>>758 信用ならないのは事実だが
リファクタリングとか一番やっちゃいけないところでは
>>740 outofmemory java で検索
ヒープメモリの不足だから、JavaVM 起動時に、
ヒープメモリのサイズを大きく指定する
1行ずつデバッグすれば、
どの命令でエラーになるか、わかるはず
エラーの場所を突き止めたら、切りのいい場所で、
エラー箇所を切り離して、正常に動くかどうかを確かめる
>ヒープメモリの不足だから、JavaVM 起動時に、
>ヒープメモリのサイズを大きく指定する
典型的なバカな回答の見本です
>>765 信用するかどうかは人それぞれ。
問題なく使えるノウハウがあれば、その範囲で使ってもいい。ただ、問題が出たら疑うべき。
リファクタリングはソース上のことだから、ユニットテストという確認の手段さえしっかりしていれば問題ないと思っている。
なるほど見えないところで悪さされるよりははるかにマシだな
>>764 ありがとうございます
それでやってみてやはりうまくいかなかったので、そこ以外が問題の線が濃そうですね・・・
773 :
624:2014/05/04(日) 18:27:11.95 ID:F1HNpjLt
>>739 >>624 です,コードみています.
私は C++ から入った口ですので, C++ で雛形をつくり,それを C# や Java へと変換しようとしてシクっており泣きそうです.
>>739 とは関係ないのですが,気がついたことをいくつか
・C++ のテンプレート様の考え方をそのまま Java や C# のジェネリクスに持っていくことは難しいようです,ジェネリクスで書いているつもりですがコンパイルが通らない‥
Java はジェネリクスを使うとスタティックメソッドすらだめ.無論,プリミティブ型(値形)をジェネリクスの置き換え対象にするのもだめ.
csc では何で怒られているのかさっぱり‥
・C++ は this が null であっても,とりあえずメソッドをコールできます(メソッドのなかで null チェックが可能).しかし Java や C# は this が null のときにはメソッドは呼べない‥
最近,引数を null チェックしてから関数・スタティックメソッドを呼ぶ例をよく見かけては,首をかしげていたんですが,そういうことなんですねえ‥
c++
https://ideone.com/kuwHRh c#
https://ideone.com/T1Z0VF
>>709 入門書の例文なんか丸暗記して一行ずつ説明できるようにしろよ。
まずはそれからだ。
>『'javac' は、内部コマンドまたは外部コマンド、
>操作可能なプログラムまたはバッチ ファイルとして認識されていません。』
このコンパイルのエラー出たから環境変数のPathにガイド通りに自分のverの文字列を追加したけど、それでも同じエラー出てくる
打ち間違いでは無いと思うんだが、他に原因は何か無いだろうか
自分で色々いじくってみた結果、jdkフォルダの中のbinフォルダ内でだけjavacがエラーが出ず反応(用語説明みたいなのが出てくる)する事は分かった
>>775 そのbinフォルダのパスをそのままコピーして環境変数に追加しろ
777 :
デフォルトの名無しさん:2014/05/04(日) 23:29:14.68 ID:nsAI6Rtp
ていうか、それを自己解決できないなら、
まず、プログラムなど無理。
常に自己解決が求められるものだ。
778 :
624:2014/05/04(日) 23:35:11.46 ID:F1HNpjLt
>>775 環境変数の設定の仕方によるだろうが、そのガイドは起動時に環境変数が適用される永続的な方法を説明してるのではないか?
ガイドの通りにやるのではなく、そこからjavacが起動するための仕組みを学ぶ方が大事。
>>775 それはコンパイルエラーじゃなくてコマンドプロンプトが出してるメッセージだ。
javacのパスはこんなのだぞ。verってなんだよ。
C:\Program Files\Java\jdk1.8.0_05\bin
横だけど、たぶん
JAVA_HOME
PATHの設定も必要
>>775 原因を探ろうという姿勢はいい
後は成功失敗の認識誤りを直すだけだw
>>775 JDKがどこにインストールされたのか確認するのが先だな。
もうどこでもいいからフルパスで実行しろよ
環境変数汚すのは罪
"c:\Program Files\JAVA()\jdk1.8.0\bin\javac.exe" Source.java
業務システム作ると時に、ORM何使ってる?
一覧画面作るときに、検索条件を動的に作る必要があるだろ
あれってJPAじゃ対応できないよねー
>>773 >>778 ありがとうございます。コード見て勉強します。
ただ、私はC++とC#をよくわかっていません。すみません。
C#で再起を使うとかなりコードがきれいになるのですごいと思いました。
ArrayList<String> lstString = new ArrayList<String>();
ArrayList<Object> lstObj;
ArrayList<?> list = (ArrayList<?>)lstString;
lstObj = (ArrayList<Object>)list;
これ以外に良いキャスト方法って無いの?
>>789 共変性のキャストはプログラマーが実体を
正しく把握してることが前提だからこれでおk
ArrayList<String> stringList = new ArrayList<>();
ArrayList<Object> objectList = (ArrayList<Object>)(Object)stringList;
>>790 ああ(Object)を挟めば良かったんだ
ありがトン
>ArrayList<String> stringList = new ArrayList<>();
しかしなんでこの文法になったんだろうな。
曖昧さ解決なら
ArrayList<String> stringList = new();
で良かったんじゃないかと思う。
省略カ所を他の言語と敢えて逆にしたんだから
何か理由が有ったのだろうけど。
>>775 > 自分で色々いじくってみた結果、jdkフォルダの中のbinフォルダ内でだけjavacがエラーが出ず反応(用語説明みたいなのが出てくる)する事は分かった
eclipse か、netbeans を入れるのが一番、早いと思うけれど、
>>1 あたりに、なぜそうなるのかの解説も、昔は書いてあったような記憶がと思ったら、
一応、
>>1に、h 抜きの ttp で URL は書いてあるんだな。
もしかして、リンクが張れなくなっているのかな。ちょっとテスト。
http://www.wikiroom.com/java/?path,classpath
いろいろやったと言うけれど
どうしてフルパスで実行してみないかね。
まず
where javac
これでjavacが見つかる状態にしろカス
普通に書き込めるっぽい。
>>793のリンク先の
「パス,クラスパスとはなにか?」の解説を流し読んで、
あとは eclipse かなにかをインストールして忘れてしまえばいいんじゃないかな。
というか、そのリンク先の、さらにリンク先にある javafaq.jp も消えてるんだな。
>>792 ArrayList<String> stringList = new AttributeList<>();
の可能性もあるし
>>775 ついでにその原因も考えてみたけれど、
設定した値に間違いがないのなら、一番、ありえそうなのは、
設定した環境変数が有効になってないんじゃないかな。
もともと、これは Java に関する質問というよりは、
じつは、OS や、その OS で使われているシェルとか、
コマンドプロンプトとかいうソフトの設定法に関する質問だと思うので、
たぶん使っている OS によっても、その原因は、いろいろ異なるような気がするよ。
>>788 >C#で再帰を使うとかなりコードがきれいになる
それを感じていただければ、それだけで本望です、あ、あといわゆる本当の意味での「参照渡し」も、とても効いています
ID出るようになってから雰囲気変わったな
荒らしは消えたけどガチ初心者がたくさん来るようになったり、スレ違いネタたくさん投下するようになったり
ろくにIDE触ったことない奴がドヤ顔でレスつけてたり、ORMでプレースホルダーすら使えない奴がORM使ってたり
ついにJavaスレ黎明期の幕開けか
この数日、ガチ初心者がたくさん来ているように感じるのは、
たんにゴールデンウィークだからじゃね?
Java スレの黎明期というと、
スレのタイトルに「初心者歓迎」と書いてあるように見えて、
よく見たら「ネタ心者歓迎」と書いてあったとか、そんな記憶しかない。
過去ログが見えるようになったと聞いたのだけど、
サーバの移転をはさむと、昔のは見えないっぽいな。
>>792 List<String> list = new();
この場合どうすんだよ
むしろGWでドヤ顔してるプロ様が増えてるんじゃね
>>789>>790のこれ怖いんだけど
lstStringから取り出すときStringじゃない何かが追加されたりするんじゃないの?
ArrayList<String> stringList = new ArrayList<>();
ArrayList<Object> objectList = (ArrayList<Object>)(Object)stringList;
objectList.add(Boolean.TRUE);
for (String s : stringList) {
System.out.println(s);
}
>>805 >Stringじゃない何かが追加されたり
Javaのジェネリクスはそんなもの。
そこらへんは後発のC#の言語仕様の方がよく考えられている
おっと間違えた。
ジェネリクスはC#が先だったけど
後発のJavaはJava VMの下位互換性から
C#の共変性/反変性の仕様は入らなかった
正規表現で詰まりました
String target ="ABCDAEFAGH";
String regex = "A";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(target);
while(m.find()) {
...
}
↑のような構造で、次にfindするまでの間の文字列("BCD"や"EF")を取得したいのですが良い案が浮かびませんorz
せめてやるなら
ArrayList<? extends Object> objectList = stringList;
にしないと怖い
>>805 ライブラリやフレームワーク作るときに他人に弄られて何入ってるかわからなくなるのが嫌なら
Collections#checkedList あたりでも使っとくといいよ。
>>810 実際は"A"は定数ではなくて、
"(A)" や"(asdf)"みたいに"()"で囲まれた文字列なのでsplitしちゃうと
"BCD"等は抜き出せても"A"や"asdf"が抜き出せないorz
>>812 String#splitの引数は正規表現だから、たぶんやりたい事はできると思うが。
どうしても自力でやりたきゃ前回の終わりと今回の初めで切り出せばいいかと。
int last_end = -1;
while(m.find()) {
if (0 <= last_end) System.out.println(target.substring(last_end, m.start());
last_end = m.end();
}
814 :
デフォルトの名無しさん:2014/05/06(火) 18:26:31.10 ID:ioZ5RvLw
>org.apache.catalina.core.StandardContext.listenerStart クラス org.springframework.web.context.ContextLoaderListener のアプリケーションリスナの設定中にエラーが発生しました
>java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
NetBeans + Tomcatで開発してるんですが、なんでClassNotFoundException発生するんですか
クラスパスはNetBeansが宜しくやってくれてるんじゃないんですか?
入門書からやり直せ
>>807 間違い
ワイルドカードが反変、共変に相当する
反変共変をジェネリックなクラスを使う側で指定するので実はC#より柔軟で強力だ
反変共変に関してはVMに依存しない実装であることが珍しくプラスに働いていて、
実行時には結局全てObjectになるんだからダウンキャスト先の型が変わるだけということ
批判されてるのはあまりにも分かりにくすぎるから
List<String>にBooleanが入ってしまうことを柔軟で強力というならそうだろうな
javaってなんで配列を動的に確保できないんでしょうか?
public class Foo<T>
すみません、途中で送信しちゃいました。
public class Foo<T> {
private T[] my_array;
public Foo() { my_array = new T[50]; // エラー }
}
TがObjectを継承しているならObject[]をT[]にキャストすればいけるらしいですけど。
なんでジェネリックなタイプの配列を確保できないのでしょうか?
>>820 詳しくはコンパイルエラーメッセージに出てる「総称配列」とかでぐぐれ
基本的には、そもそも配列を使わない方がよい
コレクション+ジェネリクスの世界で納まるならそれがよい
どうしても配列でないと実現できない場合のみ、まわりくどい手段やキャストを用いる
そもそもjavaの配列は共変配列だから総称配列にするアプローチがjava的に間違ってるんじゃないだろうか。
下位互換のために吐くbytecode同じだから"Object[]をT[]に~"とかはできるけど型安全じゃなくなる。
だからコレクション使えって言われてるけど標準ライブラリが中で共変配列だらけで警告でるんだよね。
つまりどういうことだってばよ?
>だからコレクション使え
コレクションを使うと型安全の問題が解決するのか?
ジェネリクス用のバイトコードを持たないJAVA()で
ガワ的にジェネリクスじゃないListを作ればいいのよ
IntegerListとかDoubleListとか、もう用途限定して作っちゃえばいいのよ
826 :
デフォルトの名無しさん:2014/05/07(水) 05:53:45.14 ID:n1y4j4o/
if文とかfor文など、制御文の仕組みがみたいのですが、
見る方法はないでしょうか?
総称型の配列が作られないのは分かりました。
総称型の配列は諦めたけど、演算子のオーバーロードがないのがつらい
C++で書いたソースコード流用できないじゃねーかよ。
CMATRIX x = a*(b + c); // C++風
CMATRIX x = new CMATRIX(a.mul(b.add(c))); // Java風
上の式を下の式に(C++風からJava風に)書き直すのがめんどくさい…
一括で変換出来るツールってないですかね? 「C++ Java 変換」でググってみたけど良さそうなのが見つからない…
それよりそういう処理だといちいち行列クラスのインスタンスなんて作ってたらとんでもなく遅くなるぞ
Javaはスタックにオブジェクト置けないし、ジェネリクス使うんなら全要素のボックス化も発生して想像を絶するコストだ
tomcat 8についての質問です。
localhost:8080/manager/html
にアクセスすると正常にトムキャットマネージャーを起動できた直後に
空のディレクトリCATALINAHOME/conf/Catalina/localhostに
manager.xmlを作成し直後にmanager.xml削除したところ、
localhost:8080/manager/html
にアクセスすると404が表示されるようになってしまいました。
この謎のエラーについて調べていますがなにかヒントをください。
ログを調べたところ次の警告が出ておりこれによりmanagerが起動していないことがわかりました。
Docbase inside the host appBasehas been specified,and will be ignored.
しかしまだ解決していません。
いえこれは勘違いでした、manager.xmlを作った場合のみこの警告がでており。manager.xmlを削除するとwebapps/managerは配置されましたとログにでていました。
swingのrepaint();とappletのrepaint();って違うんだね
知らなかったからswingでrepaint呼び出して画面がクリアされずに小一時間悩んだ
>>829 不変にしていちいちnewすれば可変オブジェクトと違って同期化するコストが無くなるやいっ!
まあ、行列演算はライブラリにしてJNIでH/W使えばいいと思う。
JDK1.5 の環境で「javac -source 1.4 xxx.java」でコンパイルすると
JDK1.4 のclassが作成されると思います。
(JDK1.4なのでenumは予約語ではなく変数として使える)
このclassを JDK1.5 の環境で実行すると enum は予約語ではなく
変数として使えると思いますが、これは JDK1.5 の環境に JDK1.4
の情報も持っているから古いバージョンでも動くのでしょうか?
※いろいろ調べてみたのですが、これらの情報があるサイトが見つけられませんでした。
.classファイルの中身、およびJavaVMについて知れ
予約語うんぬんはコンパイラさんが弾くもの
>「javac -source 1.4 xxx.java」でコンパイルするとJDK1.4 のclassが作成
そう考えた根拠は?
>>836 意味不明
多数の行列を複数のスレッドからバラバラに更新するようなカオスな処理をしてるのか?
それに、その状況で同期化しないなら楽観的ロックのような排他処理は必要なはずだが、その辺考慮してるのか?
並列計算で同じ行列の異なる要素を同時に更新するのはよくあるけど、それだと君の言ってるのとは真逆だよね
837です。
JavaVMとか調べてみます。
なかなか難しいですね。
>>840 コンパイルエラーになっていたものに対して -source 1.4 を付けると
警告が表示されclassが作成されたのでそう思っていました。
※「・・JDK1.4の機能で動くclassが作成される・・」と書くべきでした
>>842 まず
javac
これを実行して引数のヘルプを眺めろ
そして1.5のjavacが使えるならどうして
実行してみない?
844 :
デフォルトの名無しさん:2014/05/09(金) 07:54:02.76 ID:96bhcDdE
>>835 上塗ばっかりになるやつかw
俺も悩んだわw
すいません。不変とか可変オブジェクトとか同期化って言葉覚えたので使いたいだけでした
今後はjavaドカタらしくweb関連で精進します
そんなITドカタにすら慣れなかったリアルドカタな彼