★★Java質問・相談スレッド165★★
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2013/10/20(日) 19:30:39.35JavaScript, 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/
0302デフォルトの名無しさん
2013/11/04(月) 15:17:41.89こっち
ttp://docs.oracle.com/cd/E26537_01/tutorial/java/index.html
0303デフォルトの名無しさん
2013/11/04(月) 15:25:18.79{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.850305デフォルトの名無しさん
2013/11/04(月) 15:37:03.970306デフォルトの名無しさん
2013/11/04(月) 15:41:00.36ary[1] = new int[]{3, 4};
だとコンパイル通るよ
0307デフォルトの名無しさん
2013/11/04(月) 15:57:32.470308デフォルトの名無しさん
2013/11/04(月) 17:26:24.46private 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.640310デフォルトの名無しさん
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.960313デフォルトの名無しさん
2013/11/04(月) 17:39:14.340314デフォルトの名無しさん
2013/11/04(月) 17:39:18.20静的メソッドからインスタンス変数を参照することはできないんで
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.19The Java? Tutorials
http://docs.oracle.com/javase/tutorial/
0317デフォルトの名無しさん
2013/11/04(月) 18:12:38.28静的メソッドね。インスタンスメソッドを呼ぶときはオブジェクトを作って
呼ぶでしょう。オブジェクトを作ったときにインスタンス変数のメモリも
確保されるからインスタンスメソッドからはインスタンス変数を参照することができる。
けれども静的メソッドを呼ぶときはインスタンスを作成する必要がないんで
インスタンス変数のメモリが確保されてない。だからインスタンス変数を参照できない。
0318デフォルトの名無しさん
2013/11/04(月) 18:14:57.43ワロタ
0319デフォルトの名無しさん
2013/11/04(月) 18:41:02.02InjectしているManagedBeanが解決されずにNullになる。
何か設定が不足している?仕様?
0320デフォルトの名無しさん
2013/11/04(月) 19:59:27.14javaってプロジェクトの循環参照できないのかよ!!!
c#に負けてんじゃん
0321デフォルトの名無しさん
2013/11/04(月) 20:08:15.770322デフォルトの名無しさん
2013/11/04(月) 20:10:14.82なるほど!
カップラーメンにお湯入れてねーのに、スープ飲めるかよってことですね。
0323デフォルトの名無しさん
2013/11/04(月) 20:58:20.83Eclipseに怒られたのでstaticを付け、そのメソッドから他のメソッドを呼ぼうとしたら
また怒られたのでstaticをつけ・・・
気がつけばそこにはstaticメソッドしかいない。
そんな恐怖物語を学生実験の現場で何度か見てきた。
0324デフォルトの名無しさん
2013/11/04(月) 21:20:25.020325デフォルトの名無しさん
2013/11/04(月) 21:27:58.910326デフォルトの名無しさん
2013/11/04(月) 21:53:20.800327デフォルトの名無しさん
2013/11/04(月) 22:15:46.67Reader reader = new FileReader("a.txt");
try {
doSomething(reader);
} finally {
reader.close();
}
というコード(�@)と、
Reader reader = null;
try {
 reader = new FileReader("a.txt");
doSomething(reader);
} finally {
 if (reader != null) {
  reader.close();
 }
}
というコード(�A)を見るのですが、どちらが正しいのでしょうか?
個人的に�@で十分だと思うのですが、�Aじゃないとreaderのcloseが漏れることがあるのでしょうか?
0328デフォルトの名無しさん
2013/11/04(月) 22:16:15.890329デフォルトの名無しさん
2013/11/04(月) 22:22:41.98遅れるとかそういう問題じゃなくて、new FileReaderのところでファイルが無いと例外が発生するから。
0330デフォルトの名無しさん
2013/11/04(月) 22:23:12.69にわかか?この間までは で空白が出力されてたんだけどな
0331デフォルトの名無しさん
2013/11/04(月) 22:25:05.01お前はプログラム修正で文字化けが発生するようになったことを客に指摘されて
同じことを客に抜かすのか?
0332329
2013/11/04(月) 22:25:17.570333デフォルトの名無しさん
2013/11/04(月) 22:25:34.52すいません、大外にはFileNotFouneExceptionを捕まえるtry〜catchがあると思ってください。
ただ単純に、�@、�Aのどちらでも、close漏れは防げるのか、防げないのかということが知りたいです。
0334デフォルトの名無しさん
2013/11/04(月) 22:25:36.59TableLayoutで作った表の幅と高さを調整したいのですが、どうしたらいいでしょうか?
TableLayoutでテキストとボタンを配置したのですが、実機で起動したところ
表示したものが、1/9の大きさで左上隅に表示されました。
これだと、小さすぎるので幅を大きくしたいのですが、
調べたところ、xmlファイルのはあるのですが、Activityファイルでは見つかりませんでした。
どこを調べたらいいのでしょうか?
0335デフォルトの名無しさん
2013/11/04(月) 22:26:59.26何の話してんだバーカ
2chの仕様をいってんだよ
0336デフォルトの名無しさん
2013/11/04(月) 22:33:35.780337デフォルトの名無しさん
2013/11/04(月) 22:35:23.94close漏れは(�@、�A)どちらでも防げるよ。
0338デフォルトの名無しさん
2013/11/04(月) 22:38:16.680339デフォルトの名無しさん
2013/11/04(月) 23:21:43.96おまえら面白杉だろw
0340デフォルトの名無しさん
2013/11/05(火) 00:01:05.31検索したらそのものずばりの解説がヒットしたけど、検索した?
http://www.atmarkit.co.jp/ait/articles/1112/20/news131_3.html
0341デフォルトの名無しさん
2013/11/05(火) 00:06:07.20バカ乙
0342デフォルトの名無しさん
2013/11/05(火) 00:08:53.650343デフォルトの名無しさん
2013/11/05(火) 00:10:20.03関係ねえよ
0344デフォルトの名無しさん
2013/11/05(火) 00:13:21.72あるね。
try{
FileReader reader=new FileReader("unko");
try{
...
}finally{
reader.close();
}
}catch(Exception e){...}//ヌルポとIOExceptionを補足
で良い感じもする。
0345デフォルトの名無しさん
2013/11/05(火) 00:14:12.45今回の話とは関係ない
0346デフォルトの名無しさん
2013/11/05(火) 00:14:29.78前者と後者の違いはclose()の漏れに注目してる違いのコードじゃないよ
new FileReader("a.txt")の失敗をキャッチしたいかしなくていいかの違いだよ
前者はa.txtが無かった場合どこで処理されるか知らんけど、後者はそこのcatchで処理されるからcloseメソッドの呼び出しに気を遣うためにnullチェックしてる
0347デフォルトの名無しさん
2013/11/05(火) 00:17:49.52FileReader reader=null;
try{
reader=new FileReader("unko");
...
}catch(IOException e){
...
}finally{
try{
reader.close();
}catch(Exception e){...}
}
0348デフォルトの名無しさん
2013/11/05(火) 00:18:10.05前者の�@はnew FileReader("a.txt")の失敗を想定しなくていいコード
後者の�Aはnew FileReader("a.txt")の失敗をそこで処理したいコード (ただ�Aにはcatch文が書かれてないけど、本来は処理する)
0349デフォルトの名無しさん
2013/11/05(火) 00:20:25.24>>333読めよバカ
0350デフォルトの名無しさん
2013/11/05(火) 00:21:59.230351デフォルトの名無しさん
2013/11/05(火) 00:43:39.870352デフォルトの名無しさん
2013/11/05(火) 00:46:59.650353デフォルトの名無しさん
2013/11/05(火) 01:03:39.200354デフォルトの名無しさん
2013/11/05(火) 01:27:27.96これはまずいと思うぞ。
コンストラクタが例外投げたらぬるぽじゃないか。
ぬるぽ地獄に陥りたいのか!!
0356デフォルトの名無しさん
2013/11/05(火) 01:33:59.45void load(File f)throws IOException
FileReader reader=new FileReader(f);
try{
...
}finally{
reader.close();
}
}
0357デフォルトの名無しさん
2013/11/05(火) 01:35:35.37void load(File f)throws IOException,NullPointerException
{...}
0358デフォルトの名無しさん
2013/11/05(火) 01:36:21.440359デフォルトの名無しさん
2013/11/05(火) 01:36:54.320360デフォルトの名無しさん
2013/11/05(火) 01:37:29.350361デフォルトの名無しさん
2013/11/05(火) 01:38:00.130362デフォルトの名無しさん
2013/11/05(火) 01:39:05.45Reader reader = new FileReader("a.txt");
// ここに何か処理があったらreaderのclose()のフォローができない
try {
って話をしたいの?
0363デフォルトの名無しさん
2013/11/05(火) 01:44:11.300364デフォルトの名無しさん
2013/11/05(火) 01:45:14.390365デフォルトの名無しさん
2013/11/05(火) 01:46:47.960366デフォルトの名無しさん
2013/11/05(火) 01:51:06.650367デフォルトの名無しさん
2013/11/05(火) 01:54:02.550368デフォルトの名無しさん
2013/11/05(火) 02:00:26.000369デフォルトの名無しさん
2013/11/05(火) 02:51:32.050370デフォルトの名無しさん
2013/11/05(火) 03:42:42.31Cursor c2 = c1
c1.close
}
こんな感じのコードを書いたんですが、
c1をクローズするとc2まで閉じちゃうんです。代入ってコピーするんじゃなくて、メモリで持ってるインスタンスそのものにアクセスするエイリアスみたいなものなんでしょうか?
0371デフォルトの名無しさん
2013/11/05(火) 03:47:11.090372デフォルトの名無しさん
2013/11/05(火) 03:48:12.72http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%BC%E3%83%89%E3%83%AA%E3%83%B3%E3%82%AF
0373デフォルトの名無しさん
2013/11/05(火) 03:52:34.53Object obj2 = obj1;
obj1 = null; //obj2はnullにならない
もしエイリアスなら、obj2はobj1と同じ物を指さないといけないからobj1をnullにしたならobj2もnullにならなければならない
0374デフォルトの名無しさん
2013/11/05(火) 03:55:30.800375デフォルトの名無しさん
2013/11/05(火) 03:58:04.780376デフォルトの名無しさん
2013/11/05(火) 03:59:04.42Human joe = tom; // tomとニックネームをつけた人間にjoeというニックネームもつけた
tom = null; //tomというニックネームを使うのをやめた
インスタンスの概念
0377デフォルトの名無しさん
2013/11/05(火) 04:03:43.13ジョーさんはその後もトムという通名を使ってるのですか?
0378デフォルトの名無しさん
2013/11/05(火) 04:05:27.30それは違うよ、本人がtomやjoeと名乗ってるわけじゃない、周りが勝手にtomやjoeと呼んでるだけなんだよ
0379デフォルトの名無しさん
2013/11/05(火) 04:10:58.85プロレスラー ムタ = 武藤
ムタ = null ムタ止めた
武藤.dead 武藤(ムタ)は引退した
こ・・・こういうことか 理解した
0380デフォルトの名無しさん
2013/11/05(火) 04:16:45.78Human joe = tom; // tomとニックネームをつけた人間(Jack)にjoeというニックネームでも呼ぶことにする
tom = null; //tomというニックネームで誰かを呼ぶことをやめる、tomというニックネームで呼ばれる人間はいなくなる (Jackはもうtomとは呼ばれない)
tom = new Human("Cindy"); //別の新しい人間(本名Cindy)を作ってそいつをtomと呼ぶことにする
Foo(tom); // Fooメソッドに tom と呼んでる人間(Cindy)を引数として渡す
void Foo(Human bob) { //引数で渡された人間を Fooのメソッド内では bobというニックネームで呼ぶことにする
}
0381デフォルトの名無しさん
2013/11/05(火) 04:21:59.03Human joe = tom; // tomとニックネームをつけた人間(Jack)をjoeというニックネームでも呼ぶことにする
tom = null; //tomというニックネームで誰かを呼ぶことをやめる、tomというニックネームで呼ばれる人間はいなくなる (Jackはもうtomとは呼ばれない)
tom = new Human("Cindy"); //別の新しい人間(本名Cindy)を作ってそいつをtomというニックネームで呼ぶことにする
Foo(tom); // Fooメソッドに tom と呼んでる人間(Cindy)を引数として渡す
tom.die(); // tomと呼ばれてる人間(Cindy)を死なす
joe = null; // joeというニックネームで誰かを呼ぶことをやめる、joeというニックネームで呼ばれる人間はいなくなる、また同時にJackをニックネームで呼ぶ者がいなくなったためJackは失踪する
joe.die(); // joeと呼ばれてる人間はいないので存在しない者を死なすことは出来ない
void Foo(Human bob) { //引数で渡された人間を Fooのメソッド内では bobというニックネームで呼ぶことにする
}
0382デフォルトの名無しさん
2013/11/05(火) 04:28:49.670383デフォルトの名無しさん
2013/11/05(火) 05:12:16.69ノ ⌒γ⌒)
(( (
( )
) ヽ
ノノ ))
( ノノ ノノ )
((( ノ乂ノノ从 人乂 ヽ
) )ノノ__」」__| )
( )) (●) |(●)/( ))
)) ( ノ | ヽ | )ノ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( メ ヽヽ 」 / ノ < え!ここ荒らしちゃいけないの!?
((乂 ノノ | llllllllllllll ノノ ) \________
((乂 ヽヽ ++++ノノノ)((
ヽ乂 ヽ  ̄ ̄/ ノ
ヽllllllノ
0384デフォルトの名無しさん
2013/11/05(火) 05:19:39.580385デフォルトの名無しさん
2013/11/05(火) 05:42:37.680386デフォルトの名無しさん
2013/11/05(火) 06:10:49.450387デフォルトの名無しさん
2013/11/05(火) 06:39:30.780388デフォルトの名無しさん
2013/11/05(火) 08:42:01.610389デフォルトの名無しさん
2013/11/05(火) 23:37:37.990390デフォルトの名無しさん
2013/11/06(水) 01:50:55.990391デフォルトの名無しさん
2013/11/06(水) 02:36:56.280392デフォルトの名無しさん
2013/11/06(水) 03:07:41.31http://www.ecoop.net/memo/archives/2007-02-17-3.html
Javaで標準以外のライブラリを使用したプログラムを他のPCで動か.. - 人力検索はてな
http://q.hatena.ne.jp/1288867770
Jar ファイルを持つネイティブ dll をバンドル
http://ja.softuses.com/218163
コンピュータ職の徒然日記 - Yahoo!ブログ
http://blogs.yahoo.co.jp/shikakuit/archive/2011/08/25
View Source Native code and classloaders
http://jiemamy.org/plugins/viewsource/viewpagesrc.action?pageId=2162771
Oracle CEPアプリケーションのアセンブルとデプロイ
http://docs.oracle.com/cd/E28389_01/dev.1111/b61654/deploy.htm
0393デフォルトの名無しさん
2013/11/06(水) 06:09:41.090394デフォルトの名無しさん
2013/11/06(水) 06:47:25.39直接は出来ない。MANIFEST.MFをごにょごにょすれば出来るとかは基本的に迷信。
getResourceAsStream等でJAR内のDLLを一端テンポラリディレクトリ等に書き出して
System.loadで読み出す必要がある。
0395デフォルトの名無しさん
2013/11/06(水) 08:14:15.89そーゆーのはブログでやって
0396デフォルトの名無しさん
2013/11/06(水) 08:47:18.800397デフォルトの名無しさん
2013/11/06(水) 09:07:44.300398デフォルトの名無しさん
2013/11/06(水) 09:10:24.16重くても楽がいいなら標準DOM
でなきゃ標準SAXで
0399デフォルトの名無しさん
2013/11/06(水) 09:16:47.250400デフォルトの名無しさん
2013/11/06(水) 09:50:30.210401デフォルトの名無しさん
2013/11/06(水) 09:55:47.17■ このスレッドは過去ログ倉庫に格納されています