トップページ⇒tech
1001コメント273KB

★★Java質問・相談スレッド165★★

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2013/10/20(日) 19:30:39.35
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://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() を使え。※

前スレッド
★★Java質問・相談スレッド164★★
http://toro.2ch.net/test/read.cgi/tech/1378219684/
0247デフォルトの名無しさん2013/11/02(土) 07:39:35.86
次の方
0248デフォルトの名無しさん2013/11/02(土) 12:19:39.67
javaの中級レベルのテキストでお勧めのものはありませんか?
0249デフォルトの名無しさん2013/11/02(土) 12:26:52.72
effective java
0250デフォルトの名無しさん2013/11/02(土) 12:34:38.02
有難うございます
0251デフォルトの名無しさん2013/11/02(土) 12:38:46.61
でも第二版が品切れだな。
他のんない?
0252デフォルトの名無しさん2013/11/02(土) 15:02:28.40
>>249
改版するわけでもなさそうなのに、ピアソンて商売気ないのね
0253デフォルトの名無しさん2013/11/02(土) 16:00:47.98
ピアソン日本として活動してた会社がグループ離れて、全部絶版になった
0254デフォルトの名無しさん2013/11/02(土) 16:05:34.16
以前も業務提携解消で同じようなことがあったような気がするけど、
その時は、一部の本が別の会社が出て、
しばらくして、ピアソン日本で出るようになった記憶。
0255デフォルトの名無しさん2013/11/02(土) 17:14:11.82
使用しているサーバはTomcat5.5なんだけど、JDBCRealmのdigestをMD5に設定した途端に認証に失敗します。もちろんテーブルにMD5のパスワードを入れてるのですがうまくいきません。どうすればいいか教えてください。
0256デフォルトの名無しさん2013/11/02(土) 17:18:01.22
7.0にする
0257デフォルトの名無しさん2013/11/02(土) 18:01:43.61
spring <--> mybatisの連携をやろうと思っているんですが、
どうやってmybatisに依存性を注入すればいいんですか?

これじゃだと、依存性が注入されないんですが、やり方おかしいですか

@Service
public class Sample extends HttpServlet {
@Autowired
SqlSession sqlSession;
0258デフォルトの名無しさん2013/11/02(土) 18:50:10.95
Javaでわからないことを質問するスレ
http://kohada.2ch.net/test/read.cgi/prog/1363851093/
0259デフォルトの名無しさん2013/11/02(土) 19:03:05.10
>>258
このスレと何が違うの
0260デフォルトの名無しさん2013/11/02(土) 19:07:47.82
そこはこのスレより過疎、意味ない
0261デフォルトの名無しさん2013/11/02(土) 20:35:38.29
>>257
spring
http://toro.2ch.net/test/read.cgi/tech/1322414231/
0262デフォルトの名無しさん2013/11/02(土) 21:10:15.59
5 名前: 1 投稿日: 2013/03/21(木) 16:53:49.51
でもリンク書いてくれたスレ、レベル高いなぁ
もっとこう、初心者が気軽に書けるスレがあればいいんだが・・・

warota
02632572013/11/02(土) 22:28:32.53
>>261
誘導先に書き込んだら、自己解決してしまったorz

アスペクト指向って役に立つの?
ロギング、トランザクション、認証以外に用途が全く思いつかないんだけど
0264デフォルトの名無しさん2013/11/02(土) 22:36:42.97
>>263
コメント:書き方に気をつけましょう
0265デフォルトの名無しさん2013/11/03(日) 00:54:09.19
methodA()が呼び出される前・後に、ロギングするようにしたいのですが
どのようにすればいいでしょうか?
0266デフォルトの名無しさん2013/11/03(日) 01:43:29.34
リスペクトされてないアスペクト
02672642013/11/03(日) 08:16:43.37
>>263
「後だし」ていうんだよ
0268デフォルトの名無しさん2013/11/03(日) 08:21:09.13
>>265
「java メソッド呼び出し フック」ggrbしあわせ
0269デフォルトの名無しさん2013/11/03(日) 08:42:21.45
アスペは役に立たない
0270デフォルトの名無しさん2013/11/03(日) 13:51:29.11
ggrasaws
0271デフォルトの名無しさん2013/11/03(日) 15:54:33.89
gdgdurusai
0272デフォルトの名無しさん2013/11/03(日) 17:07:40.76
javaってas演算子無いんだね
キャストに失敗した時、nullがセットされるからめちゃ便利なのに
0273デフォルトの名無しさん2013/11/03(日) 17:12:33.14
>>272
castに失敗したらnullが返るけど

Class#cast (Java Platform SE 7 )
http://docs.oracle.com/javase/jp/7/api/java/lang/Class.html#cast(java.lang.Object)
0274デフォルトの名無しさん2013/11/03(日) 17:13:16.49
嘘はよくない
0275デフォルトの名無しさん2013/11/03(日) 17:18:52.73
SocketChannelクラスにbindが実装されてたんだな
0276デフォルトの名無しさん2013/11/03(日) 17:50:40.17
>>273
おもいっきり、DOCに例外が発生するって書いてないか
0277デフォルトの名無しさん2013/11/03(日) 17:51:36.30
>>273
おまえ一度もjavaに触ったことないんじゃね?
0278デフォルトの名無しさん2013/11/03(日) 20:49:32.47
きっとVMがSunやOracleやGoogleじゃないんだよ
MSとかさ
0279デフォルトの名無しさん2013/11/03(日) 22:44:53.52
それをいうならSunやOracleやIBMだろ
GoogleのああいうのこそまさにえせJava
0280デフォルトの名無しさん2013/11/03(日) 22:48:03.45
プログラミング言語としてのJava言語は特許とってないのか
0281デフォルトの名無しさん2013/11/03(日) 22:51:30.59
JVMやライブラリの中は特許だらけだよ
Oracle神以外が作った処理系をJavaとして世に出すには
Oracle神に大金を支払ってライセンスを受ける必要がある
0282デフォルトの名無しさん2013/11/03(日) 22:53:00.48
JVMを借用する言語を作ったらなんらかのライセンス問題にひっかかりますか?
0283デフォルトの名無しさん2013/11/03(日) 22:57:39.58
馬鹿には無理
0284デフォルトの名無しさん2013/11/03(日) 22:58:29.04
JVM上で動くJava言語ライクな言語を作ったらライセンス違反ですか?
0285デフォルトの名無しさん2013/11/03(日) 23:10:07.47
このご時世、何かしら特許で言いがかりを付けることは可能だろうね
ただ現実としてScalaみたいなのが問題になっていない以上、
あなたの言語がそれを超えることはあり得ないのでまず問題ないといえる
0286デフォルトの名無しさん2013/11/03(日) 23:20:32.59
じゃあ逆にJDKでのコンパイル物が実行できる俺俺JVMを作るのは
0287デフォルトの名無しさん2013/11/04(月) 00:45:08.93
>>286
それはアウト
GoogleとOracleは実際それで絶賛喧嘩中
0288デフォルトの名無しさん2013/11/04(月) 00:49:00.54
x86のエミュレータはOKだのにJVMのエミュレータはアウトなのか
0289デフォルトの名無しさん2013/11/04(月) 01:09:06.18
OpenJDKからフォークしたことにすればおk
GPLになっちゃうからドブに捨てるようなもんだけどな
0290デフォルトの名無しさん2013/11/04(月) 01:23:09.57
Integer Java Virtual Machine のエミュレータ試作 - 日本大学
www.tani.cs.chs.nihon-u.ac.jp/g-2004/karaika/ijvm.pdf

教育用JVMエミュレータの設計と試作
www.gsim.aoyama.ac.jp/~ida/jvm-emu

4L-3 教育用 JVM エミュレータの設計と試作
ci.nii.ac.jp/naid/110002894678

教育用なら大丈夫なんじゃね
0291デフォルトの名無しさん2013/11/04(月) 01:27:24.81
IKVM.NETとかKaffeもOracleに特許料を払ってたりするのか?
0292デフォルトの名無しさん2013/11/04(月) 01:43:52.99
取るに足らないからだよ
商業的に邪魔になるようなら攻撃される可能性はある
0293デフォルトの名無しさん2013/11/04(月) 02:01:40.94
IKVMなんて広く使われるようになったら訴訟確実だろうな
Javaの主戦時で衝突するわけで、Androidよりヤバイよあれ
0294デフォルトの名無しさん2013/11/04(月) 02:19:16.20
日本語版が欲しいところ

Oracle v. Google - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Oracle_v._Google
0295デフォルトの名無しさん2013/11/04(月) 02:23:08.66
Oracle対GoogleのAndroid/Java訴訟で「Java APIは著作権保護対象ではない」との判断 | SourceForge.JP Magazine
http://sourceforge.jp/magazine/12/06/03/2329238
0296デフォルトの名無しさん2013/11/04(月) 03:28:46.88
ところでオラクルvsグーグルのジャバ裁判はどっちが勝ったんですか?
0297デフォルトの名無しさん2013/11/04(月) 06:55:44.11
決着ついてたら>>294のwikiにも書かれてるはず
0298デフォルトの名無しさん2013/11/04(月) 08:28:55.08
Google vs Oracle裁判は裁判の経過というより「そもそも何が争点になってるのか」がわかりにくい
・VMがパクリ
・APIの名前がパクリ
・APIの中身がパクリ

こういう争点だと認識してる
0299デフォルトの名無しさん2013/11/04(月) 09:06:02.06
よかったねつれて
0300デフォルトの名無しさん2013/11/04(月) 14:31:43.07
テンプレ見たんですが
なんで文字列の比較に==を使っちゃいけないのですか?
理由が書いてないのですが教えてください
0301デフォルトの名無しさん2013/11/04(月) 14:37:18.44
http://docs.oracle.com/javase/jp/7/

ifとかswitchとか言語構造がのってるページを見て勉強したいのですが
このページにあるのでしょうか?
0302デフォルトの名無しさん2013/11/04(月) 15:17:41.89
>>301
こっち
ttp://docs.oracle.com/cd/E26537_01/tutorial/java/index.html
0303デフォルトの名無しさん2013/11/04(月) 15:25:18.79
int[][] ary = {
{1,2},
{3,4},
};

上のコードは問題なくコンパイルできるんですが
下のコードはエラーになります

int[][] ary = new int[2][2];
ary[0] = {1, 2};
ary[1] = {3, 4};

二次元配列のときはこういう書き方はできないのでしょうか?
0304デフォルトの名無しさん2013/11/04(月) 15:36:42.85
できない
0305デフォルトの名無しさん2013/11/04(月) 15:37:03.97
そうでしたか、わかりました
0306デフォルトの名無しさん2013/11/04(月) 15:41:00.36
ary[0] = new int[]{1, 2};
ary[1] = new int[]{3, 4};

だとコンパイル通るよ
0307デフォルトの名無しさん2013/11/04(月) 15:57:32.47
おお、ありがとうございます
0308デフォルトの名無しさん2013/11/04(月) 17:26:24.46
class Test{
private String test = "test1";
main{
hensuutest("test2");
}

test(String test){
System.out.println(test);
System.out.println(Test.test);
}
}

クラス内の変数とメソッド内の変数名が一緒の時に、
それぞれ区別して参照するためには何を変数の前につければいいのですか?
0309デフォルトの名無しさん2013/11/04(月) 17:28:05.64
this
0310デフォルトの名無しさん2013/11/04(月) 17:34:26.72
ありがとうございます。

メッソトにstaticをつけろと言われまして、
つけたらthisはstaticだと使えねーよと怒られてしまったのですが。。。

static void Test(String test){
System.out.println(test);
System.out.println(this.test);

}
0311デフォルトの名無しさん2013/11/04(月) 17:36:29.90
あ、メソットが変数名と被ってるのは書き込み用だから
気にしないでください。
0312デフォルトの名無しさん2013/11/04(月) 17:38:03.96
自己解決しました
0313デフォルトの名無しさん2013/11/04(月) 17:39:14.34
してないですw
0314デフォルトの名無しさん2013/11/04(月) 17:39:18.20
>>310
静的メソッドからインスタンス変数を参照することはできないんで
testを参照したいならtestにもstaticつけなきゃいけないよ。
もしくはオブジェクトを作ればいい。
test(String test){
 Test o = new Test();
 System.out.println(o.test);
}
0315デフォルトの名無しさん2013/11/04(月) 17:44:13.30
なるほど。ありがとうございます。
なぜ、情的メソッドからインスタンス変数を参照できないのか、
ちょっと整理がついていないですが、
クラスを利用したいと思います。
0316デフォルトの名無しさん2013/11/04(月) 17:59:32.19
公式で無料のチュートリアルがあるんだからそれやって覚えなさいよ

The Java? Tutorials
http://docs.oracle.com/javase/tutorial/
0317デフォルトの名無しさん2013/11/04(月) 18:12:38.28
>>315
静的メソッドね。インスタンスメソッドを呼ぶときはオブジェクトを作って
呼ぶでしょう。オブジェクトを作ったときにインスタンス変数のメモリも
確保されるからインスタンスメソッドからはインスタンス変数を参照することができる。
けれども静的メソッドを呼ぶときはインスタンスを作成する必要がないんで
インスタンス変数のメモリが確保されてない。だからインスタンス変数を参照できない。
0318デフォルトの名無しさん2013/11/04(月) 18:14:57.43
>>312
ワロタ
0319デフォルトの名無しさん2013/11/04(月) 18:41:02.02
EJB3の単体テスト。EJBContainer.createEJBContainer()で参照したEJBに
InjectしているManagedBeanが解決されずにNullになる。
何か設定が不足している?仕様?
0320デフォルトの名無しさん2013/11/04(月) 19:59:27.14
Eclipseでプロジェクトを循環参照したら、怒られちゃった
javaってプロジェクトの循環参照できないのかよ!!!
c#に負けてんじゃん
0321デフォルトの名無しさん2013/11/04(月) 20:08:15.77
よかったねー
0322デフォルトの名無しさん2013/11/04(月) 20:10:14.82
>>317
なるほど!

カップラーメンにお湯入れてねーのに、スープ飲めるかよってことですね。
0323デフォルトの名無しさん2013/11/04(月) 20:58:20.83
自分はmainメソッドから他のメソッドを呼ぼうとしたらstaticつけないと呼べないよと
Eclipseに怒られたのでstaticを付け、そのメソッドから他のメソッドを呼ぼうとしたら
また怒られたのでstaticをつけ・・・

気がつけばそこにはstaticメソッドしかいない。

そんな恐怖物語を学生実験の現場で何度か見てきた。
0324デフォルトの名無しさん2013/11/04(月) 21:20:25.02
これはstatic感染症と命名しなければなりませんね。
0325デフォルトの名無しさん2013/11/04(月) 21:27:58.91
性的感染症
0326デフォルトの名無しさん2013/11/04(月) 21:53:20.80
staticスパイラル
0327デフォルトの名無しさん2013/11/04(月) 22:15:46.67
よくストリームをcloseするコードとして
Reader reader = new FileReader("a.txt");
try {
&nbsp;&nbsp;&nbsp;&nbsp;doSomething(reader);
} finally {
&nbsp;&nbsp;&nbsp;&nbsp;reader.close();
}
というコード(�@)と、
Reader reader = null;
try {
&nbsp;&nbsp;&nbsp;&nbspreader = new FileReader("a.txt");
&nbsp;&nbsp;&nbsp;&nbsp;doSomething(reader);
} finally {
&nbsp;&nbsp;&nbsp;&nbspif (reader != null) {
&nbsp;&nbsp;&nbsp;&nbsp&nbsp;&nbsp;&nbsp;&nbsp;reader.close();
&nbsp;&nbsp;&nbsp;&nbsp}
}
というコード(�A)を見るのですが、どちらが正しいのでしょうか?
個人的に�@で十分だと思うのですが、�Aじゃないとreaderのcloseが漏れることがあるのでしょうか?
0328デフォルトの名無しさん2013/11/04(月) 22:16:15.89
nbspとかいう文字が羅列するコードなんて見たことねえよ
0329デフォルトの名無しさん2013/11/04(月) 22:22:41.98
>>327
遅れるとかそういう問題じゃなくて、new FileReaderのところでファイルが無いと例外が発生するから。
0330デフォルトの名無しさん2013/11/04(月) 22:23:12.69
>>328
にわかか?この間までは&nbsp;で空白が出力されてたんだけどな
0331デフォルトの名無しさん2013/11/04(月) 22:25:05.01
>>330
お前はプログラム修正で文字化けが発生するようになったことを客に指摘されて
同じことを客に抜かすのか?
03323292013/11/04(月) 22:25:17.57
凄い勘違いをしていた無かったことにしておくんなまし。
0333デフォルトの名無しさん2013/11/04(月) 22:25:34.52
>>329
すいません、大外にはFileNotFouneExceptionを捕まえるtry〜catchがあると思ってください。
ただ単純に、�@、�Aのどちらでも、close漏れは防げるのか、防げないのかということが知りたいです。
0334デフォルトの名無しさん2013/11/04(月) 22:25:36.59
すみません、Javaでandroidアプリを作っているのですが、
TableLayoutで作った表の幅と高さを調整したいのですが、どうしたらいいでしょうか?

TableLayoutでテキストとボタンを配置したのですが、実機で起動したところ
表示したものが、1/9の大きさで左上隅に表示されました。
これだと、小さすぎるので幅を大きくしたいのですが、
調べたところ、xmlファイルのはあるのですが、Activityファイルでは見つかりませんでした。
どこを調べたらいいのでしょうか?
0335デフォルトの名無しさん2013/11/04(月) 22:26:59.26
>>331
何の話してんだバーカ
2chの仕様をいってんだよ
0336デフォルトの名無しさん2013/11/04(月) 22:33:35.78
自己解決しました
0337デフォルトの名無しさん2013/11/04(月) 22:35:23.94
>>333
close漏れは(�@、�A)どちらでも防げるよ。
0338デフォルトの名無しさん2013/11/04(月) 22:38:16.68
�@ってtry {の部分が失敗することってないのかな?
0339デフォルトの名無しさん2013/11/04(月) 23:21:43.96
>>328,330,331,335
おまえら面白杉だろw
0340デフォルトの名無しさん2013/11/05(火) 00:01:05.31
>>327
検索したらそのものずばりの解説がヒットしたけど、検索した?
http://www.atmarkit.co.jp/ait/articles/1112/20/news131_3.html
0341デフォルトの名無しさん2013/11/05(火) 00:06:07.20
>>340
バカ乙
0342デフォルトの名無しさん2013/11/05(火) 00:08:53.65
close()メソッドも例外投げなかったっけ?try-catchでくくる必要あった希ガス
0343デフォルトの名無しさん2013/11/05(火) 00:10:20.03
>>342
関係ねえよ
0344デフォルトの名無しさん2013/11/05(火) 00:13:21.72
>>342
あるね。

try{
 FileReader reader=new FileReader("unko");
 try{
  ...
 }finally{
  reader.close();
 }
}catch(Exception e){...}//ヌルポとIOExceptionを補足
で良い感じもする。
0345デフォルトの名無しさん2013/11/05(火) 00:14:12.45
>>342
今回の話とは関係ない
0346デフォルトの名無しさん2013/11/05(火) 00:14:29.78
>>327
前者と後者の違いはclose()の漏れに注目してる違いのコードじゃないよ
new FileReader("a.txt")の失敗をキャッチしたいかしなくていいかの違いだよ
前者はa.txtが無かった場合どこで処理されるか知らんけど、後者はそこのcatchで処理されるからcloseメソッドの呼び出しに気を遣うためにnullチェックしてる
■ このスレッドは過去ログ倉庫に格納されています