1 名前:デフォルトの名無しさん mailto:sage [2015/04/22(水) 22:35:19.67 ID:XG+QDGZC.net] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 (p)ttp://www.wikiroom.com/java/?path,classpath ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 ・String に == は使うな。equals() を使え。※ 質問時の心得 ・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。 ・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。 前スレ ★★Java質問・相談スレッド172★★ peace.2ch.net/test/read.cgi/tech/1419490897/
511 名前:デフォルトの名無しさん [2015/05/23(土) 16:59:55.91 ID:sJw17SmW.net] >>493 ない。 ただJava自体がオブジェクト指向プログラミング言語なので、なぜそうしたのかはっきりしておかないと、後で批判される。
512 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 17:01:18.37 ID:UTvWTzZi.net] 改行コードのrnはrn?それともr+n?
513 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 17:16:35.64 ID:PrVJ6ieD.net] >>493 class宣言とか不要なものを形式的に書かなくてはならず、使いにくくないか? rubyとかpythonみたいに、どっちでも書ける言語の方が良くないか?
514 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 17:26:06.54 ID:PrVJ6ieD.net] >>495 CRとLFのこと? charで13と10。 何を改行と見做すかは表示する側のアプリケーションによる。 場合によっては<br/>だったりするし。
515 名前:デフォルトの名無しさん [2015/05/23(土) 18:10:37.97 ID:IAyyqr6P.net] >>496 みんな普通にOOPで書いているのに、手続き型が散りばめられていて、 書いた本人が悪いと思ってないからやっかい 継承とか使ってるからOOPだと思いこんでる
516 名前:デフォルトの名無しさん [2015/05/23(土) 18:22:24.19 ID:fDV5mshW.net] Java使いにとって世界一のプログラマは自分なので、常に自分の考えが正しい。 ただし、すべてのJavaプログラマがそういう考えなので、Java使いの数だけ 世界一がいることになる。 そこを抑えたうえで掲示板に書き込むべきではなかろうか。
517 名前:デフォルトの名無しさん [2015/05/23(土) 18:48:43.09 ID:IAyyqr6P.net] うん、 だから世界一なら理解できるだろ、と もう、継承なんかオブジェクト指向じゃないんだから、とね
518 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 19:12:59.31 ID:DgqGrygc.net] staticメソッドは一度書くと真似るやつ出てくるからな。
519 名前:デフォルトの名無しさん [2015/05/23(土) 20:08:11.17 ID:EVHHuS7e.net] >>498 おまえんところは設計というものがないんか?
520 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 21:33:24.31 ID:16AeZd3V.net] >>498 oopで書いてるなか手続き型で書かれて何が問題なの? oopで書くことが目的になってね?
521 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 21:46:16.08 ID:SgbjeX2J.net] そもそもOOPを手続型と相反するものだと思ってる時点で OOPを理解してないのが丸分かり 理解した上でOOPを使わないのは自由だけどね
522 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 21:58:04.41 ID:UeUgU9WA.net] バカはレスしないでくれる? 個人の主張として批判せず、いたずらにある類として扱うのは極めて恣意的かおバカの批判にあらざる攻撃の特徴。 まあ、その軽蔑すべき発想で返した俺も反省はしてもよいが はっきり言って精神病とバカの特徴でしかない論法でレスするなよ。 俺はバカと精神病きらいだからな。 おまえら、マジで精神病と思われる宣言的絶対主義の形而上学バカの一味は人類の公的な敵だとおもっているからな。 さしあたりお前らが馬鹿にされていることは科学的認識の健全性をそれなりに示すから喜ばしいがな。 それにしても、単なる知識を披露しあっているだけの時は頭良さそうなふりはできるが、 いよいよ自身の認識を問われる事態になるとここにいる連中、そこの浅さを露呈するやつ多すぎ 所詮、2chだな 精神病君かい?
523 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 22:00:05.05 ID:KfweUSpR.net] oops
524 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 22:51:00.19 ID:f7m2RNUj.net] >>504 おもっきし競合するだろ。コードを構造化するための尺度なのに、出鱈目に混ざってたら意味ないって。orientされてないって。
525 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 23:01:30.27 ID:wCdzmxCi.net] 俺はクソ長い static 変数名とか定義することを JAVAJAVAしていると呼ぶが お前らはどうだ
526 名前:デフォルトの名無しさん mailto:sage [2015/05/23(土) 23:07:23.90 ID:SgbjeX2J.net] >>507 モジュール化の単位が違うだけだよ 宣言的か手続的かという大きな
527 名前:りで見れば両方後者であることに違いはない [] [ここ壊れてます]
528 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 00:59:42.61 ID:nM7n17pJ.net] こいつダメだ
529 名前:デフォルトの名無しさん [2015/05/24(日) 01:07:44.85 ID:TpK11WQw.net] 実際問題、 会社には、>>509 みたいなやつが紛れ込んでるし、 >>504 のように信じきってるから弊害がどのように出てるかが理解できない 理解できないから、普通に手続き型書いちゃって 1つのフィールドにセッターとゲッターをつけちゃったりするんだよねぇ
530 名前:デフォルトの名無しさん [2015/05/24(日) 01:14:37.05 ID:TpK11WQw.net] >>503 堅牢に機密性と完全性を保証できたはずのコードに横穴をブチ開けるテロみたいな行為 が問題 まあ、説明しても理解できんのんだろうけど 目的は。。。 つか、 ベストなゴールはステートマシンだろ 今のところそれに一番近づける唯一の手法がOOP
531 名前:433 [2015/05/24(日) 01:36:24.32 ID:TpK11WQw.net] ちなみに、俺は職業プログラマじゃないから javaプログラマの気持ちは分からんけど 傾向としてはjavaプログラマが絡むプロジェクトは 納品したシステムに、癌細胞がある 増殖させないように教育する俺の立場からすると、迷惑意外の何者でもない 教育しなければ、癌細胞が増殖するんだから そろそろ、継承がOOPだなんで寝言止めね?
532 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 02:02:28.41 ID:i5vBS41t.net] どこを見ても継承はオブジェクト指向の概念の一つって書いてあるんだよなあ
533 名前:433 [2015/05/24(日) 02:05:13.26 ID:TpK11WQw.net] だから、それが間違いなんじゃね?
534 名前:433 [2015/05/24(日) 02:14:50.85 ID:TpK11WQw.net] 理解できないバカがいると思うから補足するけど、 継承を使わないOOPは可能 異存ないよね?? 継承を使ったOOPじゃないプログラミングも可能 異存ないよね? じゃ、継承はオブジェクト指向に必要十分じゃないじゃない 必要でも、十分でも無い
535 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 02:35:56.13 ID:ljwa6nbj.net] 継承を使わないでどうやってポリモーフィズムの性質を持たせるの?
536 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 03:10:28.68 ID:riEgaj4v.net] 委譲を使うのでは?
537 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 03:36:41.18 ID:ljwa6nbj.net] それならわかるよね どっち使っても良いけど、オブジェクト指向には多態性が必須だし
538 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 03:46:49.33 ID:cCZMumrg.net] ID:ljwa6nbjきみぃ、ID:TpK11WQwに説教されるがいいよ
539 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 04:46:51.38 ID:ljwa6nbj.net] 何されるのか怖くて眠い中過去のレス読んだけど これってJavaの話じゃなくてオブジェクト指向そのものの話なのね じゃあカプセル化だけしてあれば良いと思います でもそんなJavaのソースは触りたくないです
540 名前:デフォルトの名無しさん [2015/05/24(日) 05:27:09.28 ID:tybAC3nL.net] デリゲートに継承と同じ効果を期待すると、カプセル化が容易に崩れるのではないだろうか。
541 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 06:16:42.41 ID:61R9xmfj.net] 別言語の話になっちゃうが、Let Over Lambda って本に Pandoric Let てのがあってね >>513 java プログラマで一括りにされても困る 中途半端な理解度で仕事してるのは一緒じゃね
542 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 06:23:45.33 ID:KRaNaDM4.net] >>512 堅牢に機密性と完全性を保証できたはずのコード 手続き型で書いて保証できないの?OOP使わないと保証できないって真顔で言ってるの?
543 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 06:47:08.52 ID:eFsHqM4J.net] OPPでも手続き型でも個人の自由だと思う。 ただそれを人に押し付けたり、2chで主張する必要はないのでは?
544 名前:デフォルトの名無しさん [2015/05/24(日) 08:30:33.68 ID:tybAC3nL.net] プログラマに自由はありません。 エンジニアの言うことに従うべきです。 現代の奴隷なのですから。
545 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 09:33:54.35 ID:nM7n17pJ.net] 継承をサポートしてカプセル化がうんたらと一々説明してると手間なので、OOとか名前を付けてそれを使ってるだけ。 しかし、同じ言葉でも狭義だったり広義だったりドメインで意味は変わってくる。 プロジェクトでは認識合
546 名前:わせや用語辞典を作ったりするだろ。 癌なのは用語が絶対普遍のものだと思っている奴。それをわかってて後出しに使う奴もいる。 [] [ここ壊れてます]
547 名前:デフォルトの名無しさん [2015/05/24(日) 09:52:52.45 ID:dcDQRoqW.net] それは逆ではないですかね。 私が除隊して新しい職業を探していたころ、アランケイがオブジェクト指向の 原型と言えるようなアイデアを盛んにアピールしていました。 それは、プログラムを部品化してお互いにメッセージングを行うことによって 全体を組み立てるというものでした。 このアイデアがとても素晴らしいことは私にもわかりました。 しかし、この当時、そのアイデアが具現化できるとは誰も考えませんでした。 私も、アイデアの素晴らしさは理解しましたが、ある面では馬鹿にしていた一人です。 宇宙人は実在するというようなものです。 実在するでしょう、しかし目にすることは無いのです。 結局私は、再入隊してベトナムへ向かいました。
548 名前:デフォルトの名無しさん [2015/05/24(日) 10:05:42.48 ID:Y1LrfFVA.net] その後サイゴンが陥落し、私はまた除隊して新しい職業を探し始めました。 その頃、ベル研のデンマーク人が新しい言語を発表しました。 この言語には欠けているものが沢山ありましたが、目を引く要素もありました。 特に継承、多態性、抽象データ型という概念が整理されたことは、私を驚かせました。 この時、クラスに基づくオブジェクト指向の基礎概念が完成したと思います。 しかし、オブジェクト指向が受け入れられるには時期が早すぎました。 C言語ですら重すぎると思われていました。 結局私は再入隊してイラクへ向かいました。
549 名前:433 [2015/05/24(日) 10:13:38.17 ID:TpK11WQw.net] >>519 論外 >>521 寝ぼけてるんだと思うよ。 別にextendsを使うな、とか、polymorphism を使うなとか言っているわけじゃない 便利な機能は使えば良い javaはOOPができるんだから、OOPで結果的に素敵になるゴールに向かっている 筈なのに、寝ぼけた輩(やから)のせいで台無しになるのがおかしい、と言っている そういうヤツに限って自分はOOPしてると勘違いしてる で >>524 のように、まともにdebugしてない奴がでしゃばるから 混乱に拍車がかかるんだよ 手続き型でカプシャリングできていると太鼓判押すのはメッサ大変だろうが
550 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 10:17:56.97 ID:uVZ1+wHE.net] 規模が大きくなれば結局はデータモデル(+トランザクション)*という形にしかならないよ 本来のOOPからすればそんなのは手続型そのものだけど、 DDDの世界でももうそれはある程度仕方ないという方向になりつつある
551 名前:433 [2015/05/24(日) 10:32:30.70 ID:TpK11WQw.net] DDDってどこでもダメな出鱈目の略か? 規模が大きくなれば、カプシャリングの重要性は増して メッセージングをどう扱うかが重要になる "Need to Know"とか "Due efficient"とかの概念を勉強した方が良いと思うぞ
552 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 11:30:25.09 ID:JprLPyf+.net] >>511 こういうのよくいるよな、納期と金勘定だけしてればいいのにプログラムに口だすやつ
553 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 11:31:14.48 ID:KRaNaDM4.net] >>530 なんでまともにdebugしてないとか条件つけてまで自分の意見の正統性を貫くのかね? プログラミング技法ではなくプログラミング能力に問題を置き換えてるだけでしょ 能力の話で言えば、まともにカプセル化できるエンジニアの割合とC言語などのルールベースの構造化プログラミングできるエンジニアの割合なんてたいして変わらないでしょで
554 名前:433 [2015/05/24(日) 11:38:21.78 ID:TpK11WQw.net] >>533 1つのメンバーにセッターとゲッターを付けても良いと思ってるバカ君ですか?
555 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 11:51:43.03 ID:uVZ1+wHE.net] 現実問題としてさ システムって最初
556 名前:ノ設計したらたら終わりじゃないの 最初は美しいモデルと緊密に統合されてたはずのDBは次第に一人歩きして、 勝手なトランザクションがどんどん追加されていく 既存のドメインモデルを拡張する形でやればいいと思うかもしれないが、 OOP的に綺麗に作られたモデルへの要件追加って比較的大きな設計変更を伴うことが多くて、 既存のモデルの整合性を保ったままそれをやるのは非常に難しいわけ 自動テスト?あればいいね(笑) [] [ここ壊れてます]
557 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 12:47:07.07 ID:aZHQmtWn.net] 初期設計 運用 仕様変更+仕様追加1 仕様変更+仕様追加2 仕様変更+仕様追加3 : 仕様変更+仕様追加n 再設計 運用 : この繰り返し
558 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 12:52:33.63 ID:aC7thSOE.net] それでいいと思うの
559 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 13:05:53.90 ID:m34JfCKH.net] でも初のオブジェクト指向言語であるSimulaってクラスベースだし継承の機能持ってるよね? つまり初のオブジェクト指向言語が間違ったオブジェクト指向言語だったってこと?
560 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 13:09:17.98 ID:aZHQmtWn.net] オブジェクト指向という概念は不変かもしれないけど 設計方法や運用方法は時流によって変化していくのは当然じゃないの? その対象がプログラミング言語自体であったとしても
561 名前:433 [2015/05/24(日) 13:48:04.02 ID:TpK11WQw.net] 多分、オブジェクト指向を作った人の概念と オブジェクト指向の理想が分かっている人の頭ん中にある概念と (それがあまりにも理解されないため) 広めた人の概念に、越えられなくて広く深い闇のような溝があるんじゃないの? 手続き型でもカプシャリングは不可能じゃない 面倒だけど そういう意味では クラスもオブジェクト指向に必ずしも必要なもの、というわけでもない 便利にOOPができる、というだけ
562 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 13:48:16.50 ID:vh9OO7/M.net] >>535 金勘定してろよw
563 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 14:15:00.49 ID:b8rrIu3h.net] 画面全体のスクショじゃなくて特定のパネルを撮影→保存する方法ない?
564 名前:デフォルトの名無しさん [2015/05/24(日) 14:56:21.92 ID:SrBykNuH.net] >>541 を見て判ったことがあります。 この方は、「C言語でOOPは出来ない」などと主張して「XLib」を見せられた のではないでしょうか。 ぐうの音も出なくなって「ギシ・ギシ・・」などと奇妙な音を鳴らしながら このスレにたどり着いたのでは。 どうでしょう?
565 名前:デフォルトの名無しさん [2015/05/24(日) 15:24:57.90 ID:SrBykNuH.net] >>440 について回答すると、OOを説明するときに生物や自動車を用いるのは、 オブジェクト志向が実用される前からなんですよ。 日本でも1990年代初頭にはアジソンウェスレイだったと思いますが翻訳本が 書店にたくさん並んでいました。 ハンドル、エンジン、タイヤなどと書かれたただそれだけの本が売れていたのです。 その頃私はTurbo C++を買いましたから、OOPができる環境は既にあったと思います。 しかし、C++はメモリーを圧迫するため、Cの範囲内で使うのがマナーでした。 スモールトークの環境があったからと言って、OOがスモールトークによって 広められたと考えるのは尚早です。 実際には、WindowsがOOを広めました。 Windowsの登場は0から1にするには時が遅すぎましたが、1を100にしました。
566 名前:デフォルトの名無しさん [2015/05/24(日) 15:45:24.90 ID:SrBykNuH.net] >>448 以降あたりについては、元々コンポーネント化に対する要求がOOを広める 原動力になったので、再利用性と密接に関連していると思います。 再利用性を持たないオブジェクト指向技術は、現代において全く役に立たないと 言い切ってよいと思います。 未来には役立つ可能性があると思いますが、人類はその地点に到達していません。
567 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 17:03:46.08 ID:B+ZiQ6JK.net] >>530 愚痴を言いに来てるだけなの?
568 名前:デフォルトの名無しさん [2015/05/24(日) 17:07:12.01 ID:SrBykNuH.net] >>547 違うと思うよ。 知ったかしたい年頃(40代くらい)じゃないの。
569 名前:デフォルトの名無しさん [2015/05/24(日) 18:18:36.17 ID:Ch6FnuDl.net] 業務システムでオブジェクト指向で設計した方がいいものって少ないよね。
570 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 18:25:20.06 ID:B+ZiQ6JK.net] >>548 その割には説明するの嫌がるよね なんか教育する立場らしいけど、こんなんで勤まるんだろうか 後輩「先輩、オブジェクト指向には継承が必要ですよね?」 433「論外。君みたいな馬鹿がいるからオブジェクト指向が勘違いされるんだよ」 後輩「・・・え?」 433「君わかってないと思うから補足すると〜」 ただの危険人物だった
571 名前:デフォルトの名無しさん [2015/05/24(日) 18:39:10.56 ID:SrBykNuH.net] >>550 無職だと思うよ。
572 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 18:59:45.76 ID:uVZ1+wHE.net] どんなに実装がクソだろうと問題にならないようにモジュールのインターフェースを設計するのが 上流の腕の見せ所なのにね システム開発においてプログラマが無能なのは大前提であって、プログラマを責めるのは筋違いだ
573 名前:433 [2015/05/24(日) 20:09:05.76 ID:TpK11WQw.net] To: ID:SrBykNuH 別に再利用性を否定してるわけでも、Javaが採用したクラスやインターフェースをディスってるわけでもない Javaのオブジェクト指向が人間の考え方に似せられることも、幸運だったと思うよ ただね、 なんどか寝ぼけた人が出てきたからわかると思うけど、 現実に、Javaのなかでオブジェクト指向を適切にコーディングするのに、 必ずしもクラスの概念が必要だったわけでもなく、 継承も良いOOPというよりは、コードの再利用性を高める仕組みでしかないってこった そろそろ、オブジェクト指向=クラス、とか継承とか言うのやめない? って話だ
574 名前:433 [2015/05/24(日) 20:18:32.81 ID:TpK11WQw.net] >>550 教育じゃなくて、指導な 手に負えないのは、 中途半端にオブジェクト指向を理解して、むりくりOOPやるやつな 「クラスに作ったメンバー変数ですけど、プログラムが書けないからpublicにしました」 とか聞いたらぞっとするだろ
575 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:21:35.87 ID:uVZ1+wHE.net] ? ポリモーフィズムを考慮しないなら>>509 の「OOPと手続き型はモジュール化の単位が違うだけ」 というのは正しいんだが、そもそもそれが気に入らなかったんじゃないの?
576 名前:433 [2015/05/24(日) 20:22:25.33 ID:TpK11WQw.net] >>549 大事な事を言ったね そうかもね そうだとしても、隠蔽と、データフローは気にしないといけない オブジェクト指向が本当にやりたいのはそこ C だと実現させるのは大変だけど、Javaだとめっさ楽に実現できる
577 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:34:46.38 ID:MF+e67Kx.net] 話変わるけどラムダ式って皆使ってる? 変数に入れるメリットが分からないんだけど。 ラムダ変数名.メソッド名()とイントランス変数名.メソッド名()の違いが分からない。 後処理が早くなるらしいけど今のPCクソ速いし意味なくね? 文字列の凍結をメソッドでするのみたいに。
578 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:36:21.97 ID:T/GhuM2t.net] >>556 寝言は寝て言え 寝言は寝て言え 寝言は寝て言え 大事なことは3回言いました
579 名前:10人に一人はカルトか外国人 [2015/05/24(日) 20:50:17.04 ID:9iYnq6Bj.net] ★マインドコントロールの手法★ ・沢山の人が偏った意見を一貫して支持する 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法 ・不利な質問をさせなくしたり、不利な質問には答えない、スルーする 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど
580 名前:無いんだと信じ込ませる手法 偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い 靖国参拝、皇族、国旗国歌、神社神道を嫌うカルト 10人に一人はカルトか外国人 「ガスライティング」で検索を! [] [ここ壊れてます]
581 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:59:09.02 ID:B+ZiQ6JK.net] >>554 >>513 で教育って言ってるじゃん
582 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 21:08:20.26 ID:JNQJCLy9.net] 読み解けてないみたいだから解説するけど、その教育というのは○○という意味で指導のこと お前みたいに寝ぼけてる奴が癌 次の433のレスはこれで決まり
583 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 21:09:19.86 ID:yXIm8/1S.net] 読み解けてないみたいだから解説するけど、その教育というのは○○という意味で指導のこと お前みたいに寝ぼけてる奴が癌
584 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 21:14:13.22 ID:MF+e67Kx.net] 質問しても流される。。 議論スレで離隔したい。
585 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 01:20:53.49 ID:fq7wkhGS.net] >>556 だから自分の能力不足を言語のせいにするのはやめろよ Cで隠蔽なんて構造体の型定義を隠してポインタ定義だけ公開、振る舞いは関数ポインタでゴニョゴニョと スレ違だからこれ以上書かないが、その薄い知識が役立つのは新人教育までだから
586 名前:433 [2015/05/25(月) 01:50:01.68 ID:p1p0Nay9.net] >>557 正直匿名クラスとか嫌いなんでよくわからんが、気にならない人は便利だと 思うんじゃないかな、程度だわ 隔離されたいんだけど、隔離先がない(過疎化が目に見えてる)ということと どうも、図星の指摘に涙目になるやつが多い見たいでねぇ
587 名前:433 [2015/05/25(月) 02:08:46.71 ID:p1p0Nay9.net] >>555 探せば細かいツッコミはあるのかもしれないけど、そんなに気にならなかった ので、気に入らないとも、気に入るとも思ってないけど??? >>560-561 「教育的指導」って意味でな なぜゆえそこを噛み付くのかが理解できんけど そもそもいちいち教育なんてできるわけない ミーティングルーム予約とって、ヒアリングののちコンコン説説と、だ めんどくせえ >>564 それ、なに?低脳なちみが、俺を煽ろうとしているわけ? 同一メモリ空間だとリターンアドレスの絶対値のみならず、スタックされた関数からの 相対位置まで、ダイナミックにしないと隠蔽は難しいよね、 とか言わせたいの? 馬鹿じゃね?
588 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 02:31:50.82 ID:fq7wkhGS.net] >>566 そこまでの隠蔽がJavaだと簡単にできると? 名前解決でリフレクションが言語レベルでサポートされてんだぜ? 煽ってないよ哀れんでるよ
589 名前:433 [2015/05/25(月) 02:36:41.37 ID:p1p0Nay9.net] ちょいと思考実験してみようか javaで、シングルトンのみのプログラムを書いてもOOPは実現できるんだぜ 継承無しのシングルトンのみでも、だ この説明が理解できない奴は涙目で反論するんだろうね オブジェクト指向を理解してる人は「そうだけど、そんなんめんどくせぇ」 って言うだろうね その違いだよ
590 名前:433 [2015/05/25(月) 02:42:40.89 ID:p1p0Nay9.net] >>567 ほんと、バカだなぁ。。。 そりゃ、関数をポインタで呼ぶCをウラヤンダ人が多いから そんな要望が上がってくるんだよ 言語も要望を無条件に受け入れると退化するって典型的な例だろ 使 わ な け れ ば 良 い
591 名前:433 [2015/05/25(月) 02:45:10.32 ID:p1p0Nay9.net] ごめん、、、 馬鹿たる所以を説明してなかったね おまえ、せっかくprivateにしたメンバーにゲッターとセッターを付けてドヤ顔 してる馬鹿と同じ馬鹿臭がするよ、 心底馬鹿なんだね、 って書くのを忘れてたよwww
592 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 02:55:29.
] [ここ壊れてます]
593 名前:17 ID:QGZa2Nfx.net mailto: 質問なんですけど、privateをつけたフィールドにゲッターやセッター無しでどうやってアクセスするんですか? [] [ここ壊れてます]
594 名前:433 [2015/05/25(月) 02:57:36.65 ID:p1p0Nay9.net] >>571 セッター「と」ゲッター
595 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 03:03:52.63 ID:fq7wkhGS.net] >>570 同一メモリ空間うんぬんまで言及したのは自分だぜ、、 っで結論が使わなければいいって、、
596 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 03:04:56.39 ID:mEGu5cSx.net] >>566 教育だろうが教育的指導だろうが言葉はどうでも良いんだよ 「人に物を教える」という本質さえ表現できてればね 「人に物を教える」こと、あなたはできますか? いやできないでしょって言ってるのが>>550 なんだよね それなのにいきなり>>554 で「教育じゃなくて指導」とか言って、 言葉について意見し始めるのがもうおかしいんだよな
597 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 03:05:08.54 ID:YjLBOZtQ.net] >そろそろ、オブジェクト指向=クラス、とか継承とか言うのやめない? >って話だ じゃあ、それに代わる オブジェクト指向=○○ ってのを提言しないと広まらないよ ほとんどの人はオブジェクト指向がやりたくてプログラミングしてるんじゃなくて プログラミングが楽になるからオブジェクト指向(と呼ばれているやり方)を選択してるだけで そのやり方が本当のオブジェクト指向かどうかなんて大した問題じゃないから
598 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 03:05:10.41 ID:QGZa2Nfx.net] >>572 ああ、ゲットしたいだけのフィールドにセッターいらんやろとかそういう話か
599 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 06:44:48.36 ID:uOKH4JiO.net] >>568 >シングルトンのみのプログラムを書いてもOOPは実現できるんだぜ それでいいんだったらカプセル化のしやすさは特にCと変わらないと思うが Cにファイルスコープがあるのを知らないの?
600 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 07:11:24.20 ID:vHFEE713.net] アクセス修飾に同じファイルからのみアクセス可能ってやつ追加してほしい
601 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 09:42:25.36 ID:2LXkX4Xr.net] >>578 クラスにしてから同じファイルだったかどうかなんて判るの? 新たなパッケージかインナークラスにすればいいんじゃないの。
602 名前:デフォルトの名無しさん [2015/05/25(月) 10:26:03.96 ID:JYCHMnRj.net] >>576 ゲッターとセッターを用意したら公開しているのと同じと言ってるんだと思うよ。 ・多くのIDEがセッター・ゲッターを認識する。 ・フィールドの変更によって何らかのリアクションが必要になる場合が予想される。 等の理由で、フィールドの公開はセッター・ゲッターによって行うというポリシーは 有りだと思う。 ボーランドの言語には、そういった目的のプロパティというものがあったから セッター・ゲッターの潜在需要は大きいと思う。
603 名前:433 [2015/05/25(月) 10:26:40.15 ID:p1p0Nay9.net] >>575 ○○を提言するほど、俺は偉くないよ 浸透いうな的に オブジェクト指向で継承いうな オブジェクト指向でポリモーフィングいうな 程度かな
604 名前:433 [2015/05/25(月) 10:29:17.46 ID:p1p0Nay9.net] >>580 そやね つか、オブジェクト指向的には、ゲッターか、セッターのどちらかであるべきで 2つが同時にあってはならない 理由は、セッターやゲッターはデータフローを司るから
605 名前:デフォルトの名無しさん [2015/05/25(月) 10:38:38.47 ID:JYCHMnRj.net] >>582 いやいや、俺は逆のことを言ってるよ。 両方あってよいと思う。 単純にフィールドを公開するだけであっても、必ずセッター・ゲッターを用意するという ポリシーはあっても良い。 セッター・ゲッターはビーンズで必要になったわけだけど、ボーランドのRAD用 言語にはもっと積極的なプロパティという仕組みがあった。 プロパティはとても便利だったよ。 当時の非力なマシンでもIDEのサポートが機能したし。
606 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 10:50:13.65 ID:63G9oDBX.net] 433 NG指定おめでとうございます
607 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 11:46:30.69 ID:2LXkX4Xr.net] ゲッターやセッターは後から振る舞いを変えられるから使ってる。 フックみたいな使い方が多い。
608 名前:433 [2015/05/25(月) 11:46:38.76 ID:p1p0Nay9.net] >>583 それ、クラス設計が間違ってるんだよ データをPull するか、Pushするかは、同じように見えて 全く違う これが理解できないなら、永遠にまともなOOPはできない
609 名前:デフォルトの名無しさん [2015/05/25(月) 12:05:13.15 ID:JYCHMnRj.net] ");
//]]>-->610 名前:6" target="_blank">>>586 オブジェクトにプロパティがあるのはごく自然な振る舞いだと思うよ。 例えばウィンドウ・オブジェクトに背景色プロパティがあっても良い。 背景色を取得したい、背景色を設定したいという要求はごく自然なこと。 背景色を設定したときにはウィンドウの色が変わってほしいので、何らかの 動作が必要になるから、セッターが必要になる。 そして、標準化されない方法で背景色を保持するフィールドにアクセスされては 困るから、フィールドを隠ぺいする必要がある。 その要求によってゲッターの必要が生まれる。 そして、セッターとゲッターを用意すると多くのIDEがサポートしてくれる。 そのほかにも、プロパティを取得された場合にですら、何らかの動作が必要な場合は 考えられるしね。 たとえば、キャッシュ内での優先順位を変更するとか、要求はいくらでも発生する。 [] [ここ壊れてます]
611 名前:デフォルトの名無しさん [2015/05/25(月) 12:10:23.53 ID:JYCHMnRj.net] 433氏は読み物の影響を受けすぎなんじゃないのかな。 最近のウェブ上にある読み物は、極端なことを書いて炎上を狙うから、 あまり影響されないほうが良いと思うよ。 どっかのスレでブリッジパターンについて質問があったけど、そういうのを見て 極端なことを言いだしたんだろうかね。
612 名前:デフォルトの名無しさん [2015/05/25(月) 12:15:49.18 ID:JYCHMnRj.net] ボーランドの言語に有ったプロパティというのは、まさにこのためのもので、 変数にアクセスすると関数が呼び出されるというようなものだったんだよ。 見た目はもう少し洗練されていたけどね。 これはRADのために作られたと思う。 Javaでセッター・ゲッターが明文化されたのはビーンズのためだったので、 これもRADのためだったと考えてよい。 こういった背景を知っていれば、自然に受け入れられるんじゃないかな。
613 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 12:25:09.95 ID:5YOd8wM6.net] 彼が言うにはgetと多態使わないで再利用性は確保しろってこと? それって結構難しいと思うんだが プッシュを基本とした設計だと、インターフェースをうまく使わないとクラス同士が簡単に密結合しまくって 再利用性のかけらもないクラスの糞塊が出来上がる
614 名前:433 [2015/05/25(月) 16:46:25.69 ID:p1p0Nay9.net] >>587 いやいや、 そういうフィールドがあることも否定せんしよ ゲッターセッターのもう1つの役割であるチェック機能だけが欲しい場面もあるだろうよ そうでなくて、 う〜ん Write Only と Read Only だな Write Only を実現したいのにセッターとゲッターを付けやがると問題起すよ、ってことよ
615 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 17:17:57.26 ID:2LXkX4Xr.net] >>589 javaの文法として、そのプロパティがサポートされてないから、ゲッター、セッターというルールを作ったってことだよな。 C言語でOOPがサポートされないけど、ルールを決めてOOPしてる人と一緒だな。 ゆとり世代は言語がサポートしてないとダメだから、新しい言語がいいと言うのかも。
616 名前:デフォルトの名無しさん [2015/05/25(月) 18:45:14.49 ID:Cc4FT8Vv.net] サイゴン陥落の時はひどい目にあったからね。
617 名前:デフォルトの名無しさん [2015/05/26(火) 00:27:06.73 ID:MruFbrRw.net] ★マインドコントロールの手法★ ・沢山の人が偏った意見を一貫して支持する 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法 ・不利な質問をさせなくしたり、不利な質問には答えない、スルーする 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法 偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い 靖国参拝、皇族、国旗国歌、神社神道を嫌うカルト 10人に一人はカルトか外国人 「ガスライティング」で検索を!
618 名前:デフォルトの名無しさん [2015/05/26(火) 00:28:05.25 ID:MruFbrRw.net] ちな 「ガスライティング」は約すると 集スト になるンゴ
619 名前:433 [2015/05/26(火) 07:07:03.31 ID:nLpsmWXi.net] >>590 なんも言語理解力がないんだな チョンなみだよ ゲッターはRO セッターはWO ポリモーフィズムはオブジェクト指向なんかじゃなくて、 コード再利用性が高まる機能の1つ
620 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 10:11:04.72 ID:FJaoXbZH.net] オブジェクト指向の考え方の一つにコードの再利用があって、その考え方を実践するための機能に継承や多態性があるんでしょ?
621 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 19:58:49.52 ID:eiMDqtUU.net] 多態とオブジェクト指向はシミュレーションが主用途だった頃の発明 コード再利用はそれを再発見したドカタのスローガン
622 名前:433 [2015/05/26(火) 20:53:28.97 ID:nLpsmWXi.net] >>598 1行目はよく分からんが、2行目は吹くほど笑
623 名前:った。言い得て妙だね まあ>>597 みたいな奴がまだキリンさんクラスとか動物クラスとか 言っているんだろうけどねぇ [] [ここ壊れてます]
624 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 21:03:09.66 ID:DZ6Zizra.net] 多態による再利用はオブジェクト指向らしい設計を維持するためにも重要だよ 9割共通で1割違うクラスが複数あるときCOBOLみたいにクラスを丸コピぺしたり 猿のように条件分岐するのはオブジェクト指向的ではない
625 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 22:00:54.05 ID:L0L5JUGf.net] 「(犬と人間が来て)哺乳類ならならとりあえず『歩け』っていえば歩くだろ。それぞれがどういう風に歩くかは知らん」 「(LinedListとArrayListがList型変数に渡されて)Listならとりあえずgetって書けば取り出せるだろ。実装がどうなってるかは知らん」 オブジェクト指向=多態ではないけれど、オブジェクト指向の実現方法の一つであることは間違いないよな
626 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 22:15:02.71 ID:DZ6Zizra.net] LinkedListとArrayListが両方Listなのは設計ミスだけどね Listがランダムアクセスをサポートしてるかどうかは実装依存というクソ仕様
627 名前:433 [2015/05/26(火) 22:33:08.26 ID:nLpsmWXi.net] >>601 ちっとばかしシックリこないけど、ほとんどの人がその程度の理解があれば 少しは状況がちがったのかも get より equals の方が例としてはよかったのでは?
628 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 22:36:26.74 ID:aGxSVLPT.net] そんな使い古されたバズワードで議論とは若いのお…
629 名前:433 [2015/05/26(火) 22:40:00.14 ID:nLpsmWXi.net] なんか日本語が変 ちっとばかしシックリこないところもあるけど、 ほとんどの人が、その程度の理解であれば 状況は全然違ったのかも ただ、馬鹿が多いから 「オブジェクト指向の実現方法の一つである」を 「ポリモーフィズムにすりゃオブジェクト指向になるだろ」に 勘違いする
630 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 22:46:16.60 ID:DZ6Zizra.net] と、「カプセル化してりゃオブジェクト指向になるだろ」が持論の方が仰っております
631 名前:433 [2015/05/26(火) 22:51:36.38 ID:nLpsmWXi.net] >>606 そんな馬鹿が社内に居れば、説教部屋行きだなw
632 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 23:15:18.78 ID:UiDv1Vcu.net] >>602 一応RandomAccessインターフェースがあるけどね
633 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 00:43:56.26 ID:Gahj6sEf.net] >>607 あなたにその権限があったとしても、 あなたの教えを受けて考えを変えようと思う方はいません 残念でした
634 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 01:54:55.02 ID:esbmy2lw.net] 本当に多態がOOPに重要と思うなら、君はカプセル化や継承という「枠」を主軸とするもう一つOOPの人だよ そもそも原理主義から見たら、多態なんて概念は瑣末な物だからねえ 受ける相手がいなくても良いんだから
635 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 04:44:13.95 ID:FB4uk7Yf.net] じゃあJavaで継承と多態性を一切使わずにプログラム組んでみろよ 絶対わけわからんことになるから
636 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:06:47.39 ID:Bw6jp1Et.net] コード書いて見せてよ
637 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:44:43.43 ID:esbmy2lw.net] >>611 別にわけわからん事にはならんよ 継承は移譲、多態もキューと分岐で十分 原理主義の方は、型キャストによる多態はしないね たまにそれも多態とか宣う困った人がいるけど
638 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:45:46.73 ID:esbmy2lw.net] 書き換えて欲しいなら元コード出しておくれ
639 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:50:14.28 ID:w5e0eq0t.net] 多態はSimulaの頃からある必須概念だぞ
640 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:50:28.96 ID:esbmy2lw.net] すまん、やっぱり何書いても突っ込まれそうだからやめる
641 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:51:48.26 ID:esbmy2lw.net] >>615 Simulaにおいてもタイプシステム上の概念だよ 型が前提
642 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 06:57:34.51 ID:w5e0eq0t.net] 多態というのが君の中でどう定義されてるのかは知らないが、 一般的に多態というと一つの操作に対し複数の
643 名前:型の実装が呼び出されることをいう 型ベースかダックタイピングかなんて本質的でない区別はしないよ [] [ここ壊れてます]
644 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:04:55.95 ID:esbmy2lw.net] そういうタイプシステムで、動的バインディングするのが多態で オブジェクト指向を提唱した人が言ってたのは、もっと上位の概念 アクターモデルとかの話で、源流のOOPではないんだよ
645 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:10:40.70 ID:w5e0eq0t.net] で、>>611 のいう継承と多態性にいつ「OOP原理主義における」の条件が付いたんだ? 少なくともJavaでの一般的な言葉においては、多態の実装には継承かインターフェースかリフレクションが必須
646 名前:616 mailto:sage [2015/05/27(水) 07:11:21.47 ID:w5e0eq0t.net] すまん訂正 多態の実装には→移譲の実装には
647 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:14:19.07 ID:esbmy2lw.net] >>620 その制約って多態の実装をせずに多態を実装しろって矛盾した話でしょ? 何言ってるんだか
648 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:16:09.21 ID:esbmy2lw.net] 移譲の実装にはどれも要らないよ やってみせようか?
649 名前:616 mailto:sage [2015/05/27(水) 07:19:07.89 ID:w5e0eq0t.net] ああ移譲って単に直接別のクラスのメソッドの実装を呼び出すことを言ってたのか 移譲で継承を代替できるから多態は不要という意味不明な話かと勘違いしてたわ、すまん
650 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:56:47.91 ID:FB4uk7Yf.net] >>613 それコード長くならない? オブジェクト指向プログラミングの目的の1つにコード短くするためっていうのがあるけど
651 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 07:59:04.16 ID:RZsA/U1h.net] Javaではclassを宣言しなければプログラムは書けない。 classを宣言するとjava.lang.Object classが必ず継承される。 終了。
652 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 08:05:20.08 ID:FZwjLvvv.net] >>626 Java8ならw ideone.com/yuBUHb interface Main { public static void main (String[] args) { System.out.println("ぬるぽ"); } }
653 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 08:23:17.86 ID:esbmy2lw.net] >>625 長くはなるかもしれないけど、どちらのOOPも短くするなんて目的はないと思う それより1つもあらゆる動的バインディングを伴わないという制約は 完全に密結合になるし、今時の大規模開発では無理だね それでも構造化は十二分にできるから、「わけわからない」とはならないよ
654 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 08:25:02.92 ID:esbmy2lw.net] >>626 はいはい そう言う屁理屈いう奴絶対出ると思った
655 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 13:47:09.46 ID:kpUvErGB.net] >>625 コード短くするためってのはないよ シンプルにすることはあっても短くすることは目的じゃない わかりにくくなったら保守性も下がるし意味がない 変数名やメソッド名はむしろ昔より長くなってるでしょ
656 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 19:24:45.82 ID:LZL2gy1L.net] Twitter4jを使って特定のアカウントが凍結されているか確認する方法はないですかね? 迷惑垢拡散アカウントと持っているので拡散した垢が凍結されているかを確認したいです。
657 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 21:01:57.94 ID:w5e0eq0t.net] >>631 Twitter4jじゃなくて本家のREST APIのドキュメントを読め そこに無ければ無いしあるなら直接それ使えばいい
658 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 02:29:42.27 ID:uibzkFZp.net] >>602 どういうこと?ランダムアクセスってインデックスによるアクセスってこと?それなら、LinkedListも内部トラバースするけどインデックスアクセスできるっぽいけど
659 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 04:06:57.38 ID:tKwlXHJ9.net] ↓これマジ? techtarget.itmedia.co.jp/tt/news/1505/08/news03.html >パッチ未適用率が約8割のバージョンもJavaは“最も危険なソフトウェア”
660 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 04:09:22.28 ID:7nXufysT.net] いろいろなオブジェクト指向言語のお手本になってるSmalltalkでも
661 名前:継承はあるじゃない C++だって継承がある 継承の機能のないオブジェクト指向言語の方がすくない 継承がなくて委譲で継承のようなことやるってGo言語使いかな? [] [ここ壊れてます]
662 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 05:13:26.64 ID:tv7QNGPA.net] >>635 Smalltalkは別だよ C++と一緒にしてる時点で知らないと言ってるようなもん 簡単に言うとJavaScriptのような継承
663 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 06:07:52.40 ID:8cEiN+lf.net] >>633 LinkedListのgetは毎回先頭から要素を舐めるので、うっかり for (int i = 0; i < list.size(); i++) list.get(i); なんてことをやろうものならO(N^2)だ 仮にアプリの作りがまずくて、アプリへの要求の仕方によって 悪い奴が意図的にこのクソ重いループを実行させる方法があるなら、 アプリのDoS脆弱性と言われても仕方ないレベル
664 名前:デフォルトの名無しさん [2015/05/28(木) 07:45:57.12 ID:/AhuPFHmC] 多相性には部分型多相しかないと思ってるバカどもの迷子センターになってるな
665 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 10:01:39.86 ID:DciKDkXU.net] >>637 最近おぼえたんでちゅか? すごいでちゅねー
666 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 17:55:54.70 ID:r2p1JjMc.net] テキストエリアでwin標準?のポップアップメニュー(Janeのメモ欄で右クリックしたら出てくる奴)を使う事できないの?
667 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 17:57:14.08 ID:8cEiN+lf.net] さっさとSWTに乗り換えましょう
668 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 19:55:35.42 ID:yXcYN23r.net] >637 ArrayListにもデメリットがあること、用途に応じて使用するリストを選ぶべきことまで踏まえた上で「LinkedListはクソ」って言ってる? 昨今のハードの高性能化もあってほとんどのケースでArrayListで事足りるってだけで、LinkedListにはそれなりの使い道もあるんだけど ランダムアクセスできて、要素の削除やリストサイズの拡張にコストがかからなくて、メモリも最小限しか使用しないリストの実装があると言うのなら是非紹介して欲しい つーかLinkedListって、いわゆる「リスト」の構造に最も忠実だと思うんだが。どちらかと言えばArrayListの方がイレギュラー
669 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 20:18:32.34 ID:8cEiN+lf.net] >>642 「LinkedListはクソ」じゃなくてインターフェイスの設計が間違ってると言ってるんだよ。 ただList<T>を受け取っても、それがgetを(実用的に)サポートしてるかどうかは型チェックしてみないとわからない。 オブジェクト指向の設計として明らかに破綻している。 そりゃあまり重要でない性質ならわざわざ型で区別しないことも多いけど、 「インデックスによるランダムアクセスをサポートしているかどうか」というのはコレクションにとって極めて重要な性質。 それに対して、IterableやCollectionになくてListにあり、かつ実装依存でない性質って 「要素を順方向、逆方向に辿れる」だけ。そんなの、ランダムアクセスの可否に比べればほとんど役に立たない。 ちなみに後発の.NETではその失敗からListはランダムアクセスのためのインターフェイスと定義され、 LinkedListはListを実装しない。
670 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 20:48:02.43 ID:r2p1JjMc.net] (L)GPLライブラリってとりあえずソース公開すればいいの?
671 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 20:59:07.97 ID:yXcYN23r.net] >>643 いやいやいや、Listの下にRandomAccessListインターフェースを作れって話なら分かるけど、 最も抽象的な概念であるListにランダムアクセスを強要しろってのはねーわ。何のための抽象化? LinkedListがListを継承しないってことは、それこそ君の言うようなDoS脆弱性()が発覚した時にさあLinkedListからArrayListに変えましょうってなったとき、
672 名前:ロ々ソースを書き変えなきゃいけなくなるわけだけど。概念的な機能が同一のものを同一に扱わないってのはそれこそオブジェクト指向的じゃないでしょ [] [ここ壊れてます]
673 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:00:57.98 ID:Yt09KnaV.net] 屑哲とは何ですか
674 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:19:05.95 ID:8cEiN+lf.net] >>645 で、実際ListIteratorを使ったことある?
675 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:30:16.79 ID:yXcYN23r.net] >>645 Iteratorは使ったことあるけど、それがどうした? 「順次にアクセスしたいときはArrayListにIterator使えばいい」とでも言うのか? IteratorとListは全く別のものだし何が言いたいのか分からんわ
676 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:36:29.41 ID:8cEiN+lf.net] ListIteratorはIteratorは別のもので、Listをリスト足らしめている根源なんだけど、 そんなことも知らないでListの概念云々言ってたの?
677 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:43:15.77 ID:DciKDkXU.net] バカ過ぎる
678 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:44:00.41 ID:yXcYN23r.net] >ListIteratorはIteratorは別のもので、Listをリスト足らしめている根源なんだけど、 え?じゃあListIteratorを取得可能なLinkledListはリスト以外の何物でも無いじゃん…
679 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 21:53:47.84 ID:8cEiN+lf.net] >>651 そうだよ。だからListIteratorを使ったことがあるかと聞いてるの。 ないならgetの付いたCollectionとしてしかListを使っていないことになるから、 即ちランダムアクセスのできないListには意味がないということ。 とはいえ実際にはCollectionsの各種アルゴリズムの実装などでListIteratorは内部的に活用されてるので、 決して意味がないわけではないんだけどね。 ただ程度問題として、比較的使用頻度の低いリンクリストのために多くのユーザーにとっての利便性を非常に大きく損なう設計にするのは 適切だろうか、ということ。 Javaが内部的に使ってるだけなら結局Oracleが頑張ればいいだけだしね。
680 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:00:23.19 ID:yoCp6Uc+.net] ここでグダグダJavaの設計について言うのは適切じゃないと思うけどな
681 名前:デフォルトの名無しさん [2015/05/28(木) 22:04:44.84 ID:+ywrUonY.net] >>653 そうだな。 pbs.twimg.com/media/CFrlOXAUgAAE8p2.jpg
682 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:09:54.26 ID:yXcYN23r.net] >ないならgetの付いたCollectionとしてしかListを使っていないことになるから、 >即ちランダムアクセスのできないListには意味がないということ。 そういう結論が出るに至る過程が全く分からんな、バカだから。 CollectionにもIterableにもgetが無い以上、getがあることには意味があるとしか思えんわ。 ランダムアクセスできるかどうかってようはパフォーマンスの問題であって、機能の問題ではないだろ? 「バブルソートはオーダーが高いからソートアルゴリズムとして扱うな(そっちの方がユーザにとって利便性が高い)」って言ってるようにしか見えんわ
683 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:16:25.52 ID:yXcYN23r.net] それと、百歩譲って「Listはランダムアクセスをサポートすべき」だとしても、それが中間的なインターフェースによる実現(RandomAccessInterfaceの実現)ではだめで、 LinkedListをListから外すしかない理由を説明してくれ。
684 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:18:43.06 ID:8cEiN+lf.net] >>655 いや、パフォーマンスを問題にしないならそもそもLinkedListなんて必要ないじゃん… 「LinkedListは必要である」という前提で話をする以上、パフォーマンスは無視できないよ
685 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:19:41.55 ID:58xt6n/s.net] おい、馬鹿 おのれは言いたいことを一レスにまとめるということができんのか アスペルガーじゃあるまいし、無駄にスレ消費すんな
686 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:26:26.57 ID:yXcYN23r.net] >>657 パフォーマンスを「リストと言うデータ構造」に対して保証する必要があるのか?って話なんだけど LinkedListはデータ構造としてのリストの機能を十分に満たしてるよね? それパフォーマンスを問題にしないなら「LinkedListが」必要でなくなる理由は? パフォーマンス一切無視ならランダムアクセスするリストも連結リストも等価だよね?
687 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:40:21.15 ID:8cEiN+lf.net] >>659 関数型ならともかく、普通Javaみたいな言語で特にパフォーマンス気にしないときとりあえずArrayList使うでしょ。 あえてLinkedListを使うのは特にパフォーマンスを意識している場合だろ? その作法はパフォーマンスの面でも正しい。 なぜなら、一般的には連続
688 名前:アクセスや最後への追加削除と比較して、途中への挿入削除の頻度は低いから。 もしどっちかに統一するとすれば、全体としてはArrayListの方が間違いなく速い。どちらか選ぶなら答えは明らか。 [] [ここ壊れてます]
689 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 22:54:10.73 ID:8cEiN+lf.net] つまりLinkedListを使うときっていうのは、 そのアクセス効率の悪さ(getは論外だけど、Iteratorも遅いよ)やメモリ使用量の多さ、GCへの負担を受け入れてもなお メリットがあるほど挿入削除が多いことがわかっている場合というわけ。 それほどまでにパフォーマンスに配慮しながらgetは気にしないなんてありえないよね?
690 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 23:03:15.36 ID:yXcYN23r.net] >>660-661 ほとんどの場合においてArrayListを使えば事足りると言うのはその通りだし、LinkedListの用途についても俺もその認識だ。 しかしその答えから「Listはランダムアクセスを保証すべき(LinkedListはListに含まれないべき)」理由が俺には分からないし、 >もしどっちかに統一するとすれば、全体としてはArrayListの方が間違いなく速い。どちらか選ぶなら答えは明らか これは『どちらかしか使えなくなるとしたら』ArrayListにした方が上手くいくという話であって、「パフォーマンスを一切考慮しないなら」ArrayListにすべき理由じゃない。 たぶん言葉の認識の違いだと思うんだが、俺は「パフォーマンスを一切考慮しない」というのを入力に対する出力(そのプログラムが持つ機能、用途)しか考慮しないという意味で発言してる。 そして俺は機能が全く同じなら同じクラス・インターフェースにまとめるべきだと思う。よって俺にはLinkedListとArrayListは同じListとして考える方が自然だとしか思えない。(それを使うかどうかはまた別) パフォーマンスが違っても用途が同じものを敢えて置換できないようにする意味はどこにあるんだ?
691 名前:デフォルトの名無しさん [2015/05/28(木) 23:18:19.94 ID:bXGZB0T7.net] IDEのコード補完でクラスをインポートするときに JDKに同じ名前のクラスがあるとうっとうしい Java9のモジュールシステムでjava.awt.Listとか クラスパスから除外できるようになりますか?
692 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 23:20:27.08 ID:+atrdthn.net] gnu class path は今はどうなっているの?
693 名前:デフォルトの名無しさん mailto:sage [2015/05/28(木) 23:53:09.70 ID:tv7QNGPA.net] 横槍ですまない >>662 >そして俺は機能が全く同じなら同じクラス・インターフェースにまとめるべきだと思う。よって俺にはLinkedListとArrayListは同じListとして考える方が自然だとしか思えない。(それを使うかどうかはまた別) おっしゃる通り、プログラマがListと言う時はLinkedListを指すのだから、 その話しぶりでは、設計は間違いだが変更は不可、って結論じゃなきゃおかしいよ それとこの手の後付の共通化を受け入れる人が多いが、これ間違いと思う 「異なる物を同一のものとして扱う」という概念への誤謬 同じ粒度の異なる物を別の抽象に無理に合わせても、 インターフェース以外の中身はその抽象には程遠い 本来は一つ下の粒度の物を適切に使い、抽象に合う物を組み立てなおすべき 極端に言えば、アダプタパターンは悪い妥協、かつアンチパターンだと思う
694 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 00:53:09.71 ID:itAy1lMg.net] 見ず知らずの人たち相手にOOPについて議論するとどんなメリットがあるの?議論することそのものを楽しんでいるだけ?
695 名前:デフォルトの名無しさん [2015/05/29(金) 01:51:22.68 ID:xnuOOQOC.net] ツリーイテレータは無いのだろうか。
696 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 03:56:18.50 ID:e13wdj/j.net] やり取りできるメッセージ(インタフェース)が一緒でも、性能が違ったら同じインタフェースにするべきでないって話? それ、実装が違えば性能違って当たり前なんだから、インタフェースの意味ないね。 大きく違うからとか、主観の話かな。
697 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 04:07:17.19 ID:AdYurFH0.net] >>602 言いたいことはわからんでもないけど > 両方Listなのは設計ミス は言い過ぎだろ Listがget(int)を持つのは、順序付けられたCollectionだからだよ Listの要素は順序を持つ だからn番目の要素にアクセスするメソッドがある 逆にCollectionにgetが無いのは順番を
698 名前:K定しないから [] [ここ壊れてます]
699 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 04:33:38.32 ID:JPuBr0K9.net] 初心者なんだけど、ArrayListとLinkedListって、addやremoveしまくりたいときはLinked使って、getしまくりたいときはArrayを使うって覚えてたんだけど、違ったの?
700 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 07:09:05.85 ID:GbyQSdJL.net] >>670 間違い ほとんど全ての場合でArrayListの方が性能が良いので、基本的にLinkedListは使わず常にArrayListを使う。 どうしてもボトルネックになってるコレクション操作の箇所がある→どうやら途中への挿入or削除が原因のようだ →LinkedListに変えてみたら解消した これだけでいい
701 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 07:13:21.03 ID:g6fbSoL/.net] >>668 同じ操作になるから意味はあるよ いくら実装が違うからと言って、モデリングが間違ってたら駄目だって事さ 無理やり共通化するのを良しとすると、極論的に正常動作でなくても、 インターフェースさえ付いてれば良い事になってしまう
702 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 07:24:06.99 ID:GbyQSdJL.net] 単純に、利用者のミスを生みやすい設計はよくないって話だよな Mapが渡ってきたらgetは直感的にO(1)、遅くてもO(log(N))くらいだと期待するだろ? Map#getよりも一見処理の軽そうなList#getがO(N)になりうるのは直感に反する
703 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 12:13:40.31 ID:RzAd5Uvp.net] LinkedListってListIterator使わないなら途中への挿入削除は結局検索のせいでO(N)なので オーダー的にArrayListより速いといえるのは先頭への追加削除だけという間抜けな設計なんだよね ListIteratorはリストが変更されると無効になるからカーソルとして保持するのはやりたくないし ListIteratorのアイデアに固執せず単純にListNodeを公開してくれるだけでよかったのにな
704 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 13:50:34.41 ID:2KbtQEek.net] 初歩的なことですいません。 import javax.bluetooth.LocalDevice; これをeclipseで記述すると赤線でエラーになるのですが 何が足りなくてどう記述すればよいのでしょうか?
705 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 14:14:27.92 ID:2KbtQEek.net] 自己解決しました。
706 名前:デフォルトの名無しさん [2015/05/29(金) 14:16:56.43 ID:AQuaH7cx.net] synchronizeについて教えてください。下記のコードでメソッドにsynchronizedを行っていますが、 変数mapは排他がかかるでしょうか?それともメソッドにsynchronizedを行ってもダメで変数mapそのものにsynchronizedするべきでしょうか? ※前提条件 ・getData()は外部のスレッドから一定周期で呼ばれる。 ・setData()は内部のスレッド(SubThread)から一定周期で呼ばれる。 public class Common{ private HashMap<String,String> map = new HashMap<String,String>(); public static void main(String args[]){ SubThread sub = new SubThread(); } public synchronized HashMap<String,String> getData() { return map; } private synchronized void setData(String data1, String data2) { map.put(data1,data2); } private class SubThread extends Thread{ String strData1 = "Data1"; String strData2 = "Data2"; public void run(){ setData(strData1,strData2); } } }
707 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 14:36:16.58 ID:e13wdj/j.net] >>672 そういうことじゃない。 実装ごとにわけるのなら、抽象化はされず、1実装に1インタフェースとなる。
708 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 14:46:16.67 ID:GbyQSdJL.net] >>677 getDataがmapを晒すと外から自由に排他なしでアクセスできてしまうからダメ 排他云々以前にコレクションをクラス外にそのまま出すのはpublicフィールド晒してるようなもんだから、 getDataは引数にキーを受け取って値を返す仕様にするべき それならそのコードの排他は正しく機能する
709 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 16:01:19.97 ID:b5ZezYht.net] Java初心者です。 jarファイ
710 名前:汲フexe化がうまく行きませんのでお知恵を拝借したいです。 exewrapでjarファイルをexe化しようとすると、 "Native executable java application wrapper.は動作を停止しました"とダイアログが表示されて途中で止まってしまいます。 jsmoothも試してみたのですが、"Saving exe..."のステップから進まなくなります。 jarファイル単体では普通に動作するのですが、これはjarの中身になにか問題があるのでしょうか? OSはVista、Javaはバージョン8、notepad++で書いております。 [] [ここ壊れてます]
711 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 20:11:51.79 ID:RfzJ1xHR.net] iniファイル解析クラス作ってみました。アドバイスお願いします。 notepad.cc/share/dObqHTeIJ8
712 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 20:20:52.35 ID:/O9WcZmT.net] >>681 せっかく正規表現使ってるんだからキャプチャ使えばいい
713 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 20:52:10.88 ID:RfzJ1xHR.net] キャプチャって何ですか?
714 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 21:02:39.74 ID:qddcoV7p.net] そもそもパフォーマンスを保証したいならListでアップキャストせず、ArrayListで受け取ればいいだけの話 そのうちObject型にも文句付けそう
715 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 21:41:30.09 ID:vNf0wM8U.net] >>681 iniフィアルなら、セクションに対応する必要があるよ
716 名前: ◆QZaw55cn4c mailto:sage [2015/05/29(金) 21:41:32.94 ID:bTG2Z02M.net] >>667 C++でイテレータパターンの演習にとトライしてみたが、なかなかうまく形にならない‥
717 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 21:43:27.41 ID:bTG2Z02M.net] 連続領域を必要とする ArrayList は嫌われものだと思っていたのだが、ここでは一択なんだね 今まで間違った感覚を持っていたのかな
718 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 00:02:38.75 ID:IDV5NAFV.net] ArrayListの全要素を取得するのには、forか簡易forかイテレータを使う方法があると覚えたのですが、実際の場面ではどれを使うのがいいのですか?
719 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 00:38:07.46 ID:86ur7FpL.net] foreach
720 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 01:43:50.24 ID:+/L2wu74.net] >>678 どう読み間違えたらそうなるんだよ 例えばインターフェースに期待される要件があるとして、 実装はそれを満たさなくても、言語だけの制限では型にあわせる事だけはできる けど、それは設計的には間違いでしょ
721 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 07:18:40.89 ID:y5cl7Y1T.net] >>687 たかが要素数×8バイトの配列が問題になるような状況なら LinkedListのメモリ使用量の多さやトラバースの遅さや 小さいオブジェクトが大量発生することによるGCへの悪影響の方が先に問題になるだろ
722 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 10:34:51.84 ID:rQC0QNS1.net] >>690 勝手に期待してるの?
723 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 11:07:57.30 ID:E4+c+dv0.net] メソッドの戻り値に複数の値を定義したくて class Ref<T>{ private T val=null; public void set(T t){val=t;} public T get(){return val;} } このようなクラスを作りました。 メソッドの定義はこんな感じで、intを一つ渡すとstringとobjectがrefStringとrefAnyにセットされます public hoge(int i,Ref<String> refString,Ref<Object> refAny){} 使うときは Ref<String> resultStr=new Ref<String>(); Ref<Object> resultObj=new Ref<Object>(); hoge(100,resultStr,resultObj); で、 resultStr.get();resultObj.get();と値を取得します。 この様なクラスってjavaの標準クラスの中にありますでしょうか? また、このような書き方に何か問題はありますでしょうか。 c#のref構文が便利すぎて真似したのですが、javaでは需要が少ないのでしょうか
724 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 11:49:23.42 ID:K6Aqd4ey.net] >>6
725 名前:93 なかったはず。 自前で作るのが面倒ならジェネリクスと相性悪いけど配列使うとか、 目的外使用になっちゃうけどjava.util.concurrent.atomic.AtomicReference<V>使うとか。 [] [ここ壊れてます]
726 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 15:14:42.98 ID:SAlWoYO0.net] MP3の長さ取得を簡単にする方法ありませんかね?
727 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 17:34:09.91 ID:aOrY5qKq.net] >>691 あらかじめ適切な長さがわからない状況で、再配置、再配置が繰り返されるのもどうかと思うが
728 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 17:48:26.36 ID:+/L2wu74.net] >>692 お前さ否定のためだけにレスするのやめてくれない? もしかしてマーカーインタフェースとか知らないのか?
729 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 18:57:58.78 ID:rQC0QNS1.net] >>697 煽るだけのレスやめてくんない?
730 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 23:02:53.24 ID:+/L2wu74.net] >>698 いやだからマーカーインタフェースとか知らないの?
731 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 00:58:56.72 ID:Tte5i/+4.net] >>699 Listと何の関係が
732 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 00:59:41.83 ID:Tte5i/+4.net] 的外れの揚げ足取りが来るんだろうな
733 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 03:06:40.58 ID:gPOjvzR+.net] >>701 元の人がListIteratorを生成するListじゃ、 一般的なリスト構造を期待するという流れで、こういう主張をしてるの というかさ、なんでそう被害妄想的なの? 俺別に揚げ足取りしてないでしょ?
734 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 03:44:40.52 ID:gPOjvzR+.net] >>700-701 勝手に同じ人として話進めるからね >やり取りできるメッセージ(インタフェース)が一緒でも、性能が違ったら同じインタフェースにするべきでないって話? >それ、実装が違えば性能違って当たり前なんだから、インタフェースの意味ないね。 >大きく違うからとか、主観の話かな。 これはマーカーインターフェースの存在で否定される >実装ごとにわけるのなら、抽象化はされず、1実装に1インタフェースとなる。 こちらは実装を誤解のないよう、適切にIFに分離抽象化しろと言ってるだけで、 極端に突き詰めたインターフェースしか必要ない、という主張ではない 反論になっていないと思うよ >Listと何の関係が マーカーは言語機能的には名前だけで実装や仕様を縛る物 要するにパフォーマンス要件で分けてる
735 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 03:51:28.41 ID:gPOjvzR+.net] 編集途中で送信してしまった 要するに実装で分けるインターフェースを抽象化したもの RandomAccessなどはパフォーマンス要件で分けてる
736 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 04:28:59.96 ID:Tte5i/+4.net] >>703 自分で作れよ
737 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 04:35:01.10 ID:gPOjvzR+.net] >>705 そうだね自分で作ってもいいね で内容は同意できたの?
738 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 04:57:06.98 ID:y0vichKB.net] そういうことをしたければ、インターフェースではなくテンプレートライブラリだよね
739 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 05:20:35.98 ID:gPOjvzR+.net] >>707 できれば説明を頂きたい Javaでの実例もあれば是非
740 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 09:05:41.55 ID:y0vichKB.net] >>708 C++
741 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 09:08:59.44 ID:gPOjvzR+.net] >>709 C++テンプレートは構造的サブタイピングなだけで インターフェースはあるよ というかその程度だとミックスインかブリッジかストラテジパタンーンで十分では
742 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 09:23:00.74 ID:gPOjvzR+.net] 語弊があったので訂正 ここで言ってるインターフェースというのは Javaとほぼ同等な純粋仮想クラスという意味じゃなく、 テンプレートプログラミングにおいて同等な位置の型クラスというような意味です あとパターンねパターン
743 名前:デフォルトの名無しさん [2015/05/31(日) 10:43:59.62 ID:XhIDATDmg] 下の実行例のようなプログラムを組みたいんですがエラーが出てコンパイル通りません、Arrays.sort(array);あたりが間違っている、と出ます */ import java.util.*; public class q12146166122 { public static void main(String[] args) { try { if(args.length != 3) { throw new IllegalArgumentException(); } int[] array = new int[args.length]; for(int i = 0; i < array.length; ++i) {
744 名前:array[i] = Integer.parseInt(args[i]); } Arrays.sort(array); // System.out.println(Arrays.toString(array)); System.out.printf("min=%d max=%d\n", array[0], array[array.length - 1]); } catch(NumberFormatException e) { System.err.println("ちゃんと整数を入力してください"); } catch(IllegalArgumentException e) { System.err.println("コマンドライン引数の数は3つにしてください"); } } } [] [ここ壊れてます]
745 名前:デフォルトの名無しさん [2015/05/31(日) 10:44:27.66 ID:XhIDATDmg] >>712 実行例 // javac q12146166122.java&&java $_:r 3 1 2 // min=1 max=3 // javac q12146166122.java&&java $_:r 3 1 // コマンドライン引数の数は3つにしてください // javac q12146166122.java&&java $_:r 3 1 2 4 // コマンドライン引数の数は3つにしてください // javac q12146166122.java&&java $_:r 3 1 a // ちゃんと整数を入力してください // javac q12146166122.java&&java $_:r 3 1 3.4 // ちゃんと整数を入力してください
746 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 11:24:50.71 ID:rPrQit5P.net] 学生で実務経験がなく本で勉強してるから 理屈はわかるけど存在意義がわからないものがある インターフェースと抽象クラスって座学で勉強する分には 違いがよくわからないけど実際の案件ではどういうところで使い分けるの? それがわからないからピンとこないのよな・・・
747 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 11:29:41.49 ID:y0vichKB.net] >>714 たしかに使い分けや適用はわからないな‥どちらもそのままでは実体をつくれないし 純粋仮想関数のみのクラスと純粋仮想関数・実体が混在したクラスか
748 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 12:26:14.56 ID:bzJLQWqx.net] java の場合 interface は多重継承できる 結局メモリ効率とかその辺になるんじゃない
749 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:11:26.75 ID:gPOjvzR+.net] 抽象クラスって教科書?的にはテンプレートメソッドパターンで使うけど インターフェース作って、newの時にその部分だけ委譲したほうが良い設計な気がする というか本当は要らないんじゃ…
750 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:25:27.97 ID:Tte5i/+4.net] >>706 自分の設計方針に合わないからと駄々をこねるのは同意できない。
751 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:27:46.68 ID:gPOjvzR+.net] View関連クラスなど、上書き必須のメソッドAと、 同カテゴリだが必要に応じ使用者に上書きさせたいメソッドBを、 1つのモデル(オブジェクト)に同時に入れたい この場合インターフェースでAの実装を分けると、 Bも上書きしたい場合に煩雑になるので、抽象クラスを使うべきだろう というか、そういう物以外で使った覚えがない
752 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:29:21.13 ID:gPOjvzR+.net] >>718 いえ、別に変える事を強制してるわけじゃなくて、 間違ってるよねと言ってるだけですので…
753 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:46:47.12 ID:Tte5i/+4.net] >>720 標準的なものが偏った考えのための 濫用を避けるのは間違っていない。
754 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:51:28.34 ID:gPOjvzR+.net] >>721 先程から具体性が全く無く、おっしゃってる意味がよくわかりませんね というかレスを真面目に読む気も、まともに反論する気もないようですし、 レスしなくていいですよ? 私は飽くまで納得できる回答が欲しいだけで、同意が欲しい訳じゃないので
755 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 15:59:44.04 ID:gPOjvzR+.net] 一応再度説明しますが、主にインターフェースには適切なモデルが必要という主張 Listも間違ってる例であり、その理由は元の主張の人がおっしゃるように、 ListIteratorとListのgetメソッドの二者で相反する性能です
756 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 16:08:17.11 ID:gPOjvzR+.net] つか元の人の話は円満に終わってるからもう良いや… まともな回答用意してくれないだろうし
757 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 16:29:10.77 ID:q5PmTIh8.net] 間違ってるならJavaから削除されてるだろ Javaにあるということは間違ってないということだ
758 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 18:10:08.48 ID:Tte5i/+4.net] >>722 理解できない奴に設計どうこう言われるとはw
759 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 18:11:54.87 ID:0vVDnOAL.net] >>725 ・Vector, Hashtable ・java.util.Date ・ジェネリクス 間違ったままになってる例なんていくらでもあるぞ
760 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 20:28:04
] [ここ壊れてます]
761 名前:.67 ID:G3SfhU6W.net mailto: Apache HttpComponentsについてなんだけど、全機能の使い方のドキュメントってのは基本的に無いの? 例えばhttpmime-4.4.1.jarについて、ソースコードを落としてパッケージ名でApache HttpComponentsをgrepしてもどこからもimportされていない じゃあこれはどういう時に使うんだ?とググったらこのページがあって http://qiita.com/tomoima525/items/8e77c4cfe51339974545 処理の流れを追いかけてみたら、httpcore-4.4.1.jarの中にあるHttpEntityクラスを継承したクラスを返しているらしい。 つまりHttpEntityクラスを作るのをサポートしてくれるクラスだと理解したんだけど、この情報はどこから調べればいいのかが分からない。 公式のチュートリアルを見ても https://hc.apache.org/httpcomponents-core-ga/tutorial/html/ https://hc.apache.org/httpcomponents-client-ga/tutorial/html/ 一切の記載が無い(MultipartEntityBuilder でgrepした) javadocを見ても何も書いてないし、これはソースコードを読んで自力で理解するのが当然という事でしょうか? [] [ここ壊れてます]
762 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 21:27:34.05 ID:qPV1YjTV.net] >>728 httpについて勉強したら
763 名前:デフォルトの名無しさん mailto:sage [2015/05/31(日) 23:24:03.26 ID:PJ1dRWj9.net] プロトコルと通信そのものについて理解すればよい 最近のブラウザは通信内容をログで見られるからそれを見ると理解が早まるかも
764 名前:>>690 mailto:sage [2015/06/01(月) 11:51:32.31 ID:f2uABRUu.net] MP3の長さを取得する方法を教えて下さい。
765 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 14:51:25.42 ID:TPGCWh32.net] >>731 何で 「Java mp3 長さ」 とかで検索できないの?
766 名前:>>690 mailto:sage [2015/06/01(月) 16:14:38.08 ID:f2uABRUu.net] >>732 検索したけど分かりませんでした。
767 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 16:22:51.05 ID:UMivpJmj.net] >>733 検索語句をいろいろかえてアプローチしてみよう java mp3 time では出てきたよ
768 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 17:19:02.91 ID:kvym0ZUW.net] java mp3 再生時間 取得でも一発だった
769 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 20:36:41.31 ID:vvPoWr//.net] もしかしたらバイト配列の長さかもしれない
770 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 21:40:22.35 ID:11G427ei.net] 常に3かも知れない。
771 名前:デフォルトの名無しさん mailto:sage [2015/06/01(月) 21:45:29.00 ID:vlY8tlqp.net] >>737 つまり "mp3".length() ということか
772 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 09:24:07.48 ID:YqHMc328.net] 例外の勉強を始めました NullPointerExceptionをわざと発生させるために String s = null; System.out.println(s); と書きましたが、実行結果は null と表示されてしまいました。 今度は String s = null; System.out.println(s.toString()); と書くと、ちゃんとNullPointerExceptionと表示されました。 System.out.println(s);で表示されたnullは、"null"という文字列が表示されたんですか? 何故toString()を付けないとNullPointerExceptionは発生しないんですか?
773 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 09:31:15.60 ID:TiVQHj6x.net] >>739 ガッ 上の場合 System.out.printlnの中でnullチェックしていて、nullの場合"null"を出力している。 下の場合 s.toString()を呼び出した段階でぬるぽが発生している。
774 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 10:09:05.64 ID:fY8oKJUs.net] >>740 ありがとうございます 引数に指定するだけなら問題ないけど、nullが入っている参照型変数のメソッドを呼び出そうとするとまずいんですね
775 名前:デフォルトの名無しさん [2015/06/02(火) 14:18:28.86 ID:ielQg8IH.net] >>741 いや、そのメソッドがnullのときに文字列に変換するロジックが入っているだけ。 Javaの標準ライブラリの仕様かどうかは知らん。
776 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 14:47:38.88 ID:TCITNRhQ.net] >>741 メソッドの
777 名前:引数にnullを許すかはメソッド毎に違う 多くのメソッドはnullが入るとヌルポになるし、ならないものはnullが入ったときの振る舞いの規定が書かれている [] [ここ壊れてます]
778 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 16:11:44.60 ID:OqEOh02c.net] いやまあ言いたい事は合ってる nullそのものに罪はないから引数で渡すのは問題ない 問題あるのはその引数がnullである事をチェックせずにメソッド呼び出しとかしようとした場合 nullってのは実態が無い事を意味するから実態の無い物のメソッドなんて呼び出せないからね
779 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 20:04:20.98 ID:33LBbjfE.net] ところがC++では null でメソッドが呼び出せるのであった‥
780 名前:デフォルトの名無しさん [2015/06/02(火) 20:05:47.28 ID:FpmGmufg.net] インターフェイスと抽象クラスの違いが分からん 誰か教えて
781 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 20:51:25.92 ID:0JJIk5xr.net] >>744 チェックして throw new NullPointerException することもあるけど。 IllegalArgumentか何かの方が適切という意見はあるだろう。
782 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 20:52:35.67 ID:0JJIk5xr.net] >>746 インタフェース 設計図 抽象クラス 作りかけ
783 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 20:55:09.79 ID:YQCK7f5I.net] >>746 インターフェースとクラス
784 名前:デフォルトの名無しさん mailto:sage [2015/06/02(火) 21:58:07.96 ID:f+1+rqjd.net] >>746 インターフェース:「ある特定のメソッド名・引数を持つメソッドを持っていること」しか保証できない。多重継承可能 抽象クラス:new出来ないことを除けば普通のクラスとほぼ同じ。メソッドを実装することができるしフィールドも持つことができる。クラスなので多重継承はできない たとえば、呼び出すと標準出力に"a"と表示するprintA()メソッドをインターフェースと抽象クラスに持たせるとすると、 インターフェースでは本当に"a"が表示されるかどうかは実装者任せにするのしかないのに対して、 抽象クラスなら"a"を表示するような実装を書いてfinalを付ければ"a"を表示することを保証できる。 機能拡張を許したいならfinalを付けることはできなくなるから、結局実装者任せになってしまうが
785 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 00:23:54.45 ID:QMuypoEX.net] よくわかんないなら常にインターフェースでいいよ オーバーライドは一切使わなくていい 抽象クラスはクラスの実装を楽にするためのテンプレートみたいなもんと思えばいい デザイン的にはインターフェイスほど重要なものではない
786 名前:デフォルトの名無しさん [2015/06/03(水) 00:54:53.65 ID:JJjq3/2D.net] >>748 >>749 >>750 >>751 サンクス ID変わったけど739
787 名前:デフォルトの名無しさん [2015/06/03(水) 18:31:40.92 ID:Ak9FiYn5.net] springを勉強しようと思います。 spring Frameworkの本を買いたいと思うのですが SpringFramework4プログラミング入門 Spring MVC/Roo プログラミング入門 どちらがいいでしょうか? 教えてください。 よろしくお願いします。
788 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 21:50:52.69 ID:t5oyJCvB.net] s2.etowns.slyip.net/~c_cpp_homework/cgi-bin/joyful/joyful.cgi phpの宿題よろしくお願いしますm(__)m
789 名前:デフォルトの名無しさん mailto:sage [2015/06/03(水) 21:56:04.18 ID:irHiNqHV.net] めちゃくちゃ
790 名前:!ichigo mailto:sage [2015/06/04(木) 00:06:02.65 ID:6MSMPfiJ.net] >>754 C/C++の掲示板に投げた上にマルチポストってことか お前が行ってる学校は義務教育じゃないだろうからわかんないなら辞めればいい 親の金をドブに捨てる必要もないだろう
791 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 00:06:34.54 ID:6MSMPfiJ.net] 名前欄ミスって恥ずかしい
792 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:28:54.64 ID:Uxwo/UOa.net] 正規表現で その行が「文字列=文字列」かを調べるのは [.[^=]]+=[.[^=]]* であっていますか?
793 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:33:42.61 ID:xuWz3vjX.net] ^[^=]+=[^=]+$
794 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 20:41:11.26 ID:Uxwo/UOa.net] >>759 「文字列=」もtrueにしたいので ^[^=]+=[^=]*$ でいいです
795 名前:ゥね? [] [ここ壊れてます]
796 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 22:25:03.04 ID:++ODO9QU.net] 初心者の俺には悪ふざけ顔文字にしか見えない
797 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 22:37:26.51 ID:eZ6vZki5.net] 久しぶりにコマンドラインからJavaをやろうとしたら うまくいかないので、以下のHello.javaを作って コンパイル、実行すると以下の通りでした。 2号機のほうにもJavaを入れ(SE8-45) コンパイル、実行するとうまくいきます。 思い当たるのは1号機の方にNetBeansと GlassFishを入れたことです。 NetBeansなどが入ったマシンで cmd.exeから実行するにはどうすればいいですか。 ---------------------------- Hello.java class Hello{ public static void main(String[] args) { System.out.println("Hello"); }}
798 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 22:41:35.02 ID:eZ6vZki5.net] 以下、1号機(Windows7-pro)でのコンパイル、実行です。 C:\dev\java\study>javac Hello.java C:\dev\java\study>dir ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は 10D2-49BD です C:\dev\java\study のディレクトリ 2015/06/04 22:17 <DIR> . 2015/06/04 22:17 <DIR> .. 2015/06/04 22:17 401 Hello.class 2015/06/04 22:07 226 Hello.java 6 個のファイル 1,945 バイト 2 個のディレクトリ 335,030,054,912 バイトの空き領域 C:\dev\java\study>java Hello エラー: メイン・クラスHelloが見つからなかったかロードできませんでした C:\dev\java\study>
799 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 22:44:40.92 ID:6+rQx/4G.net] >>763 classpathにカレントディレクトリが入ってないんじゃないの?
800 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 23:03:45.50 ID:eZ6vZki5.net] >>763 ご指摘どおりでした。ありがとうございます。
801 名前:デフォルトの名無しさん mailto:sage [2015/06/04(木) 23:07:42.55 ID:eZ6vZki5.net] >>764 ご指摘どおりでした。ありがとうございます。アンカーミスでした。
802 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 09:39:22.93 ID:9+6QFP5A.net] Fuck youでした。
803 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 19:29:23.97 ID:x2iznzDP.net] CUIゲームライブラリが分かりにくいと指摘されたので作り直しています。そこでjavadocコメントをどのように書けば分かりやすいかを教えて頂けると助かります。 下記URLにソースがあるのでコメントのアドバイスお願いします。 notepad.cc/share/dObqHTeIJ8
804 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 22:10:04.62 ID:i7ZaiCyv.net] 基本情報の午後のJavaの問題をさくさく解けるのって どれくらいのレベル? うちの職場のJavaのエンジニアに聞いたら誰もJavaで受けてなかったw
805 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 22:12:40.86 ID:2wZGR8ze.net] あーぱー
806 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 22:13:07.87 ID:OZFLk/Wo.net] 基本情報受けてるレベルの職場か
807 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 22:24:29.77 ID:ArINQc3s.net] 情報処理試験ってプログラム書かない上流連中の方が受けてるイメージ 奴らは応用や高度なんか普通に持ってるぞ
808 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 22:25:49.96 ID:2wZGR8ze.net] だからどうしたw
809 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 04:15:43.15 ID:ksfcb96F.net] for文の中にwhile文いれると、while文内の変数が初期値のまま変化しない…
810 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 05:43:46.22 ID:+pbQ/olj.net] >>768 ・メソッドとメソッドの間に改行を入れた ・//とコメントの間に半角スペースを入れてインデントをある程度揃えた ・フィールドコメントをjavadocに従って直した ・メソッドコメント内の説明とタグの間に改行を入れた ・重複コメントを削除した notepad.cc/share/6TJgksmhlF 全体的に圧縮されてて相当読み辛い 行数はいくら増えてもいいのでスペースを広く取ると良い ソースを読んだとき、明らかに誰でもわかることはコメントを付けても意味がないことが多く、 このコードにもそういう無意味な一行コメントと思われる部分がありそうだが、 ライブラリと言うことで全部許容した JDKに入ってるsrc.
811 名前:zipを解凍して出てくるAPIのソースは、 ソースレベルの動作確認や勉強ができるだけでなく、コメントの記法の参考にもなる あと後半になるに連れて飽きてきて適当になってる >>774 こんな時間に何やってんだ コードがないとさっぱりわからんが、恐らく細かい凡ミスだろう [] [ここ壊れてます]
812 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 08:18:12.19 ID:241cFvHc.net] >>775 丁寧にありがとうございます。参考にします。 あともう一つ質問です。前src.zipを見ようとして探したんですがjavafx-src.zipしか見つかりませんでした。 場所は C:\Program Files\Java\jdk1.8.0_31 の中です。 C:\Program Files (x86)\Java\jre1.8.0_45 の中も探しましたがありませんでした。
813 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 11:18:17.11 ID:241cFvHc.net] バイナリファイルに256以上のint型や負の数を正常に書き込めない。 1バイトは256通りらしいから仕方ないけど256以上の数字をバイナリファイルで表現する方法ないですかね?
814 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 13:20:52.71 ID:fF/gOSMG.net] >>777 バイナリにこだわらないならcsvやxml形式は扱いやすい バイナリがよければ単にserializableを実装するとか
815 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 13:35:10.16 ID:fF/gOSMG.net] >>777 パック10進数形式で保存する方法もある
816 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 19:12:07.38 ID:241cFvHc.net] int→byte配列やbyte配列→intの方法があるようなのでそれを使う事にしました。
817 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 21:59:56.20 ID:Yv4M5TXg.net] こういうのつくりたいなって思ったら あれつかってこうしてとかすぐ思いつくものなの? 初心者本読んでも、さっぱりなんだが
818 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 22:21:17.06 ID:NlzRnH5v.net] 本読んでも使えるようにはならんよ 他人のソースを読め
819 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 23:33:06.94 ID:241cFvHc.net] static関係のエラーが理解できるくらいになれば一応作りたい物を作れる。 少なくとも俺はそうだった。
820 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 04:14:56.17 ID:vUH7aA8V.net] OMTの本読んで何回か失敗してみたら作れるようになった。
821 名前:773 mailto:sage [2015/06/07(日) 09:15:29.55 ID:Z3/D3Drl.net] 変換クラスを作ってみました。 notepad.cc/share/meojX5VVup
822 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 12:33:28.35 ID:/BfVpQjp.net] >>785 ByteBufferの使い方がおかしい 各メソッドでByteBufferのインスタンスは1つだけ生成すればいいのでAPIの説明を読み直そう
823 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 13:00:36.83 ID:Z3/D3Drl.net] >>786 APIを読んでもいまいち分かりませんでした。 各メソッドでイントランスを一つにしたほうがいい理由はメモリの問題ですか?
824 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 16:11:13.74 ID:6S7lm6F6.net] clipでmidi再生を行う際、最初の読み込み時に時間がかかるので進捗バーを表示したいのですが、 なにか方法はあるのでしょか?ProgressMonitorInputStreamだとなにやら違うらしく、お手上げ状態です。
825 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 18:18:20.84 ID:6S7lm6F6.net] >>788 です 具体的に時間がかかるの&進捗を表示したい部分は、clip.open()の部分です。
826 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 18:40:45.51 ID:/BfVpQjp.net] >>787 スマホからだから動くか知らんけど、 せっかくBufferなんだからバッファリングしようってはなし ByteBuffer buffer = ByteBuffer.allocate(is.length * 4); for (int i : is) { buffer.putInt(i); } return buffer.array(); ---------- int[] is = new int[bs.length /4]; ByteBuffer buffer = ByteBuffer.wrap(bs); for (int i =0; i < bs /4; i++) { is[i] = buffer. getInt(); } return is;
827 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 19:09:42.47 ID:+9phhl+L.net] もう一歩進めるとたとえばこんな ByteBuffer buffer = ByteBuffer.allocate(is.length * 4); buffer.asIntBuffer().put(is); return buffer.array(); ---------- ByteBuffer buffer = ByteBuffer.wrap(bs); int[] is = new int[bs.length / 4]; buffer.asIntBuffer().get(is); return is;
828 名前:デフォルトの名無しさん mailto:sage [2015/06/08
] [ここ壊れてます]
829 名前:(月) 08:59:30.64 ID:sFhGLVAB.net mailto: >>790 そういう事ですね。ありがとうございます。 MP3のライブラリは色々な種類がありますがおすすめはどれですか? [] [ここ壊れてます]
830 名前:デフォルトの名無しさん [2015/06/08(月) 14:36:18.83 ID:D1QUZmlr.net] OSX yosemiteでclasses.jarの場所ってどこ? /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk とか /System/Library/Frameworks/JavaVM.framework/ を漁っても見つからん。 mdfind classes.jarでも見つからん。
831 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 16:55:28.30 ID:sFhGLVAB.net] ダイアログを表示している間他のフレームなどの操作を禁止したいのでモーダルにしようと思ったのですがモーダルにすると処理も停止してしまいます。 処理を停止させずに他のフレームへのアクセスをブロックする方法を教えて下さい。 できるだけスレッドは使いたくありません。
832 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 19:28:38.93 ID:3zqbUIJ7.net] >>794 いやいや、大人しくUIスレッドと他をわけろよww ていうかFxの話?Swing?
833 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 19:55:37.43 ID:sFhGLVAB.net] >>795 Swing
834 名前:デフォルトの名無しさん [2015/06/08(月) 23:56:53.01 ID:vbhWo1Rm.net] processingの質問はここでしちゃ駄目か? 専用スレが過疎ってるんだが
835 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 00:05:20.84 ID:uf3JHMIY.net] gpuをつかわない、いうところの OpenGLを使わないゲームライブラリってないかな?いちからゴリゴリ書きたくないよおお
836 名前:デフォルトの名無しさん [2015/06/09(火) 02:20:44.37 ID:N3XpzUaB.net] POIを使って、Excelシートのグラフをコピーもしくは削除する方法無いでしょうか?
837 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 03:04:30.73 ID:ETz9jusf.net] >>799 知ったかで回答するけど、マイクロソフトのExcelの独自の機能だから無理じゃないかな? ファイルにグラフデータがあるか無いかだけなら分かると思うけど。
838 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 05:27:48.91 ID:aX9ZVibV.net] java8になってイベントリスナーは全部λでやったほうがいいって事になったの?
839 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 08:47:13.21 ID:44qlprAb.net] >>801 今まで通り無名クラスでも変わらない Intellij使ってるならリファクタリングでラムダへの変換は一発だし好きにすればいい
840 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 11:59:22.91 ID:aeymWFea.net] JSP + Servlet + Struts1.x + Linux + Tomcatでファイルをアップロードすると ファイル名の文字化けが発生してしまいます。 JSPはShift_JISです。 WindowsのTomcatで動かした場合は文字化けしません。 どのあたりに目をつければよいでしょうか?
841 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 13:34:48.45 ID:m0FcBQ9M.net] Shift_JIS
842 名前:デフォルトの名無しさん [2015/06/09(火) 17:57:32.76 ID:g1ZC80Dv.net] JNIでネイティブ関数からJavaメソッドの呼び出しをやろうとしてます。 JNICALLなネイティブ関数からはJavaメソッド呼び出しができるのですが、 pthread_createで作成したスレッドが実行する関数からはJavaメソッドの呼び出しが 失敗します。 1. JNICALLなネイティブ関数でJNIEnvやMethodIDを外部変数に保存。 pthread_create実行。 2. pthread_createで生成されたスレッドで外部変数のJNIEnvやMethodIDを使用。 しかし、失敗。JNICALLなネイティブ関数で成功するFindClassですらコケる状況。 JNIEnv等は外部変数で保存しようとも、他のネイティブなスレッドで 使用する事はできないのでしょうか? (NewGlobalRefとかを使えば何とかなる?)
843 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 18:05:17.80 ID:nsmCrg98.net] https://docs.oracle.com/javase/jp/7/technotes/guides/jni/spec/invocation.html#wp1060 > JNI インタフェースポインタ (JNIEnv) は、現在のスレッドでのみ有効です。 > 別のスレッド
844 名前:ェ Java VM にアクセスする必要がある場合、 > これは最初に AttachCurrentThread() を呼び出して、自身を VM に接続し > JNI インタフェースポインタを取得する必要があります。 > 一度 VM に接続されると、ネイティブスレッドはネイティブメソッド内で > 実行中の普通の Java スレッドのように機能します。 > ネイティブスレッドは、DetachCurrentThread() を呼び出して自身を切り離すまで > VM に接続されたままになります。 これじゃないのか? 俺はやった事ないからよくわからんけど。 [] [ここ壊れてます]
845 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 18:58:07.09 ID:g1ZC80Dv.net] >>806 ドンピシャでした。サンクス。 以下でいけました。 1. JNIEnv他諸々の設定。JavaVMの外部変数へ。pthread_create実行。 2. pthread_createのスレッドで外部変数のJavaVMでAttachCurrentThread。 JNIEnv他諸々が使えるようになる。
846 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 22:36:41.57 ID:ETz9jusf.net] >>803 面倒ならUTF-8にしなさいよ
847 名前:787 mailto:sage [2015/06/09(火) 22:44:17.73 ID:Ai3DzZZr.net] >>795 大事なことを思い出しました。 確かGUIはスレッドセーフじゃなかった気がするんですがスレッドを分けたりして大丈夫なんですか。
848 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 22:47:47.45 ID:L94chwJE.net] >>805 JNIの本読んどけ
849 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:05:56.04 ID:pypHpeqZ.net] バイト配列Aから指定したバイト配列Bが存在するか?存在するなら何バイト目にあるか?を調べるメソッドはないのでしょうか Stringでいうstartswithのようなものが見つかりません
850 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:14:04.36 ID:ETz9jusf.net] >>811 文字列に直せば?
851 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:23:58.48 ID:pypHpeqZ.net] >>812 なるほど、その発想はありませんでした ありがとうございました
852 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:40:32.87 ID:ijAK+qQr.net] >>813 String#indexOf()だと思うけど、文字の出現位置だから3byte文字にマッピングされたらbyteの位置とは異なるよ
853 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:50:03.14 ID:Ai3DzZZr.net] 配列の中身が全て違うか調べるには配列の全要素をMapに入れて長さを比較する以外に方法ありますか?
854 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 23:59:11.12 ID:Ai3DzZZr.net] 間違えました。Setです。
855 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:02:47.91 ID:EBTmmvru.net] 無理じゃね? ideone.com/mI4ac1
856 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:04:56.61 ID:nTEkTgfl.net] >>816 配列がどんな型なのか分からんと何ともいえん
857 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:10:02.96 ID:cXG52Bh4.net] >>818 配列は基本データ型です。 Setはラッパー型?です。
858 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:36:31.49 ID:V5C8gU0c.net] >>809 ちゃんと同期は取らないと駄目 BackgroundWorkerなり使って処理した方がいいよ
859 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:46:03.49 ID:wbNCj2E5.net] >>819 Arrays.asListでリストに変換して、Setのコンストラクタに指定すれば、コードは単純になりそう
860 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:50:39.17 ID:1Fbwueze.net] >>815 最後の要素まで確認しちゃうからArrayList#contains()で地道に確認する方が平均的には早いんでない?
861 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 00:53:52.87 ID:wbNCj2E5.net] >>820 SwingWorkerか。失礼しました。
862 名前:デフォルトの名無しさん [2015/06/10(水) 07:55:03.71 ID:Fqsaqk0o.net] 業務のプログラムのパッケージ構成が理解できません dbとかがわかれてるのはわかりますが 他がどうやってパッケージやクラスをわけて書いてるのか 複雑過ぎてよめないです 業務の書き方は会社によって違うんでしょうが 業務の書き方がわかるサイトか本はないんでしょうか androidです
863 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 07:57:04.11 ID:cXG52Bh4.net] >>823 スレッド用のクラスとかあったんですね。 知りませんでした。使ってみます。
864 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 08:09:09.82 ID:Juh8WKjs.net] >>824 Androidで業務って普通Webベースじゃね? もしUIをAndroidネイティブで作る
865 名前:ノしても、ほとんどサーバーのAPIに丸投げする形だと思う [] [ここ壊れてます]
866 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 18:41:36.53 ID:OKIZRngR.net] >>824 そんなの設計者のポリシー次第だろ。 javadocのpackage summary書かせろ。 ちなみによくマルチviewにするので、viewごとに分けてる。
867 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 20:09:45.20 ID:cXG52Bh4.net] 開発途中のゲームライブラリ一応実装したい機能できましたのでソースの公開します。 これからjavadocを修正したり、イベント処理を匿名クラスにしたり、スレッドを使ったりする予定です。 アドバイスして頂けると助かります。 https://www.mediafire.com/folder/2o6c8v8dwt848/
868 名前:デフォルトの名無しさん [2015/06/10(水) 23:33:09.32 ID:34gruKuF.net] windowsのeclipseで作ったjavaプロジェクトを プロジェクトファイルをまるごとcentosにコピーしてcentos側で 実行したいのですが どうやって実行したら良いのでしょうか? ご存知のかたいたら教えて下さい。 ※javaなど必要な環境はインストール済みです。
869 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 23:49:48.94 ID:nTEkTgfl.net] >>829 試せばいいじゃん
870 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 00:22:50.53 ID:FQT+0qQ4.net] 何故プロジェクトごとコピーしようと思ったのか解らんけど プログラムを実行するだけならclass (or 固めたjar) ともしあれば依存するライブラリで十分 (ファイル読んだりするんなら当然それも) 実行のしかたが分かんなければhello worldからやり直せ
871 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 03:01:58.42 ID:rDkLF6bo.net] すいません。今Javaの勉強してて文法とかは大体分かってきた感じなんですが、 もうちょっとVMがオブジェクトをどう管理してるのかJavaの実行環境そのものとかそういうことが知りたくなってきたんですが、 何かおすすめの本ないですか
872 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 05:41:26.33 ID:kVHSO0Uh.net] >>832 JVMの仕様を見ればいいよ https://docs.oracle.com/javase/specs/jvms/se8/html/
873 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 08:40:21.37 ID:LN8eWR41.net] Javaの正規表現で勝手に^や$がくっついたような振る舞いするのはなんでなの?
874 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 12:08:14.13 ID:MCnGDuRk.net] >>829 ワークスペース直下のプロジェクトのフォルダと .metadata のフォルダを コピーして持ち歩いて使ったことならある もちろん構成次第だからうまくいくかは知らない
875 名前:デフォルトの名無しさん [2015/06/11(木) 17:10:59.35 ID:k9pPzv8R.net] .xlsとか.pptのファイルを.pdfで保存したんだけど、これをGUIで表示させるにはどうしたらいいですか? jpgはうまく読み込んで表示できるのにpdfは無理なんですかね?
876 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 19:06:08.27 ID:jeum3ACR.net] PDF rendererってのがあったような。
877 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 19:12:08.06 ID:y1YwDIqe.net] ggr努力を省くのか不思議 ttp://weblabo.oscasierra.net/java-pdf-lib-2014/
878 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 22:06:12.67 ID:/vQvgCRU.net] >>834 findでなくてmatchだからとか?
879 名前:デフォルトの名無しさん mailto:sage [2015/06/11(木) 22:41:56.90 ID:p2sJNgIa.net] とりあえず作りたい物ができたら一文字変数とかで急いで作って、内容を覚えてる3日以内にある程度分かるコードにして、一ヶ月後くらいに新しく覚えた文法とか使ってきれいに書き直しているんですが、どう作るのが一番いいですかね?
880 名前:デフォルトの名無しさん [2015/06/11(木) 22:47:58.19 ID:1wrXKn1u.net] >>840 そんな超初心者はいろいろやって苦
881 名前:労するしかない。 [] [ここ壊れてます]
882 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 00:00:25.55 ID:7cmOY+dT.net] >>840 Java言語は初心者に優しく作られてるからコードの最適化や効率化は二の次でいいのでは? なくてもいいようなどうでもいいメソッドやクラスも沢山あるし現時点で最も効率よいコードを書いたところで バージョンがあがれば最適化されて標準APIが新しく生まれるんだからバグとかアンチパターンを覚えたら 次の機会に直すぐらいの余裕を持たないといつまでたっても1.0をリリースできないYO!
883 名前:デフォルトの名無しさん [2015/06/12(金) 02:18:01.77 ID:Cv0xc/HT.net] hayabusa6.2ch.net/test/read.cgi/pc2nanmin/1361040277/281 ↑ ↑ ↑ ↑ ↑ ↑
884 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 05:10:33.34 ID:KE10iP2h.net] >>840 状況によって変わるのに1番って何だよ。
885 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 16:21:03.57 ID:qvGAxWS0.net] GUIを持ったちょっとしたツールを作ろうと思うんですが 今のJavaだと何のライブラリを使うのが主流なんででしょうか
886 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 16:33:09.23 ID:b/rl2dle.net] >>845 こういうところで聞いたら Java低速GUI Swing 10 peace.2ch.net/test/read.cgi/tech/1316528595/ 【Java標準GUIライブラリ】 JavaFX スレッド peace.2ch.net/test/read.cgi/tech/1404491265/
887 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 16:58:07.36 ID:7bkvsxbl.net] javaFXってGUIだったの?聞いたことはあったけど。 swingと比べて複雑な事ができるの?それとも簡単に作れるの?
888 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:47:40.61 ID:qvGAxWS0.net] なんででしょうか
889 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:48:18.19 ID:TFyVAHCa.net] JavaはGUIアプリ作るのに使われていないので主流もクソもない 対象をJava言語まで広げていいなら主流と呼べるのはAndroidフレームワークだな
890 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 20:04:04.41 ID:qvGAxWS0.net] おとなしくC#使えってことなんでしょうか
891 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 22:40:14.64 ID:PFJQIw/j.net] >>849 Androidが >Java言語 いつからそうなった
892 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:32:29.59 ID:rJZZXAMl.net] なんででしょうか
893 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 10:29:03.11 ID:shLzsYc/.net] Colorクラスの定義済みの色って列挙型と思ってたけどAPI見たらフィールドだった。
894 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 10:32:44.31 ID:ajVSBkV0.net] enumにしたら新しい色作れなくなるやん?
895 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 11:18:19.54 ID:shLzsYc/.net] >>854 そう思ってAPI見ました。 今見たらJFrameのDO_NOTHING_ON_CLOSEなどもintの定数だったみたいです。 標準APIでenumって余り使われていないんですかね?
896 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 11:32:49.62 ID:PQEjgPzu.net] >>855 enum登場前から存在するからじゃね?
897 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 11:45:05.64 ID:LeUZ4hy2.net] RoundingModeなんかは1.5以降フィールド定数からenumに移った
898 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 12:22:49.10 ID:p32n6lm2.net] 「ゲームライブラリ」のα版を公開しました。 https://www.mediafire.com/folder/2o6c8v8dwt848/ バグ等ありましたら下記お問い合わせフォームからお願いします。 form1.fc2.com/form/?id=bb6167823f7fe1c2 👀 Rock54: Caution(BBR-MD5:a25e4003af9e6ad901efb58236cd699e)
899 名前:デフォルトの名無しさん [2015/06/13(土) 12:36:22.94 ID:Hdz4A7bs.net] >>845 Nose.jsでWebアプリにしたら良いじゃん
900 名前:デフォルトの名無しさん [2015/06/13(土) 13:11:51.77 ID:qjUxY9Di.net] 動きのほしい所はAngular.js使えばクライアントアプリっぽくなるし。
901 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 13:55:03.35 ID:5MuIpNO2.net] JavaスクリプトのソースコードをJava言語のソースコードに変換
902 名前:ナきるアプリまたはJava言語やJavaスクリプトの ライブラリなどございましたらどしどしレスください。 アイデアだけでも結構です。 [] [ここ壊れてます]
903 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 14:03:22.81 ID:92JJS8qt.net] ベストアンサーには10ペリカ差し上げます
904 名前:デフォルトの名無しさん [2015/06/13(土) 14:16:32.67 ID:qjUxY9Di.net] Javaスクリプト ↑ JavaとJavaScriptの変換ぽい
905 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 14:28:11.91 ID:sPvFrjyx.net] ベストアンサー ここは知恵遅れではない
906 名前:デフォルトの名無しさん [2015/06/13(土) 14:33:05.17 ID:qjUxY9Di.net] 変換とか、楽しようとしてはいけない。
907 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:00:28.57 ID:5MuIpNO2.net] 能なし豚は黙っててください^^
908 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:09:47.47 ID:rsbvCsP+.net] 頭おかしい
909 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 16:00:10.29 ID:pXDZQskx.net] バカはレスしないでくれる? 個人の主張として批判せず、いたずらにある類として扱うのは極めて恣意的かおバカの批判にあらざる攻撃の特徴。 まあ、その軽蔑すべき発想で返した俺も反省はしてもよいが はっきり言って精神病とバカの特徴でしかない論法でレスするなよ。 俺はバカと精神病きらいだからな。 おまえら、マジで精神病と思われる宣言的絶対主義の形而上学バカの一味は人類の公的な敵だとおもっているからな。 さしあたりお前らが馬鹿にされていることは科学的認識の健全性をそれなりに示すから喜ばしいがな。 それにしても、単なる知識を披露しあっているだけの時は頭良さそうなふりはできるが、 いよいよ自身の認識を問われる事態になるとここにいる連中、そこの浅さを露呈するやつ多すぎ 所詮、2chだな
910 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 16:03:14.50 ID:VNwklvdt.net] また馬鹿が現われた
911 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 16:28:21.18 ID:5MuIpNO2.net] レス番つけないからこうなる
912 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 21:15:58.37 ID:ovc7Cp6y.net] とりあえず三行でまとめて
913 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 21:18:17.17 ID:jKGoCo7L.net] >>868 結構受けているね,やっぱり才能あるわ,この人 ますますファンになりそうだ,明日本を買ってこよう
914 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 04:42:10.64 ID:FfpXVJjG.net] >>868 >徒(いたずら)にある類 ←この意味が(も?)理解できない。やさしい日本語で書け
915 名前:デフォルトの名無しさん [2015/06/14(日) 08:50:08.47 ID:H8Micl5K.net] Java言語はUNICODEでソースコードを解釈するから平仮名でもクラスやメソッドを認識できる あいうえお.java public class あいうえお { public void かきくけこ() { String さしすせそ = "The World !!"; System.out.println(さしすせそ); } } これ豆知識な
916 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 08:57:57.80 ID:yuiak182.net] >>874 それは分かるけど何で平仮名クラス、メソッド、変数嫌われているの?
917 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 11:53:40.36 ID:Rx6FxCXy.net] private staticなメンバってどんな時に使いますか? final staticメンバを参照するのとprivate final staticメンバをstatic getメソッドで参照することのメリットデメリットはありますか?
918 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 13:10:39.56 ID:mTYsgSWj.net] >>876 private staticは一つしかイントランスを取得できないようにする時とか(Singleton) final staticメンバを参照する事のデメリットは変数名を変えたい時に依存して面倒。メリットはコードが単純。 static getで参照する事のメリットは変数名を変更しやすい。デメリットはコードが複雑。
919 名前:デフォルトの名無しさん [2015/06/14(日) 17:31:52.73 ID:fUF5oRs3.net] >>876 staticメソッドを使わないでもメソッドは書けます。 Public culc(){ } ~ ~ this.culc(); というふうに動的に呼び出したほうが速くて パブリックメソッドクラスが書きやすくなります。 staticはmain()メソッドのみだと思っていた方が いいと思います。 staticはmain()以外Javaでは特に必要がない機能です。
920 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 17:35:53.58 ID:W5WL6w7T.net] >>878 おいおい,static メソッドはありふれているし大事な存在だが? Integer#parseInt() とか使わんのか?
921 名前:デフォルトの名無しさん [2015/06/14(日) 17:42:44.76 ID:qc9GPIMg.net] >>874 Unicodeだからじゃなくて仕様。
922 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 22:12:19.60 ID:MAIRt/TV.net] >>878
923 名前:デフォルトの名無しさん [2015/06/14(日) 23:28:47.46 ID:6PpjoAfe.net] staticで画面間で変数共有するくらいなら、DIコンテナに保存した方が良いというなら分かる。
924 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 13:20:07.57 ID:KqNFlhLk.net] インスタンスの状態に依存しないならstaticメソッドにするでしょ
925 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 15:10:02.33 ID:syb1bV3z.net] 依存性の注入
926 名前:tkr ◆8reCYe8za. mailto:sage [2015/06/15(月) 19:40:58.86 ID:66uu0a7W.net] ゲームライブラリα版1.3公開しました。 サンプルアプリもつけました。 https://www.mediafire.com/folder/2o6c8v8dwt848/ 「CUIゲームライブラリ」は分かりにくいという指摘がありましたので改善したつもりですが、もし分かりにくい所があれば指摘お願いします。
927 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 23:29:57.72 ID:YBCFjaLt.net] そういのはCodeBreak;とかOSDNで公開してくれよ codebreak.com/ja/ osdn.jp/
928 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 23:42:49.93 ID:zmjVHtcn.net] >>886 そんなサイトあったんですね。ありがとうございます。
929 名前:デフォルトの名無しさん [2015/06/16(火) 02:52:10.82 ID:jNXGbYeX.net] https://www.youtube.com/watch?v=_BBdZeapUxY コンストラクタという機能は一体どういうふうに使えば 「あーコンストラクタ本当に便利だなー」となりますか?
930 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 07:48:48.82 ID:enYZCmdS.net] >>888 イントランスの初期化。フィールドに初期値を代入したりとか。 クラスの初期化はstatic{}、匿名クラスの初期化は{}
931 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 09:56:50.91 ID:uyjZr8d0.net] イントランスとインスタンスの違いは?
932 名前:デフォルトの名無しさん [2015/06/16(火) 10:51:20.96 ID:4da5t0mh.net] >>888 コンストラクタは不便。 DI便利。
933 名前:デフォルトの名無しさん [2015/06/16(火) 13:29:17.32 ID:9ymtMah1.net] >>888 いい曲だね。
934 名前:デフォルトの名無しさん [2015/06/16(火) 15:19:24.36 ID:pKUUEFS6.net] OracleがJavaBronseでもStaticでインスタンスを 書いているということは おそらくメモリを静的に確保して反応を速くしたいと 思っているからだと思います。 Windowsのガーベジコレクションの能力もまちまちですが 意外とキャッシュメモリを呼んで動的に割り当てても そんなに遅いケースは通常あまりないかも知れません。 parseIntもstaticで書いてあるものと思いますが パブリックインスタンスからコンストラクタ起動のほうが 若干速いのではないでしょうか。 パブリックインスタンスの中にコンストラクタ起動を書けば インスタンスからインスタンスへの分岐が書けます。 スレッドだと連続してかけると思いますが コンパイラによっては4つぐらいしか通らないケースはありますが。
935 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 16:33:30.68 ID:bzNNhmWL.net] なに言ってんだこいつ>>893
936 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 21:31:57.27 ID:qRybvA4O.net] charってネイティブはなんて読むの? チャー? キャラ?
937 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 21:38:30.42 ID:s2XHvinw.net] >>895 シーエッチエーアールって読んでた。アルファベットで読まないと綴り覚えられないし。 エスティーアールイングとか。 String=ストリングって最近知った。
938 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 21:56:37.72 ID:bzNNhmWL.net] >>896 ネイティブはどう発音するのかって質問なのに、なんで自分の話をしてんの?お前ネイティブなの?
939 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 21:58:23.37 ID:mTxbnXs7.net] 何で最近のパッケージ(nioとかtime)はnewじゃゃなくてget〜でイントランス取得する事になってるの?
940 名前:デフォルトの名無しさん [2015/06/16(火) 22:40:09.67 ID:U26AwSOL.net] >>897 話題を広げたんだよ。アスペ君。頑張れアスペ君。
941 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 22:50:58.65 ID:8wS7hX90.net] と、アスペが申しております
942 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 22:55:19.79 ID:beEOQH6x.net] 省略せずにキャラクターって読めよ ケンタじゃなくてケンタッキー マックじゃなくてマクドナルドってちゃんと読めよ
943 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 23:07:47.48 ID:8wS7hX90.net] 君おもしろいねえ(棒 ちゃーだよ キャラて思うのはカタカナ日本語の発想
944 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 23:15:41.04 ID:8wS7hX90.net] 訂正 カタカナ英語の日本人の発想
945 名前:デフォルトの名無しさん [2015/06/16(火) 23:23:33.81 ID:yhO4vHd9.net] 勉強しはじめたけど 例外とその処理って概念がややこしすぎて各意味がよくわからない。 どういう意図でこういう体系を作ったのですか? throwとかとくに何がしたいからそうしてるの?
946 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 23:25:18.91 ID:H/0P79Zr.net] 習うより慣れろ
947 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 23:33:20.02 ID:y+ZRno0+.net] 今から例外を勉強するなら、検査例外(throws)については 今では一般的に失敗だったとされていることは頭に留めといたほうがいいよ 検査例外と相性最悪のLambdaも入ったことだし、今時あまり好んで使うものではない 検査例外を除く例外そのものはJava以外でも非常に広く使われている仕組み
948 名前:デフォルトの名無しさん mailto:sage [2015/06/16(火) 23:33:21.59 ID:eazwzplx.net] >>898 内部の実装を隠せるからじゃないかな。CalendarやDateFormatなんかと同じ。
949 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 00:28:31.44 ID:9yE1NfxJ.net] >>884 なにそれエロい
950 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 07:23:27.97 ID:VP5tvxmT.net] イントランスってなんなんだろう
951 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 07:44:05.93 ID:tTYriNxi.net] トランス状態に入ってんだろ
952 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 08:56:28.16 ID:uh9TNyNS.net] イントランスって何? インスタンスなら知ってるけど
953 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 16:20:31.13 ID:U4WpqZqd.net] ずっとイントランスって思ってた。恥ずかしい。
954 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 16:26:10.59 ID:41sYFRxf.net] エンタランスは入り口
955 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 19:34:07.66 ID:dGKvsGl3.net] コンストラクタをコントラクタと間違える人もいるし大丈夫
956 名前:デフォルトの名無しさん mailto:sage [2015/06/17(水) 19:58:54.62 ID:hW0Pq1vm.net] インクジェットの年賀状をインジェクト、インジェクト言う爺さんを思い出す
957 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:04:15.92 ID:v3eVdPkx.net] 日経ソフトウェアに載っているコードが動かないのですが、 ここに丸ごと貼っていいでしょうか?
958 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:06:05.32 ID:vn28fqVf.net] ダメですね
959 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:14:02.43 ID:MGZzdSCY.net] >>916 だめだけど、もしおまえが貼って日経から著作権侵害で訴えられてお前が裁判で敗訴するかどうかは 分からない。少なくとも数年はかかる。賠償金がいくらになるかも分からない。
960 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:15:33.45 ID:v3eVdPkx.net] わかりました。聞き方を変えます。 public static void main(String... args) { } っ書き方の(String... args)って(String[] args)の書き間違えなのでしょうか? (String... args)ってeclipseでシンタックスエラーになるんですけど? (String... args)って何なんですか?
961 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:25:51.38 ID:vn28fqVf.net] そのmainメソッドそのままコピペしてもおれのIntelliJ IDEAはエラーにならない
962 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:35:21.72 ID:Fdn/rkIq.net] 少なくともmainに使うのは紛らわしいだけで全くなんの意味もないから忘れていい その書き方するのはただの厨二バカ
963 名前: [] [ここ壊れてます]
964 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:39:22.49 ID:v3eVdPkx.net] >>920 そうですか、情報ありがとうございます。 それから Randomクラスのlongsメソッドの引数に100_000_000を渡しているのですが、 _を入れるとeclipseでUnderscores can only be used with source level 1.7 or greater っていうエラーが出るのですが、数字に_って何かjavaの文法では意味が あるのでしょうか?
965 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:41:12.28 ID:v3eVdPkx.net] >>921 はい。「何の意味もない」とおぼえておきます。
966 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:41:48.02 ID:ri6+HCEX.net] ...は可変長引数の意味。 mainメソッドの引数には一般的にコマンドライン引数が渡されるためか、1.4だかそこらのバージョンでmainの引数を可変長として宣言できるようになった 意味合い的には正しいけど基本的には自己満足 で、それをシンタックスエラーとして検出するってどんだけ古いeclipse使ってるんだ…
967 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:44:15.83 ID:lIlW+LJx.net] 日経ソフトウェアって雑誌掲載のコードはHPで公開してなかったっけ?
968 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:45:10.17 ID:vn28fqVf.net] >>922 とりあえずめんどくさい事に煩わされないためにJavaのバージョンを新しくするのをオススメw
969 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:47:47.10 ID:v3eVdPkx.net] >>924-926 ありがとうございます。 eclipseを新しくしてみます。 また、win7 32bitにはjava se8をいれてあります。 明日は、8:30から工場勤務なのでもう寝ます。
970 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 00:48:04.16 ID:ri6+HCEX.net] >>922 数値リテラルを記述するときに桁が分かりやすくすることができる。それだけ 金勘定で使われる「\9,999,980」のカンマと同じようにして使う
971 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 01:11:29.42 ID:HKsBgcCX.net] >>927 いやいやいや eclipseのバージョンじゃなくて、コンパイラのバージョン指定が1.6とかになってるだけ 1.8を指定してあげれば終わり
972 名前:デフォルトの名無しさん [2015/06/18(木) 03:50:32.06 ID:lIlW+LJx.net] >>898 リフレクションの関係じゃないの? ClassクラスのnewInstance()は引数なしコンストラクタしか呼べないし
973 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 04:21:20.31 ID:IMENc0gC.net] お前らもラムダとストリームをガンガン使え! ラムダ式とストリームAPIでJavaプログラミングはここまでシンプルになる!──Java SE 8に今すぐ移行すべき理由 builder.japan.zdnet.com/sp_oracle/weblogic/35065645/1/
974 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 21:52:24.16 ID:HGpFSeoc.net] java.awt.Desktopでブラウザを開こうと思うんだけどJava側で自動的にブラウザを閉じさせることってできる?
975 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 22:14:10.34 ID:sguCmveE.net] >>932 全くJavaっぽくないけどこんな方法ならある stackoverflow.com/questions/10075997/closing-a-web-browser-for-a-specific-url-from-the-java-program
976 名前:デフォルトの名無しさん mailto:sage [2015/06/18(木) 23:05:48.24 ID:OlVbbzlT.net] >>933 確かデフォルトブラウザで開くならDesktopクラスを使うしかなかった記憶があるけど、デフォルトブラウザに拘らないんだったらそれもありだな
977 名前:デフォルトの名無しさん [2015/06/19(金) 11:51:04.34 ID:XhMFtw6B.net] eclipseでlogback使っている人いたら教えてください maven標準のプロジェクト構成で、 src/main配下をtarget/classesに出力、 src/test配下をtarget/test-classesに出力しています logback.xmlはsrc/main/resources、 logback-test.xmlはsrc/test/resourcesにあります この時、開発時にはlogback-test.xmlを優先して使うにはどのようにすればよいでしょうか? 出力先は分けておきたいのですが、target/test-classes/logback-test.xmlを
978 名前:target/classesにコピーする以外に手は無いですか? [] [ここ壊れてます]
979 名前:デフォルトの名無しさん mailto:sage [2015/06/19(金) 14:25:14.33 ID:LANto0G4.net] いません
980 名前:デフォルトの名無しさん mailto:sage [2015/06/20(土) 17:17:58.42 ID:Z2W3qSTd.net] swingでフレームのサイズが変更された時に纏めて大きさを変更する事はできますか?
981 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 13:24:18.86 ID:cRv20Lfe.net] 各フレームのサイズを特定の変数で左右されるように設定して (例えば、全てのフレームのサイズを「基本サイズ*倍率(共通の変数)」で設定するなど) repaintを適切に定義してやればできるでしょ
982 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 18:09:48.10 ID:zrJOsiBo.net] Exception in thread "main" java.lang.OutOfMemoryError: Java heap space が出たので、コマンドプロンプトで java -Xmx1224m プログラムの名前 で実行するとうまくいったのですが、-Xmx1224mって適当な数字で いいのでしょうか?
983 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 18:18:07.64 ID:YGFA4rDU.net] >>938 シューティングゲームで弾などの座標を管理しているのでそれだと厳しいです。 テキストエリアなどはないので非表示ウィンドウの動画を撮影しながらリアルタイムで大きさを変更できる表示ウィンドウに流す方法はないですかね? あともう一つ質問です。 シューティングゲームで←→移動、z発射にしているのですが移動中にzを押すと←→キーのイベントが解除?されるので操作がしにくいです。 どうすれば解決できますかね?
984 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 18:37:02.76 ID:11tfRg6D.net] >>940 keyPressedとkeyReleasedを拾って、キーの状態を自分で管理するのは?
985 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 20:03:52.77 ID:025T7DXI.net] >>939 その前にプログラムにおかしいところはないか見直した方がいいぞ よっぽど大規模な処理でない限りOOMなんか出ない メモリリークの可能性が高い
986 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 20:16:38.08 ID:RFqlBh03.net] 数学の計算やってるとしょっちゅう出る。
987 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 21:22:35.96 ID:zrJOsiBo.net] >>942 乱数を1億生成して配列に格納するだけのプログラムなので メモリリークの可能性はないと思います。
988 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 21:48:15.58 ID:Z/rF/nT6.net] int型は4byte それが1億個だから約400MBくらいか? デフォルト値に+400MBくらいでいいんじゃないっすか
989 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 21:54:40.97 ID:sM1nkpyG.net] public static void main(String[] args) { int[] ary = new int[100000000]; java.util.Random rng = new java.util.Random(); for(int i = 0; i < ary.length; i++) ary[i] = rng.nextInt(); } 俺の環境だと-Xmx571mで完走 -Xmx570mでjava.lang.OutOfMemoryError: Java heap space
990 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 21:56:26.84 ID:zrJOsiBo.net] 乱数はlong型でした。そういえば、int型なら、そんなにメモリが不要 かもしれません。今度int型で1億の乱数生成して配列に格納してみます。
991 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:00:46.91 ID:sM1nkpyG.net] public static void main(String[] args) { long[] ary = new long[100000000]; java.util.Random rng = new java.util.Random(); for(int i = 0; i < ary.length; i++) ary[i] = rng.nextLong(); } -Xmx1142mエラー -Xm1143m完走 +400Mじゃなくて2倍だな…なんでだろ
992 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:08:06.59 ID:/sXNCCzC.net] >>944 確かめたのか?数が増えれば絶対はない
993 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:14:30.75 ID:Z/rF/nT6.net] int型は4byte long型は8byteだから
994 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:14:48.34 ID:YGFA4rDU.net] >>941 キーが離された時のは拾っていませんが押されたときのは拾っています。 よく同時押しの処理方法はあるのですが両方のキーは無関係だけど両方を一緒に処理したい場合の仕方を教えて下さい。 EDTは一つしかないので厳しいでしょうか?
995 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:15:05.80 ID:zrJOsiBo.net] >>944 一回挫折して、最近Javaを勉強しなおした初心者なので、あんまり分かりません。 コードを晒します 環境Java SE8,win7 32bit,shuttle ベアボーン(CPU:AtomデュアルコアD2700) public static void main(String[] args) { long[] nums = new Random().longs(100_000_000,-100L,100L).toArray(); System.out.println("nums[0]="+nums[0]); System.out.println("nums[99_999_999]="+nums[99_999_999]); }
996 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:17:08.85 ID:zrJOsiBo.net] 間違えた 誤:>>944 正:>>949
997 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:21:35.83 ID:sM1nkpyG.net] RandomにStream出せるメソッド追加されてたのか、知らんかったわw
998 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:22:46.24 ID:/sXNCCzC.net] >>953 初心者は言い訳にならない、java メモリークでggって見なさい
999 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 22:33:35.39 ID:zrJOsiBo.net] >>954 java se8からrandomクラスにint,long,doubleの乱数列からなるストリームを 生成するメソッドが追加されたそうです。 >>955 はい。java のメモリリークを勉強します。
1000 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 23:11:18.78 ID:11tfRg6D.net] >>951 別のスレッドで処理させれば? あとkeyReleasedもちゃんと処理書かないと、いつまで押し続けられてるかが分からない
1001 名前:デフォルトの名無しさん mailto:sage [2015/06/21(日) 23:27:42.95 ID:Z/rF/nT6.net] どう処理すればいいかを自分で考えるのではなく オープンソースになってるシューティングゲームなりキー同時押しあるゲームなりのソースコード見てどう処理してるか勉強するのが一番近道じゃないの
1002 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 01:23:24.69 ID:ZfC4m+f1.net] >>940 java キー 同時押し で検索すると沢山出てくるけど全部試した?
1003 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 17:09:58.50 ID:H5L9hag+.net] キー同時押しはできました。ただ→押しっぱなし、z押して離すと行うとkeyPressedが呼び出されなくなり上手く処理できません。 addKeyListener(new KeyListener(){ /**←が押されているか*/ private boolean l; /**→が押されているか*/ private boolean r; /**Zが押されているか*/ private boolean z; @Override public void keyPressed(KeyEvent e) { if(e.getKeyCode()==39)r=true;//右 if(e.getKeyCode()==37)l=true;//左 if(e.getKeyCode()==90)z=true;//発射(z) if(z)My.get.tama();//弾が押されているなら if(!(r&&l)){//←→両方が押されてない if(r)My.get.setLR(true);//右が押されている if(l)My.get.setLR(false);//左が押されている } } @Override public void keyReleased(KeyEvent e) { if(e.getKeyCode()==39)r=false;//右 if(e.getKeyCode()==37)l=false;//左 if(e.getKeyCode()==90)z=false;//発射(z) } @Override public void keyTyped(KeyEvent e) {} });
1004 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 18:05:57.85 ID:dvKyfPe0.net] Javaの読みって英語圏でも「ジャバ」なの?それとも「ジャワ」なの?
1005 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 18:16:18.33 ID:dvKyfPe0.net] 耳が悪くて「ジャバ」って言ってるのか「ジャワ」って言ってるのかよくわからない medianetwork.oracle.com/video/player/1218969104001
1006 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 19:09:57.69 ID:H5L9hag+.net] >>960 少し変えたらなめらかに動くようになって上手くいきました。 swingって最初からダブルバッファリングが採用されているようですがシューティングゲームだとかなりちらつきます。 javaでちらつきを完全に無くすことは難しいでしょうか?
1007 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 19:15:21.88 ID:Y/i1dFqK.net] >>961 「ジャバ」 ただし[b]じゃなくて[v]なので「ジャヴァ」の方がより正確かも バイオリン(=ヴァイオリン)の頭の音と同じ音 ジャワ島も英語読みすればジャバ(ジャヴァ)島
1008 名前:デフォルトの名無しさん [2015/06/22(月) 19:36:21.66 ID:dvKyfPe0.net] >>964 ありがと
1009 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 20:08:58.99 ID:ILh0wq8G.net] java素人です。 そもそもjavaってどういうところで どんなアプリで使われているんですか? visual studioでは開発出来ませんよね? 標準的な開発環境は何ですか? javascriptとは違うんですよね。多少は似てるんですか?
1010 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 22:02:35.
] [ここ壊れてます]
1011 名前:87 ID:CwMZHil+.net mailto: ググれば5分で分かることを掲示板で訊く無能 [] [ここ壊れてます]
1012 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 22:20:00.45 ID:tbUBo/lz.net] >>966 病院とか図書館とか駅とか行くとスタッフがPCで見覚えのないソフト使ってるだろ? ああいうの 一般ピープルがイメージする「アプリ」にはほとんど使われていない
1013 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 22:28:42.53 ID:tG7Y8i/e.net] >>966 会員になると続きが読めます そもそも「Java」ってなに? allabout.co.jp/gm/gc/80596/
1014 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 23:12:11.11 ID:1+IV2Acg.net] swingでゲーム作るけどチラつかないように制御してるよ。 自分でダブルバッファした方がいいよ。 createImageとかで検索すれば出てくると思うよ。
1015 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 23:49:53.20 ID:H5L9hag+.net] >>970 ダブルバッファリングは最初から機能を作っておいたほうがいいんですかね?それともゲームの基本部分ができてからでも大丈夫ですかね? シューティングは初めてでダブルバッファリングもした事ないので片方に集中しないと訳の分からないコードになってしまいそうなので。
1016 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 00:55:26.44 ID:e+9hDAP+.net] ベーマガ読者は他人の作るゲームのコードを読んでゲーム作りを学んだ 君も他人が作ったシューティングゲームのソースコードを読んで学びたまえ
1017 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 02:53:02.62 ID:65D9XPrw.net] ダブルバッファリングこそ基本部分だろ
1018 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 06:31:18.32 ID:11J081WA.net] じゃんけんのプログラムを作っています。 そこで、三連勝した場合に戦績を表示し、終了としたいのですが、どうも連勝をどう認識させたものかと頭を抱えています。 ちなみにfor.ifを主に使っているのでのそのあたりでの回答まってます。
1019 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 07:04:15.16 ID:XpqmwTlq.net] >>974 ゲームを管理するクラスにルールを追加すればええやん?
1020 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 08:28:28.15 ID:Mx4KXNAB.net] >>971 どっちでもいいと思うよ。 自作のダブルバッファにしてもそれほど大きな改修にはならないはず。
1021 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 13:33:45.19 ID:qkxeTacg.net] >>968 >>969 情報ありがとうございました。 両者の違いがよく分かりました。感謝です。
1022 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 16:12:41.33 ID:iqHwumYB.net] JPanelは基本的にだぶるばっふぁりんぐですよね?
1023 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 16:31:46.36 ID:jw6mzYCu.net] >>974 int i; while(i!=3){ if(勝った){ i++; }if else(負けた){ i=0; } } こんな感じでいいと思う。 if-elseじゃなくてif-if elseなのはあいこのばあいがあるから。あいこは許さない3連勝ならif-elseに書き換えて使えばいい。
1024 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 17:54:45.05 ID:11J081WA.net] >>975 >>979 返事ありがとうございます! 参考にさせていただきます!
1025 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 19:05:17.19 ID:sMeoSVMb.net] >>980 あっ。質問内容から初心者っぽいから困らないように一応言っておくけど条件文の勝った、負けたは自分で作って置き換えてね。 そうしないとコンパイルエラーになるから。
1026 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 20:17:05.46 ID:eLNPPsAE.net] Javaを自在にコーティングできる男になったら彼女できますか?
1027 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 20:28:14.96 ID:bObSCidj.net] よりどり緑黄緑
1028 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 21:33:21.42 ID:eLNPPsAE.net] >>983 マジっすか、精進します
1029 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 21:12:09.49 ID:fJYVE8hr.net] シューティングゲーム作ってたら定数の便利さに始めて気づいた。 Game.Finalクラスに定数宣言を大量にしてimport static Game.Final.*;すればソースがかなり読みやすくなった。
1030 名前:デフォルトの名無しさん mailto:sage [2015/06/
] [ここ壊れてます]
1031 名前:25(木) 21:19:13.98 ID:TDcnlZ9r.net mailto: ちょっとした小規模なゲームくらいならそれでいいけど、 プログラミングで飯を食う気があるならマスターを使った設計を覚えていったほうがいい [] [ここ壊れてます]
1032 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 21:21:54.03 ID:bZY2/BzP.net] >>985 せめてプロパティにしようか
1033 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 21:44:16.33 ID:fJYVE8hr.net] >>987 プロパティファイル使い方がいまいち分からない・・・ IDEで実行したら普通に読み込むけどjarにしたらファイル名指定しても読み込まないし。。 テキストとしてなら読み込めるのに同じパスでプロパティファイルとして読み込んだら読み込めないし。
1034 名前:デフォルトの名無しさん [2015/06/25(木) 22:03:46.86 ID:XxFekGl2.net] >>988 プロパティってそのことじゃないと思うぞ。 C#のプロパティでも調べてみろよ。
1035 名前:ピラフ [2015/06/25(木) 22:05:39.51 ID:14jSY/XS.net] >>988 Hogeってクラスがあるとすると、 Hoge.class.getResource("/hogehoge.properties"); みたいな感じでいけるっすよ。 プロパティファイルがある場所をクラスパスに追加することをお忘れなく。
1036 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 22:20:11.62 ID:vom2QN3t.net] {aaa:'AAA', bbb:'BBB',ccc:'CCC'}の CCCをDDDに変える方法ありますか? 要するにオブジェクトの一部の要素だけを変更したいのです。
1037 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 23:11:10.40 ID:fJYVE8hr.net] CCCってフィールド?それならsetCCC作れば?
1038 名前:デフォルトの名無しさん mailto:sage [2015/06/25(木) 23:41:25.60 ID:vom2QN3t.net] >>992 {aaa:'AAA', bbb:'BBB',ccc:'DDD'} にしたいんですが、setCCCの中身を教えてケロ。
1039 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 00:51:56.31 ID:YDMm982T.net] >>993 setXXXてメソッド名なんだから、中身は分かりそうなものだけどな。 分からないならいっそのことpublicフィールドにしたら?
1040 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 01:46:45.86 ID:OemPIHzf.net] >>994 ヒント教えてちょう
1041 名前:デフォルトの名無しさん [2015/06/26(金) 03:59:12.38 ID:v/WPuA7F.net] 電卓アプリつくってるんだがBigDecimalってどう使えばいい?
1042 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 04:19:49.49 ID:R6XfhbFY.net] うめ
1043 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 08:03:35.52 ID:4DNS96Of.net] 次スレどうする?
1044 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 09:09:20.54 ID:OemPIHzf.net] >>995 間違えていました。 ここはJavaのスレなんですね。 JavaScriptでやりたいんです。
1045 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 09:15:10.59 ID:JT44zZTW.net] 取り下げれば
1046 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 09:53:01.55 ID:OemPIHzf.net] >>1000 無駄に埋めるくらいなら(990)、残り6レスで答えを教えてケレ。 Java出来るんならJavaScriptも出来るでしょ?
1047 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 10:51:26.75 ID:jWa9J4oZ.net] lodashかunderscore入れて_.extend(obj, {c: 'DDD' }) setXXXみたいなJavaドカタ的発想はいらない
1048 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 11:42:49.26 ID:lmpExqE6.net] >>1001 お前の都合なんか知らん
1049 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 12:32:24.34 ID:URWcDRoL.net] 埋め
1050 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 13:13:21.26 ID:x59SrReZ.net] 梅
1051 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 14:08:35.77 ID:knUZ0gVh.net] 茶漬け
1052 名前:デフォルトの名無しさん mailto:sage [2015/06/26(金) 14:12:39.94 ID:I0KrLWwV.net] 梅 ★★Java質問・相談スレッド174★★ [転載禁止]©2ch.net peace.2ch.net/test/read.cgi/tech/1435295532/
1053 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。
1054 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています