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


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

☆★Java質問・相談スレッド175★★



1 名前:デフォルトの名無しさん mailto:sage [2015/10/23(金) 23:09:24.14 ID:sB1GrBUA.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質問・相談スレッド174★★ [転載禁止]©2ch.net
peace.2ch.net/test/read.cgi/tech/1435295532/

641 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 17:38:52.32 ID:R42ZH+Ca.net]
やっぱりwebの需要が強いんですね ありがとうございました

642 名前:デフォルトの名無しさん [2015/12/31(木) 17:50:24.16 ID:JsWWOg21.net]
> 研究をグラフィカルに表示できたら
どういう研究か、何を表示したいかによるけど、
Javaのチャート系のライブラリってあんまり綺麗に表示できるの無いんだよな、古いのが多くて
デスクトップアプリで作るんなら Swing、JavaFX 使ってもいいけど、少なくとも今時アプレットだけはない

JavaScript, HTML5, CSS3 のほうがまぁ良いと思うよ、Java よりチャート系ライブラリ豊富だし、
自分のホームページに掲載するのも容易だし、将来役に立つ可能性も高い

643 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 17:53:32.73 ID:39PzHskE.net]
Javaってもう終わりなの・・・

644 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:10:59.05 ID:RysGmr8V.net]
>>638
終わりもクソも有史以来Javaが一般人の目に触れるところで流行ったのなんて
20年前のJavaアプレットや携帯アプリだけだよ(AndroidはJavaではない)
Javaはサーバーで使うもの

645 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:16:44.45 ID:LorZqh4P.net]
研究でのグラフィック表示をチャートとかプロットと仮定すれば、いまならipythonか、
まぜまぜのjupyterがおすすめ
javaはよほど必要なライブラリがあるとかの理由がない限り、研究目的だと時間の無駄

研究で表示するためのコードなんてメモ書きレベルで十分なわけで、それをjavaで書くと
毎回清書させられるみたいな感じになる

多数のサンプル
https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks

646 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:17:01.73 ID:gRwFawaE.net]
終わりはしないだろう
使う側の経営陣からすれば言語なんてどうでも良いもの
高いシェアを獲得して実績もあって人も多いJavaは、業務システムでまだまだ生き残る

ただ、ほかの分野ではJavaScriptが強すぎてほかの言語はほとんど落ち目だ
マルチプラットフォームのexeを作れるだけでもびびるのに、ついにOSまで出てきたからな

647 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:17:32.97 ID:39PzHskE.net]
>>639
Javaってサーバー用だってのか
最近Javaの勉強始めたんだけど失敗だったみたい・・・
Javaやれば他のプログラムやるにも基本になるかなって思ったのが間違いの元だったんだ・・・

648 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:47:10.38 ID:gJy9w4AY.net]
>>642
いや失敗とまではいいきれない

649 名前:デフォルトの名無しさん [2015/12/31(木) 18:56:37.62 ID:ATqPO2P8.net]
>>642
画面周りはスタンダードというものがない。

一般人がWebサイトをよく見ているので、業務系システムも面倒なWebアプリケーションになる。

だからといってWebアプリケーションが作れて、見えない地味な部分もできるとなると現状、Java環境くらいしかない。

C言語なんて画面のことすら考えていない言語だからな。

画面なら好きなように実装してくださいというのが、昔からの流れ。



650 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 19:00:14.40 ID:LorZqh4P.net]
>>642
手続き型プログラミングならjavaで一通り揃ってるからプログラミングの勉強としては
悪いとは思わないし、他の言語の理解にも大いに役に立つよ

簡単に、目に見える成果物を出したいのであればおすすめできる言語だとは思わない

651 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 19:21:20.71 ID:39PzHskE.net]
>>643>>644>>645
そうなんですか勉強続ける気になりました
スッキリ分かるJava入門て本を勧められて昨日今日で200ページぐらい読んだところだけどこの年末年始で読み切ります!

652 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 20:17:35.53 ID:OPAnRAp+.net]
AndroidはJavaだけど別扱い

653 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 20:40:09.67 ID:5TVccR8x.net]
×AndroidはJavaである
○Androidが使っているのはJavaAPIとJava言語でありJavaではない
Googleの言い分な
なお敗訴した模様

654 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 21:13:24.20 ID:5n3rP/KF.net]
www.extremetech.com/mobile/220136-google-plans-to-remove-oracles-java-apis-from-android-n
getnews.jp/archives/1328166

これ

655 名前:スッキリ厨 mailto:sage [2015/12/31(木) 21:56:18.68 ID:EUZydMuq.net]
スッキリわかる Java入門 第2版、2014
この本で、オブジェクト指向を学ぶのが、
すべてのプログラミング言語の基本

その後、この2冊を読む
たのしいRuby 第4版、2013
みんなのPython 第3版

他には、Groovy, JavaScript+HTML+CSS など

とにかく、スッキリわかる Java入門を読んでいないと、
何も始まらない

656 名前:デフォルトの名無しさん [2015/12/31(木) 22:09:28.38 ID:+nLmKLu1.net]
オンラインエディタの https://paiza.io/ で基本描画の勉強をし始めましたが、
エラーが出て進めません。
※paizaは保存の必要が無ければ無登録で利用できます。

元ネタは
syunpon.com/programing/java/sample/swing/rectsample1.shtml#sample01
で、単に緑色の矩形を表示させるだけのものです。

コードをそのままコピペして実行したところ 
uproda.2ch-library.com/912008Zpt/lib912008.png
のようになりました。 

main() のところに問題があるようですがどう修正すべきか分かりません。

どなたかアドバイス下さい。

657 名前:651 mailto:sage [2015/12/31(木) 22:12:02.42 ID:+nLmKLu1.net]
(追記)僕のコードと実行結果は
https://paiza.io/projects/aziCzc5MU4OBH6S26OMeEQ
で直接見れます

658 名前:デフォルトの名無しさん [2015/12/31(木) 22:20:00.40 ID:cXVC2Dha.net]
>>651
Mainクラスのmainがありませんっていうエラーだから
クラス名をMainに変えればそのエラーは回避できるだろうけれども
プログラムがサーバで実行される環境でGUIの描画はできないのじゃないか常識的に考えて

659 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 22:39:01.14 ID:A+KqDs1j.net]
>>653
これはファイル名をMain.javaにしてクラス名もMainにしないとダメなサービスだね
だめなやつだ
で、上の人も説明している通り、グラフィック描画できなくて結局動かないですよ



660 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 22:57:11.42 ID:EUZydMuq.net]
paiza, codepad は、ログイン無しでプログラミングできる

でも、groovy がない

661 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 23:16:25.88 ID:2anvHRU0.net]
ideone使えば良いじゃない?

662 名前:651 mailto:sage [2015/12/31(木) 23:56:00.48 ID:+nLmKLu1.net]
>>653-656
thx

一応、クラス名とファイル名をMainにしてやってみましたが何かエラーが増えました
https://paiza.io/projects/aziCzc5MU4OBH6S26OMeEQ

ideone でやってみましたが、上と同じ状況です。 ideone.com/zDkeOa

オンラインエディタでは描画自体がダメなのかも

663 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 00:01:48.07 ID:NxMwt7DA.net]
groovyあるよ

melpon.org/wandbox

664 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 00:08:43.11 ID:s1q5sKKf.net]
>>658
う〜ん、元のコードと>>657のコードの両方で試しましたがダメでした

665 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 00:14:35.32 ID:Pj/Op4LU.net]
エラーの理由を前に二人も書いてくれているのに読まずに
「何かエラーが増えました」とは失礼な奴だな

666 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 00:25:11.73 ID:s1q5sKKf.net]
>>660
paizaではクラス名とファイル名をMainにしてやってみました。
groovyとideoneではファイル名の指定はできません。 

667 名前:デフォルトの名無しさん [2016/01/01(金) 09:14:03.76 ID:sVrrx3Fu.net]
スッキリ本が評判ですがそれを読み終えたら実践編へと続くのがいいですか?
この実践編も評判いいですか?

668 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 09:54:37.71 ID:sbEMjwWA.net]
入門、実践ともに、一通りの作業をつまみ食いしてるんだから、
新人研修っぽいことを一通りしてみたいなら実践編までおわらせれば
いいんじゃないの?更に次の本までね

他の言語への足がかりなら実践編いらないし、javaを真面目にやるなら
個々の話を別で掘り下げないといけない

ページ数は2冊あわせるとアメリカの教科書に匹敵するけど、
情報量はそれほどでもないかな

669 名前:デフォルトの名無しさん [2016/01/01(金) 10:09:38.54 ID:sVrrx3Fu.net]
>>663
ありがとうございます。
とりあえず実践編に進みます。
更に次の本とはサーブレットの本のことですかね?
Javaは真面目にやるつもりですが個々の話とはどういうことですか?
このスッキリシリーズでは得られにくいものがあるから他の本でいいものがあるのですか?
そのタイトルとは?



670 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 11:12:05.62 ID:sbEMjwWA.net]
>>664
javaの知識としては、入門と実践あわせて、アメリカの分厚い入門書より少なめ
アメリカの教科書は練習問題も膨大だからoutput部分でさらに差がつくかな
javaのコア部分ならパーフェクトJava 2edあたりを読んでみるといい

言語コアを超えると、Javaだけに縛られずにデータ構造とアルゴリズム、
オブジェクト指向、デザインパターンとかテーマごとに広い世界が待っている
これらは入門、実践を通して触れられているけど、触れているだけだからね

あとは平行して、自分で解決したい問題を設定してそれに使えそうなライブラリを
調べて使ってみる
たとえば、GUIのどれかの基本とGoogleMap APIを使えば、経路探索
アルゴリズムを勉強するときに、自分のアルゴリズムをgooglemapの
データ上に表示とかできて楽しめる

671 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 11:26:28.99 ID:FaFDYlKq.net]
ある程度わかってきたら他の言語もやることをお勧めする
Java齧った人が入りやすくて便利なのはPythonかな
一つの言語ばかりやってると変な癖が付くし本質を本当に理解するのは難しい

672 名前:デフォルトの名無しさん [2016/01/01(金) 11:35:04.81 ID:sVrrx3Fu.net]
>>665
ありがとうございます。
GUIのどれかの基本とはSwiftのことでしょうか?
Googleマップの独自アルゴリズムとはどういうものでしょうか?
ひょっとして太い道路しか使わないとか、曲がるなら右しか曲がらない、のような感じですか?

673 名前:デフォルトの名無しさん [2016/01/01(金) 11:35:56.67 ID:sVrrx3Fu.net]
>>666
Pythonはなにができますか?
プログラミング言語って1つJava覚えればできるだけそれだけでいろいろできるのではないのですか?

674 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 11:52:48.69 ID:FaFDYlKq.net]
>>668
プログラミング言語なんて作りたいものに応じて選ぶもんだ
必要なら未経験の言語だって使う
複数の言語をやると、言語なんてプログラミングにおいてそれほど重要な要素ではないことが分かる
例えばPythonは「大量のCSVファイルを集計してグラフを作りたい」みたいな仕事はJavaの1/10くらいのコードで書ける

675 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 17:01:24.85 ID:hiTInZp8.net]
Listの内容をJSPでテーブル出力したいんですが、なんとなくダサイです。
もっといい方法はないでしょうか?

今はこんな状態です。
<%
for(Human human : humanList){
out.println("<tr><td>"+human.getCode()+"</td>"+"<td>"+human.getName()+"</td><td>"+human.getFishClass()+"</td></tr>");
}
%>

676 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 17:17:18.58 ID:ccisxAxM.net]
jstl使えば見やすくはなる

677 名前:デフォルトの名無しさん mailto:sage [2016/01/01(金) 19:03:00.48 ID:hiTInZp8.net]
>>671
ありがとうございます。だいぶ見やすくなりました。

678 名前:デフォルトの名無しさん mailto:sage [2016/01/02(土) 03:47:22.32 ID:zfNCHDGM.net]
サーブレットを勉強するのにこの本を買おうと思ってるんですが、もし既読の方いらしたら感想を頂けませんか?
www.amazon.co.jp/dp/4798140929/

679 名前:デフォルトの名無しさん mailto:sage [2016/01/02(土) 05:41:15.31 ID:zfNCHDGM.net]
ServletでJSPのデータを取得したいのですが、JSPの"${l.code}"の部分(数値)とinputの入力値をセットで取得するにはどうしたらいいでしょうか。
今は下記のソースで、inputの値だけ受け取れる状態です。

JSP側
<form name="form" method="post" action="TestClass">
<table>
<c:forEach var="l" items="${list}">
<tr>
<td><c:out value="${l.code}" /></td>
<td><c:out value="${l.name}" /></td>
<td><input name="count" type="text" /></td>
</tr>
</c:forEach>
</table>
<input type="submit" value="送信">
</form>

Servlet側
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String[] b = request.getParameterValues("count");
}



680 名前:デフォルトの名無しさん mailto:sage [2016/01/02(土) 09:10:03.66 ID:B+tUCmqX.net]
>String[] b = request.getParameterValues("count");

request.setCharacterEncoding("UTF-8")もいるかも?

request.getParameter() かな?

681 名前:デフォルトの名無しさん [2016/01/04(月) 13:39:26.28 ID:z+lfqffG.net]
Innerクラスについて、勉強してるんだけど、Innerクラスって必要??

682 名前:デフォルトの名無しさん [2016/01/04(月) 13:43:02.67 ID:BoIdS338.net]
いんな(inner)い。

683 名前:デフォルトの名無しさん [2016/01/04(月) 13:43:30.81 ID:BoIdS338.net]
Android開発でも匿名クラスはあたりまえのように頻発してるがな。

684 名前:デフォルトの名無しさん [2016/01/04(月) 13:51:56.74 ID:z+lfqffG.net]
Innerクラス(メンバクラス、ローカルクラス、匿名クラス)
どれが一番頻繁にでる?
重要?
Innerクラス、勉強しなくてもいいって言われたんだけど、実際はどうなの??
因みに私は24歳で新人です><

685 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 14:08:16.63 ID:8cSrjSdZ.net]
設計によるけど、staticなnested classでダメな設計したときに
non-staticなinner classの出番

686 名前:デフォルトの名無しさん [2016/01/04(月) 15:46:12.49 ID:MZiI0bqz.net]
匿名クラスが一番使うかな、Java8 でラムダ式使えるようになったから、減らせるようになったけど
ローカルクラスは使ってるのほっとんど見たこと無い、マニアック文法ってイメージ
メンバクラスはまぁまぁ使ってるの見るかな(普通に Inner クラスって言ったらこの事指すから、メンバクラスって用語はあんまり聞かない)

後は、用語としては間違いだけど、static nested class の事を static inner class って呼ぶ人がたまにいる
こっちは、1つのファイルに複数のクラスが宣言出来るようになってからはあんまり使われなくなったけど
クラスで囲って private にしたい時とかはまだ使うかな

687 名前:デフォルトの名無しさん [2016/01/04(月) 18:30:59.20 ID:eOB5Bsfb.net]
基本情報のJavaの穴埋めがなかなか理解できないんですが、どういう方法で勉強したらいいでしょうか?
全ての変数に適当な値を入れて、全ての選択肢のケースでそれぞれどうなるかを地道にトレースするのが一番でしょうか?

仕事でプログラムやってると、何も考えずにスラスラ解けるようになるのでしょうか?(個人差はあると思いますが)

688 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 18:48:02.63 ID:PkjUEXaT.net]
>>682
javaは無駄にコード量が多くてまわりから虫食い情報を引き出しやすいから
基礎を理解できてれば慣れるだけ

仕事ではIDE様が助言してくれるから虫食い問題は役に立たない

689 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 19:03:57.81 ID:j+bLPT4m.net]
選択肢どころかほぼ同内容の全文を書き下ろせないと仕事にならんよ

ロジックが追えないなら末尾側から追っていくといい
最終的なアウトプットのこれを導くためにどれとどれがどう作用しているか?
と見ていくと無駄が少ない



690 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 19:06:04.69 ID:gIMpbeX1.net]
>>683は勘違いしてるみたいだが、基本情報の穴埋めというのは基本的にJavaの文法ではなくロジックとアルゴリズムの問題だ
基本情報レベルだと仕様を読んでコードに起こす能力が求められているわけで、
アルゴリズムの本を読む他は結局はプログラミングの練習をするしかない
プログラム書けないなら時間の無駄だからExcelに転向したほうがいい

691 名前:682 mailto:sage [2016/01/04(月) 19:14:36.83 ID:eOB5Bsfb.net]
>>683-685
ありがとうございます。
とりあえずJava Bronzeはとったのですが、基本情報向けとしては力不足でしょうか。
自分では簡単なサーブレット/JSPを作ってみたりしてるのですが、他人が書いたソースを読む事になるとゲンナリする感じです。

692 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 19:30:53.68 ID:6F31ySkc.net]
>>686
>とりあえずJava Bronzeはとったのですが、基本情報向けとしては力不足でしょうか。

過去問やってわからないならそうじゃないの?

693 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 21:24:32.22 ID:dQET1/AT.net]
そこまでやって基本情報レベルが分からないなら向いてないんじゃない?
アルゴリズムの本買ってきて自分で一通り実装するくらいしないとダメだと思う

694 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 22:44:14.51 ID:V5gihq4M.net]
ローカルクラス初めて知った

695 名前:デフォルトの名無しさん mailto:sage [2016/01/04(月) 23:46:33.21 ID:O1teGQFD.net]
>>688
同意、公務員試験でも目指したら

696 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 06:54:01.20 ID:sWMEArmd.net]
スッキリわかるServlet&JSPという入門書を読んでいるのですが、JSPの高性能版?なJSFというのがあるそうなのですが、
今から覚えるならJSPではなくてJSFのほうがいいのでしょうか?

697 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 10:18:51.53 ID:C6YUc6a7.net]
JavaFX上で非同期処理をするため、自作でListenerクラスと非同期の処理クラスを作って、処理させたい側から非同期処理クラスにGUIコンポーネントの更新処理をオーバーライドして書き込んだListenerを渡して処理させているのですが、
非同期処理クラス→Listener→GUIコンポーネントの繋がりで参照が残ってしまっているのか、GUIコンポーネントを使わなくなってもリソースが開放されずメモリリークが発生してしまいます。

このようなことが起こらないためには、どのように実装するのが一般的なのでしょうか

698 名前:デフォルトの名無しさん [2016/01/05(火) 11:28:19.72 ID:VgKFWf5a.net]
ログイン機能をJavaで作りたいんですけど、画面系の環境設定せず、作れますか?
私のeclipseだと、文字しか表示されません
環境設定は自分でやる自信がありません。eclipseが壊れるから

699 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 14:00:58.52 ID:f7uXcioj.net]
>>691
JSF等のフレームワーク



700 名前:デフォルトの名無しさん [2016/01/05(火) 15:40:45.23 ID:rNrMefwE.net]
>>692
説明下手くそ過ぎてほとんど何言ってるかわからない
どういうコード組んでどういう風に参照が残ってしまうのか、実行可能で簡潔なプログラムで示してくれ

とりあえず思うのは、非同期処理クラスがリスナへの参照を持っているってのは変
処理を使い回す(非同期処理としても呼び出したい)ならリスナとは分けてメソッドを別に書いたほうが良い

701 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 17:14:30.47 ID:Oys3mgVD.net]
class MyImageLoader{
static private ArrayList<MyListener> listeners = new ArrayList<>();
static private Executor executor = Executors.newCachedThreadPool();
public static void addListener(MyListener listener){
listeners.add(listener);}
public static void loadImage(Url url){
executor.execute(new Runnable(){
@Override
public void run(){
Image image= // ここでUrlから画像を読み込み
for(MyListener listener:listeners){
listener.loadImage(image);
}}});}}
interface MyListener{
public void loadImage(Image image);
}
class MyFXMLController{
final ImageView imageView = new ImageView();
MyFXMLController{
MyImageLoader.addListener(new MyListener(){
@Overide
public void loadImage(Image image){
Platform.runLator(new Runnable(){
@Override
public void run(){
imageView.setImage(image);
}});}});}
public void showImage(Url url){
MyImageLoader.loadImage(url);
}
}
言葉足らずですみません。概ね この状態です。(改行規制のためカッコを改行せずに閉じています)

702 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 17:16:15.62 ID:Oys3mgVD.net]
MyImageLoaderの中のArrayListに入っているMyListenerがImageViewへの参照を持っています。
>>695
リスナとメソッドを分けるというのはどういうふうにすればよいのでしょうか?

703 名前:デフォルトの名無しさん [2016/01/05(火) 17:54:16.31 ID:VgKFWf5a.net]
import java.util.function.IntBinaryOperator;

public class Test76 {
public static int sub(int a, int b) {
return a - b;
}

public static int cal(int x) {
x *= 2;// 6
x += 3;// x=6+3→x=9
return x;
}

public static void main(String[] args) {
// subメソッドの処理ロジックを、変数funcに代入する
// 代入されているのはsubメソッドへの参照
IntBinaryOperator func = Test76::sub;

// 変数funcに格納されている処理ロジックを引数5と3で実行する
int a = func.applyAsInt(5, 3);
System.out.println("5-3は" + a);

IntBinaryOperator func2 = Test76::cal;
int b = func2.applyAsInt(1);
}

}

これ、なんでエラー?

704 名前:デフォルトの名無しさん [2016/01/05(火) 18:24:42.44 ID:VgKFWf5a.net]
エラーにならなくなるにはどうすればいいの?

705 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 18:34:53.74 ID:tTU6gw0u.net]
>>699
まず全裸になり、自分の尻を両手でバンバン叩きながら白目をむき
「びっくりするほどユートピア!びっくりするほどユートピア!」
とハイトーンで連呼しながらベットを昇り降りする

これを10分程続けると妙な脱力感に襲われ、解脱気分に浸れる

706 名前:デフォルトの名無しさん [2016/01/05(火) 19:00:36.49 ID:rNrMefwE.net]
>>696, 697

実行可能なプログラムって言ってるのに、なんでコンパイルすら通らないプログラム渡してくるんだよ…
main もないし、綴り間違いもあるし

非同期処理とか関係なくて、要するにこういうプログラム書いて、メモリリークしてるーって言ってるんだよね

pastebin.com/QR8XCxmw

707 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 19:32:55.97 ID:C3hlmsJm.net]
>>701
外出先でケータイで書いていたものでして。お手数をお掛けしてすみません。

そうです。タスクにコンポーネントへの強参照が残っているので、ガベージコレクションの対象になりません。
弱参照を使えば解決できるのはわかるのですが、そもそも設計自体に問題があるような気がして質問させて頂きました

708 名前:デフォルトの名無しさん [2016/01/05(火) 20:31:01.45 ID:rNrMefwE.net]
>>702

>>701 のプログラムの問題点は単に強参照を残したまま放置してること
TextField を remove した時に、TextLoaderManager から対応する TextLoader (あなたの言うリスナ) を削除すれば解決する
弱参照使っても解決するけど、WeakReference ってのはコスト高めだからできるならやめたほうが良い

設計がおかしいかどうかはプログラム見てみないとわからない
例えば >>701 をメモリリークなしで実現するだけなら、
わざわざ TextField への参照をもつ TextLoaderManager なんか作らなければいいだけだし
pastebin.com/0agxjUpL

709 名前:デフォルトの名無しさん mailto:sage [2016/01/05(火) 22:45:19.38 ID:LXERuTXK.net]
>>698,699
IntBinaryOperator#applyAsInt(int,int)
IntUnaryOperator#applyAsInt(int)



710 名前:デフォルトの名無しさん [2016/01/06(水) 01:56:51.70 ID:MDvEEgkc.net]
javax.scriptのクラスってどういうアプリを作るときに使うんですか?

711 名前:デフォルトの名無しさん [2016/01/06(水) 09:23:09.32 ID:VMneMEc+.net]
>>705
ググレカス

712 名前:デフォルトの名無しさん mailto:sage [2016/01/06(水) 10:01:02.20 ID:IGqZso0+.net]
>>703
専用のクラス等があるのかもと思いましたが、地道に開放処理を書いていくしかなさそうですね

ソースコードを公開できる種類のものではないので、自分で考え直してみたい思います。
ありがとうございました

713 名前:デフォルトの名無しさん [2016/01/06(水) 13:12:54.08 ID:a8PR2+G7.net]
■変数へのメソッド参照の格納
メソッドがstaticの場合
変数名 = クラス名 :: そのクラスの静的メソッド名
メソッドが非staticの場合
変数名 = インスタンス変数名 :: そのインスタンスのメソッド名

メソッドが非staticの場合の例を下さい!

714 名前:デフォルトの名無しさん [2016/01/06(水) 14:02:05.22 ID:Rj8baaAT.net]
最近始めた者なんですがテキストファイルへの入出力?でつまづいています
質問なのですが、コマンドライン引数に入れるテキストファイル名は既に存在している必要がありますか?

715 名前:デフォルトの名無しさん [2016/01/06(水) 14:32:35.35 ID:Rj8baaAT.net]
askclose は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
というエラーはどういう意味ですか?
エディタはCpadで、コンパイラのパスは間違っていないはずなのですが

716 名前:デフォルトの名無しさん [2016/01/06(水) 14:35:21.83 ID:gbLUTWbO.net]
>>709
コマンドライン引数ってのは、単に main メソッドの引数として使われるってだけ
そのファイルが存在してないとエラー/例外が発生するかどうかはどんなプログラム組んでるかで変わってくる

717 名前:デフォルトの名無しさん [2016/01/06(水) 14:42:29.10 ID:gbLUTWbO.net]
>>710
detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1169453111
これじゃないの?

718 名前:デフォルトの名無しさん [2016/01/06(水) 14:50:42.76 ID:Rj8baaAT.net]
>>712
使っているのはJcpadですが症状はこの通りです 実行された瞬間に画面が消えるのです

public class test{
public static void main(String[] args){
System.out.println("Hello java");
}
}

例えば上記を実行したときは
Hello java
-askcloseは内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
と表示されます

フォルダ、ファイル名に日本語やスペースは含まれていません
コマンドの切れ目の解釈?はよくわかりませんが...

719 名前:デフォルトの名無しさん [2016/01/06(水) 15:01:54.63 ID:gbLUTWbO.net]
>>713
JCPad ってのダウンロードしてみてやってみたが、そのコードで普通にコンパイル実行できたぞ
というか、Java2 SE とか糞古い言葉書いてあるし、普通に eclipse とか他の IDE 使うか、コマンドラインでやれば?



720 名前:デフォルトの名無しさん mailto:sage [2016/01/06(水) 15:12:16.78 ID:TV0Wmsb0.net]
>>713
CPad for Java2 SDK 2.31というやつですかね?
ダウンロードして試してみたけど件のエラーはでないですね
実行後に表示されるコンソールのスクリーンショットを見せてもらえれば
ヒントになる情報があるかもしれませんが、エラーを抑制するだけなら、
実行-設定-実行タブ
にある「実行時のウィンドウ制御」を「制御しない」に変更すればいけるかも

721 名前:デフォルトの名無しさん [2016/01/06(水) 15:13:23.94 ID:Rj8baaAT.net]
>>714
実はまだ学生で、学校ではこのエディタを使用しているのでこれを使えるようにしておきたいのです..

ここの方が想像しているより遥かに初心者なのでみなさんなら当たり前にこなしてしまうところでつまずいているみたいです...

722 名前:デフォルトの名無しさん [2016/01/06(水) 15:21:25.70 ID:Rj8baaAT.net]
>>715
そうです!
ウィンドウ制御の設定を変更してみたところ、先程のエラー文は消えました
しかし Thread"th"is not found.in Remove.Thread() なるエラーが別のウィンドウで出てきました

723 名前:デフォルトの名無しさん [2016/01/06(水) 15:36:29.89 ID:gbLUTWbO.net]
>>717
そのエラー出たソースコード載せてもらわないと…
エスパーじゃないんだから

724 名前:デフォルトの名無しさん [2016/01/06(水) 15:39:21.63 ID:Rj8baaAT.net]
>>718
public class test{
public static void main(String[] args){
System.out.println("Hello java");
}
}
これです!ソースコードってこういうことですよね?おかしいこと言ってたらごめんなさい

725 名前:デフォルトの名無しさん [2016/01/06(水) 15:44:04.50 ID:gbLUTWbO.net]
>>719
あぁ、すまんソース自体はいじってないのか。

726 名前:デフォルトの名無しさん [2016/01/06(水) 15:45:39.84 ID:gbLUTWbO.net]
>>719
とりあえず、コンパイラのパスに設定してる値見せてくれる?

727 名前:デフォルトの名無しさん [2016/01/06(水) 15:53:46.49 ID:Rj8baaAT.net]
>>721
iup.2ch-library.com/i/i1576713-1452063128.png
これであってるでしょうか...画像を上げるのすらはじめてですが

728 名前:デフォルトの名無しさん [2016/01/06(水) 15:59:23.16 ID:gbLUTWbO.net]
>>722
まぁ設定はおかしくはないかな。

クラスファイル(.class)はできてる?
できてるならコマンドラインからそのクラスファイル実行できる?

とりあえず俺は、こんな感じで設定して
i.imgur.com/Dd5sRiR.png
ここで青い三角の実行ボタン押せば
i.imgur.com/DPCBX31.png
普通に実行できたぞ、なんにも設定いじらず
i.imgur.com/oAQENWg.png

729 名前:デフォルトの名無しさん [2016/01/06(水) 16:23:34.15 ID:Rj8baaAT.net]
>>722
クラスファイルはあります!
学校で一番最初に設定したパソコンではその手順でできるんですが、以降自分で設定すると不具合が起きるので
自分が何かを間違っているんだと思うんですがそれがなにかさっぱりわからないんです

あと仰っていることとはまた違うのかもしれませんが、コマンドラインにtest.javaを入れてもう一回Jcpadで開くと普通に実行できました



730 名前:デフォルトの名無しさん [2016/01/06(水) 16:24:00.82 ID:Rj8baaAT.net]
>>723ですね、失礼しました

731 名前:デフォルトの名無しさん mailto:sage [2016/01/06(水) 16:24:27.37 ID:C6lgir8o.net]
Oracle認定Java bronse の教科書のお勧めは。

732 名前:デフォルトの名無しさん [2016/01/06(水) 16:30:11.87 ID:gbLUTWbO.net]
>>724
> クラスファイルはあります!
それを java コマンドでコマンドラインから実行できるか聞いてるんやで…

> コマンドラインにtest.javaを入れてもう一回Jcpadで開くと普通に実行できました
コマンドラインに test.java を入れるとか意味わからん。日本語でおk!

733 名前:ピカチュウ [2016/01/06(水) 16:59:23.41 ID:a8PR2+G7.net]
■変数へのメソッド参照の格納
メソッドがstaticの場合
変数名 = クラス名 :: そのクラスの静的メソッド名
メソッドが非staticの場合
変数名 = インスタンス変数名 :: そのインスタンスのメソッド名

メソッドが非staticの場合の例を下さい!

734 名前:デフォルトの名無しさん [2016/01/06(水) 17:13:53.18 ID:gbLUTWbO.net]
>>728
ここでも読んどけ
www.ne.jp/asahi/hishidama/home/tech/java/methodreference.html

735 名前:ピカチュウ [2016/01/06(水) 17:36:02.19 ID:a8PR2+G7.net]
IntConsumerの例を下さい><

736 名前:デフォルトの名無しさん [2016/01/06(水) 17:47:19.61 ID:gbLUTWbO.net]
>>730
IntConsumer consumer = System.out::println;

consumer.accept(1);

737 名前:ピカチュウ [2016/01/06(水) 20:04:10.24 ID:a8PR2+G7.net]
IntConsumerの例ありがとうございます><

import java.util.function.*;

public class Test86 {
public static void main(String[] args) {
(IntBinaryOperator rrr. int a, int b) -> {
int result = rrr.applyAsInt(a, b) +
rrr.applyAsInt(a, b);
return result;
}
}
}
何故エラー?

738 名前:ピカチュウ [2016/01/06(水) 20:13:21.49 ID:a8PR2+G7.net]
IntConsumer consumer = System.out::println;
consumer.accept(1);
実行できました
それ以外のIntConsumerの例はありますか?

739 名前:デフォルトの名無しさん mailto:sage [2016/01/06(水) 20:40:42.24 ID:2BSVuGqW.net]
Selenium と JUnitを使ったテストについて質問があります。

Selenium Builderでテストを自動生成すると、自動的にControllerまでテストされちゃうと思います。
Selenium Builderで自動生成したテストは別に、Controllerのテストを書く必要ってあるのでしょうか?



740 名前:デフォルトの名無しさん [2016/01/06(水) 22:24:04.89 ID:vYy0/gWp.net]
これからプログラムを学びたいのですが、
JAVAとC#は、どちらがお仕事あるでしょうか?

C#のが高性能な気がしますが、
JAVAには歴史があるし、
迷っています。

741 名前:デフォルトの名無しさん mailto:sage [2016/01/06(水) 22:26:19.44 ID:1KAr6o/M.net]
>>735
ま板で聞けw






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

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

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