プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 https://itest.5ch.net/subback/hp
Webプログラミング https://itest.5ch.net/subback/php
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
前スレ
★★Java質問・相談スレッド183★★
https://mevius.5ch.net/test/read.cgi/tech/1588770728/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
★★Java質問・相談スレッド184★★
1デフォルトの名無しさん (ブーイモ MMff-liuG)
2021/09/19(日) 11:52:45.82ID:DdTXq5RcM40デフォルトの名無しさん (ワッチョイ 1f5f-dbST)
2022/08/25(木) 10:41:03.30ID:C0Bmt3UL0 真剣に悩んでいます
floatのもっと簡単な使い方を教えて下さい
float baka=5.963; とするとエラーが出ます
float baka=5.963f; とfをつければエラーは消えますが、いちいちつけるのが面倒です
例えば大量に数値を打ち込むときにfをつけてたら大変でしかたありません
何とかfをつけない方法はないでしょうか?
doubleを使えというのはなしでお願いします
もう3日もやり方を模索して見つからずほとんど寝ていません
切実です
floatのもっと簡単な使い方を教えて下さい
float baka=5.963; とするとエラーが出ます
float baka=5.963f; とfをつければエラーは消えますが、いちいちつけるのが面倒です
例えば大量に数値を打ち込むときにfをつけてたら大変でしかたありません
何とかfをつけない方法はないでしょうか?
doubleを使えというのはなしでお願いします
もう3日もやり方を模索して見つからずほとんど寝ていません
切実です
41デフォルトの名無しさん (ワッチョイ ff01-CDiL)
2022/08/25(木) 10:42:07.10ID:0z7AphVM0 ないです、寝てください
42デフォルトの名無しさん (ワッチョイ 7f7c-tEjH)
2022/08/25(木) 11:05:35.30ID:bEU0NH1U0 嫌ならキャストしろw
43デフォルトの名無しさん (JP 0H8f-XvCx)
2022/08/25(木) 15:33:45.50ID:bJn+zm7RH >>40
どうしても嫌だという場合は例えばファイルに文字列で入れておいて初期化時にファイルから読んで変換するとか、
文字列の配列でプログラム中に埋め込んでおいて初期化する時にまとめて float の配列に変換するとか、
そんな風にするしかないんじゃないかなあ?
入力が大変というぐらい沢山あるのであればやっぱファイルに入れておくのが良いのでは?
後で変更する時にプログラム修正しなくて済むよ。設定ファイルのようなもの。
どうしても嫌だという場合は例えばファイルに文字列で入れておいて初期化時にファイルから読んで変換するとか、
文字列の配列でプログラム中に埋め込んでおいて初期化する時にまとめて float の配列に変換するとか、
そんな風にするしかないんじゃないかなあ?
入力が大変というぐらい沢山あるのであればやっぱファイルに入れておくのが良いのでは?
後で変更する時にプログラム修正しなくて済むよ。設定ファイルのようなもの。
44デフォルトの名無しさん (ワッチョイ 8601-nIs0)
2022/08/30(火) 10:32:40.70ID:mEZdOQXT045デフォルトの名無しさん (スップ Sd82-JVFl)
2022/09/02(金) 13:30:13.77ID:anBQQFEld ブックマークレットのスレッドかこちらか悩みましたが質問なのでこちらでご相談させていただきます。
他者のWebサイトを閲覧する際、JavaScriptを用いて作成されている場合、リンクを新しいタブで開けない場面があります。
頻繁にページを進んだり戻ったりする場面、可能であればリンク先を別タブで開くようにしたいです。
ブックマークレットを用いて、現在ページのJavaScriptのリンクを別タブで開くように書き換える処理をすることは可能でしょうか?
他者のWebサイトを閲覧する際、JavaScriptを用いて作成されている場合、リンクを新しいタブで開けない場面があります。
頻繁にページを進んだり戻ったりする場面、可能であればリンク先を別タブで開くようにしたいです。
ブックマークレットを用いて、現在ページのJavaScriptのリンクを別タブで開くように書き換える処理をすることは可能でしょうか?
46デフォルトの名無しさん (ワッチョイ c12c-muaG)
2022/09/02(金) 15:08:50.17ID:I1GkSOn60 >>45
ここはJavaScriptのスレではなくJavaのスレなのでスレチ
ここはJavaScriptのスレではなくJavaのスレなのでスレチ
47デフォルトの名無しさん (スップ Sd82-JVFl)
2022/09/02(金) 16:05:37.41ID:anBQQFEld >>46
スレ間違いでした。教えて頂きありがとうございます。
スレ間違いでした。教えて頂きありがとうございます。
48デフォルトの名無しさん (ブーイモ MMc9-HeBz)
2022/09/16(金) 21:19:55.92ID:EEssf3o2M hosyu
49デフォルトの名無しさん (ワッチョイ 1610-sDLX)
2022/09/24(土) 01:53:59.87ID:a10GtK4h0 自作のオブジェクトをツリー構造で管理したいのですが出来合いのクラスでおすすめはありますでしょうか
親ノードから直下の子ノードに順次アクセスしたり、最下位のノードからルートまで階層をさかのぼって情報収集したり、子を親から切り離してツリー構造ごと別のノードの子として移動させたりしたいです
swing の JTree の中で使っている DefaultMutableTreeNode のユーザーオブジェクトに自前のオブジェクトを入れるのが現在の候補ですが他にいいのがあれば知りたいです
格納するユーザーデータにジェネリックスが使えればベストです
親ノードから直下の子ノードに順次アクセスしたり、最下位のノードからルートまで階層をさかのぼって情報収集したり、子を親から切り離してツリー構造ごと別のノードの子として移動させたりしたいです
swing の JTree の中で使っている DefaultMutableTreeNode のユーザーオブジェクトに自前のオブジェクトを入れるのが現在の候補ですが他にいいのがあれば知りたいです
格納するユーザーデータにジェネリックスが使えればベストです
50デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/24(土) 14:58:01.38ID:rovpnI4n0 >>49
GUIのコンポネントを探してるん?
GUIのコンポネントを探してるん?
51デフォルトの名無しさん (スプッッ Sd52-sDLX)
2022/09/24(土) 19:00:41.04ID:il0mhMRZd52デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/24(土) 19:26:33.34ID:rovpnI4n0 標準ライブラリにはないね
ディレクトリ構造のような多分木でしょ
自作するのがいんじゃないかな
AWSのS3のような感じでパスをキーにした連想配列を木構造とみなすこともできそうだけどね
ディレクトリ構造のような多分木でしょ
自作するのがいんじゃないかな
AWSのS3のような感じでパスをキーにした連想配列を木構造とみなすこともできそうだけどね
53デフォルトの名無しさん (ワッチョイ 9202-XjGR)
2022/09/24(土) 22:12:19.54ID:2Ekif7Lc0 TreeSet/TreeMap
じゃ駄目なの?
じゃ駄目なの?
54デフォルトの名無しさん (ワッチョイ 12ad-r4yT)
2022/09/25(日) 01:30:08.90ID:gLZKJWEk0 どう考えてもダメなのでは?
55デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/25(日) 03:38:39.74ID:MGeEAc5V056デフォルトの名無しさん (ワッチョイ 5f01-JEMU)
2022/09/25(日) 09:06:07.14ID:Rxhh3DJ90 統一教会に聞いてみてはどうかな。
色々教えてくれるんじゃないかと。
色々教えてくれるんじゃないかと。
57デフォルトの名無しさん (ワッチョイ 5f01-JEMU)
2022/09/25(日) 09:08:46.47ID:Rxhh3DJ90 まず自民党支部で紹介状をもらってから家庭教会(韓国籍の方は高位なので同胞教会)に行けば親身になって相談に乗ってくれます。
58デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/25(日) 17:10:30.82ID:MGeEAc5V0 不変オブジェクトで作ったほうがシンプルでいいかも
https://paiza.io/projects/TiS87RaJ0tUXLbAwq4RQgQ
https://paiza.io/projects/TiS87RaJ0tUXLbAwq4RQgQ
59デフォルトの名無しさん (ワッチョイ 1610-r4yT)
2022/09/25(日) 19:19:46.29ID:6HL6WV7c0 糞コードをドヤ顔で貼るなゴミ
60デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/25(日) 19:21:42.78ID:MGeEAc5V0 ( -`ω-) ぇ? 俺のコードそんなに良い?
61デフォルトの名無しさん (ワッチョイ 1610-tX/F)
2022/09/26(月) 23:23:05.13ID:TiY0P+H/0 >>55
コードサンプルまでありがとうございます
残念ながらほしいのとは違いました
ちょっと機能あり過ぎて使いこなせるか不安ですが自前で作るよりはずっと良さそうなので
javax.swing.tree.DefaultMutableTreeNode
を使うことにします。
(ごめんなさい初心者質問スレがあったのですね
次からはそちらにします)
コードサンプルまでありがとうございます
残念ながらほしいのとは違いました
ちょっと機能あり過ぎて使いこなせるか不安ですが自前で作るよりはずっと良さそうなので
javax.swing.tree.DefaultMutableTreeNode
を使うことにします。
(ごめんなさい初心者質問スレがあったのですね
次からはそちらにします)
62デフォルトの名無しさん (JP 0H0b-kW3g)
2022/09/27(火) 04:53:18.14ID:9+gQ2L86H https://www.java.com/ja/download/manual.jsp
https://i.imgur.com/1CoYK8p.jpg
Javaを使わないと開けないゲームがあって初めてJavaをダウンロードするのですがこのサイトで合ってますでしょうか?
https://i.imgur.com/1CoYK8p.jpg
Javaを使わないと開けないゲームがあって初めてJavaをダウンロードするのですがこのサイトで合ってますでしょうか?
63デフォルトの名無しさん (ワッチョイ 5f01-JEMU)
2022/09/27(火) 07:22:17.35ID:wINisv8A0 霊感商法の被害にあってる人が大勢いるのに、国葬とは、何を考えているのか。
64デフォルトの名無しさん (ワッチョイ de01-AWP/)
2022/09/27(火) 12:10:00.10ID:kUtc7fRq0 >>62
あってるよ!
あってるよ!
65デフォルトの名無しさん (ワッチョイ 8f53-kW3g)
2022/09/27(火) 15:07:37.96ID:79bVniqk0 >>64
ありがとうございます
ありがとうございます
66デフォルトの名無しさん (ワッチョイ f602-o+MF)
2022/11/05(土) 07:14:14.88ID:GuTe7K+i0 jsoupでいくつかのサイトのHTMLを取得する場合、マルチスレッドにすると順番に読むより早くなりますか?
67デフォルトの名無しさん (ワッチョイ 3601-Q2FJ)
2022/11/05(土) 10:53:07.37ID:ik3uUvNv0 やってみればわかる
68デフォルトの名無しさん (ワッチョイ 527c-pSqO)
2022/11/05(土) 13:08:14.85ID:zPyCNtrD0 基本早くはなるけど、そういう質問するレベルだとスレッドプールやらその辺の実装方法が分からないとね・・・
69デフォルトの名無しさん (アウアウウー Sa3b-stRS)
2022/11/23(水) 14:46:39.94ID:Zy3T79XVa ↓知ってる人いたら教えてくだされ
"ABC".replaceAll(".*", "DEF")
ってやると結果が"DEFDEF"ってなる
テキストエディタとかだと単純にDEFに変換されるだけなんだけど
javaだと正規表現の".*"が""(ブランク)と"DEF"の2回マッチしてるみたいなんだ
これってjavaだと当たり前の動作なのかな?
ちなみに、
"".replaceAll(".*", "DEF")
ってやると"DEF"になることから
最初のやつは"ブランク"部分と文字列部分の2回ヒットしているんじゃないかと推測してる
"ABC".replaceAll(".*", "DEF")
ってやると結果が"DEFDEF"ってなる
テキストエディタとかだと単純にDEFに変換されるだけなんだけど
javaだと正規表現の".*"が""(ブランク)と"DEF"の2回マッチしてるみたいなんだ
これってjavaだと当たり前の動作なのかな?
ちなみに、
"".replaceAll(".*", "DEF")
ってやると"DEF"になることから
最初のやつは"ブランク"部分と文字列部分の2回ヒットしているんじゃないかと推測してる
70デフォルトの名無しさん (ワッチョイ 4ead-+H9L)
2022/11/23(水) 17:25:46.90ID:gB3NJ+gJ0 ほんとだ、変な動作
71デフォルトの名無しさん (ワッチョイ 4ead-+H9L)
2022/11/23(水) 17:29:48.55ID:gB3NJ+gJ0 サクラエディタの正規表現も同じ動作だったわ
72デフォルトの名無しさん (ワッチョイ 4ead-+H9L)
2022/11/23(水) 17:42:26.87ID:gB3NJ+gJ0 "AAA".replaceAll("(.*)", "($1)")
これが
(AAA)()
こうなった
末尾の空文字列とマッチしてるっぽい
これが
(AAA)()
こうなった
末尾の空文字列とマッチしてるっぽい
73デフォルトの名無しさん (テテンテンテン MM8e-U8jK)
2022/11/23(水) 18:04:13.61ID:VU/69mxiM 変な動作だけど多分それで正しい
任意の一文字とそれの0回以上の繰り返し -> ABC にマッチ
.* で0文字にもマッチ -> 末尾のnullにマッチ
で2回マッチするっぽい
PCREとかJavaScriptとかも同様の動作をするよ
正直、".*$" でも2回マッチするのは納得できないけどw
for (String regex: new String[]{".*", "^.*", ".*$"}) {
var matcher = Pattern.compile(regex).matcher("ABC");
System.out.println(matcher);
matcher.results().forEach(mr -> System.out.println(mr.group()));
}
任意の一文字とそれの0回以上の繰り返し -> ABC にマッチ
.* で0文字にもマッチ -> 末尾のnullにマッチ
で2回マッチするっぽい
PCREとかJavaScriptとかも同様の動作をするよ
正直、".*$" でも2回マッチするのは納得できないけどw
for (String regex: new String[]{".*", "^.*", ".*$"}) {
var matcher = Pattern.compile(regex).matcher("ABC");
System.out.println(matcher);
matcher.results().forEach(mr -> System.out.println(mr.group()));
}
74デフォルトの名無しさん (テテンテンテン MM8e-U8jK)
2022/11/23(水) 18:12:48.94ID:VU/69mxiM ごめん、>>73の"null"って書いたのは空文字のことね
"\0" ではないので念のため
"\0" ではないので念のため
75デフォルトの名無しさん (テテンテンテン MM8e-U8jK)
2022/11/23(水) 18:24:28.91ID:VU/69mxiM なんどもすまん
落ち着いて考えたら ".*" と ".*$" で動作が変わったらおかしいね
".*$" での動作が納得できないは取り消します
落ち着いて考えたら ".*" と ".*$" で動作が変わったらおかしいね
".*$" での動作が納得できないは取り消します
76デフォルトの名無しさん (アウアウウー Sa3b-stRS)
2022/11/24(木) 00:25:23.38ID:+F4Yf35ia 試してくれてありがとう
何か指定のしかたが悪いのかと思ってあがいてみたけどやっぱりダメだった
そういう仕様なんだと思うことにします
何か指定のしかたが悪いのかと思ってあがいてみたけどやっぱりダメだった
そういう仕様なんだと思うことにします
77デフォルトの名無しさん (ワッチョイ ef4f-95HW)
2022/11/24(木) 08:33:33.80ID:FTZ0YYIj0 Ruby でも、2回マッチする
puts 'abc'.gsub( /.*/, 'def' )
出力
defdef
puts 'abc'.gsub( /.*/, 'def' )
出力
defdef
78デフォルトの名無しさん (ワッチョイ ff10-RPwI)
2022/11/27(日) 09:21:39.60ID:t+XNeMLd0 久々にスレ見たらこんな頭の悪い問答を何時間も続ける低次元っぷりに絶望するゴミスレ
79デフォルトの名無しさん (テテンテンテン MM8f-jpzT)
2022/12/15(木) 22:19:40.44ID:vw4fefRqM JFrameのボダンを押下して表示したダイアログボックスから画像を選択し、その選択した画像上でマウスをクリックしながらドラッグした範囲に四角形を描画したいとおもっているのですが、四角形が描画されません。
何かおかしいでしょうか?
ttps://pastebin.com/XEHpQkrL
何かおかしいでしょうか?
ttps://pastebin.com/XEHpQkrL
80デフォルトの名無しさん (ワッチョイ 7f10-KKgq)
2022/12/16(金) 00:30:45.72ID:gNEBwfST0 お前の頭
81デフォルトの名無しさん (ワッチョイ 6aad-e5AJ)
2022/12/17(土) 00:34:13.50ID:toQsXtnK0 俺の顔
82デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/21(水) 18:21:53.74ID:RdDYZJi/0 『良いコード/悪いコードで学ぶ設計入門』という本がJavaを使って、
オブジェクト指向プログラミングの説明をしているのですが、非常に
わかりやすくて勉強になっています。
このような本は他にないでしょうか?
オブジェクト指向プログラミングの説明をしているのですが、非常に
わかりやすくて勉強になっています。
このような本は他にないでしょうか?
83デフォルトの名無しさん (ワッチョイ 3b01-ZR1D)
2022/12/21(水) 18:58:11.74ID:ye8WaQKn0 本じゃないけど、boostのソースはためになるな。
84デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/21(水) 19:52:26.30ID:RdDYZJi/085デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/22(木) 10:24:08.92ID:tmbBFS3W0 class A {
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return 200;
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return 200;
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
86デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/22(木) 10:26:05.26ID:tmbBFS3W0 class A {
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return m1();
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return m1();
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
87デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/22(木) 10:34:49.73ID:tmbBFS3W0 >>86
訂正します:
class A {
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return 2 * m1();
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
訂正します:
class A {
■■int m1() {
■■■■return 100;
■■}
■■int m2() {
■■■■return 2 * m1();
■■}
}
class B extends A {
@Override
■■int m1() {
■■■■return super.m1() + 20;
■■}
■■int m2() {
■■■■return super.m2() + 10;
■■}
}
88デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/22(木) 10:35:00.31ID:tmbBFS3W0 >>85
のように親クラス A を変更した場合、クラス B の m2 メソッドを実行すると、
250 がリターンされると本に書いてあります。
A の変更前は、 210 が返されていたので、リターンされる値が変わってしまったことになります。
A の変更後、このあたりの仕組み、ルールがよく分かりません。
B の m2() を実行すると、 A の m2() のリターン結果に 10 足した値がリターンされる。
A の m2() が実行されると、 B の m1() のリターン結果を2倍した値がリターンされる。
ようですが、どういうルールに従っている結果でしょうか?
のように親クラス A を変更した場合、クラス B の m2 メソッドを実行すると、
250 がリターンされると本に書いてあります。
A の変更前は、 210 が返されていたので、リターンされる値が変わってしまったことになります。
A の変更後、このあたりの仕組み、ルールがよく分かりません。
B の m2() を実行すると、 A の m2() のリターン結果に 10 足した値がリターンされる。
A の m2() が実行されると、 B の m1() のリターン結果を2倍した値がリターンされる。
ようですが、どういうルールに従っている結果でしょうか?
89デフォルトの名無しさん (ワッチョイ ea55-ZR1D)
2022/12/22(木) 10:36:14.86ID:tmbBFS3W0 訂正します:
>>87
のように親クラス A を変更した場合、クラス B の m2 メソッドを実行すると、
250 がリターンされると本に書いてあります。
A の変更前は、 210 が返されていたので、リターンされる値が変わってしまったことになります。
A の変更後、このあたりの仕組み、ルールがよく分かりません。
B の m2() を実行すると、 A の m2() のリターン結果に 10 足した値がリターンされる。
A の m2() が実行されると、 B の m1() のリターン結果を2倍した値がリターンされる。
ようですが、どういうルールに従っている結果でしょうか?
>>87
のように親クラス A を変更した場合、クラス B の m2 メソッドを実行すると、
250 がリターンされると本に書いてあります。
A の変更前は、 210 が返されていたので、リターンされる値が変わってしまったことになります。
A の変更後、このあたりの仕組み、ルールがよく分かりません。
B の m2() を実行すると、 A の m2() のリターン結果に 10 足した値がリターンされる。
A の m2() が実行されると、 B の m1() のリターン結果を2倍した値がリターンされる。
ようですが、どういうルールに従っている結果でしょうか?
90デフォルトの名無しさん (テテンテンテン MMe6-WNmf)
2022/12/22(木) 12:07:43.69ID:syRoAR41M 各メソッドを
int m1() { // class A
System.out.println("A.m1()");
return 100;
}
の様にして、実行してみれば一目瞭然
System.out.println(new A().m2());
->
A.m2()
A.m1()
200
System.out.println(new B().m2());
->
B.m2()
A.m2()
B.m1()
A.m1()
250
int m1() { // class A
System.out.println("A.m1()");
return 100;
}
の様にして、実行してみれば一目瞭然
System.out.println(new A().m2());
->
A.m2()
A.m1()
200
System.out.println(new B().m2());
->
B.m2()
A.m2()
B.m1()
A.m1()
250
91デフォルトの名無しさん (テテンテンテン MMe6-WNmf)
2022/12/22(木) 12:25:33.69ID:syRoAR41M まあ少し分かりにくいんだけど、
クラスBのインスタンスを生成してメソッドB.m2()からクラスAのメソッドA.m2()が"super.method名()"で呼ばれたとして、
その時、クラスAのメソッド(A.m2())中でもthisはやっぱり、当然に、クラスBのインスタンスのままなんですよ(勝手にインスタンスが生まれ変わったりはしない)
で、クラスBのインスタンスに対してm1()呼び出しをするので、B.m1()が呼ばれます
先ほどの様に、各メソッドに
System.out.println(this.getClass().getName());
でも追加してみればわかるかと
クラスBのインスタンスを生成してメソッドB.m2()からクラスAのメソッドA.m2()が"super.method名()"で呼ばれたとして、
その時、クラスAのメソッド(A.m2())中でもthisはやっぱり、当然に、クラスBのインスタンスのままなんですよ(勝手にインスタンスが生まれ変わったりはしない)
で、クラスBのインスタンスに対してm1()呼び出しをするので、B.m1()が呼ばれます
先ほどの様に、各メソッドに
System.out.println(this.getClass().getName());
でも追加してみればわかるかと
92デフォルトの名無しさん (ワッチョイ be10-e5AJ)
2022/12/23(金) 18:47:10.59ID:TsC3S0cB0 >90
0点の回答。馬鹿。二度と書き込まないように。
>91
30点の回答。アホ。二度と書き込まないように。
0点の回答。馬鹿。二度と書き込まないように。
>91
30点の回答。アホ。二度と書き込まないように。
93デフォルトの名無しさん (ワッチョイ aa7c-e5AJ)
2022/12/23(金) 18:51:33.36ID:o+ONuUnd0 >>92が100点の回答しろよw
無能なんだろうけどw
無能なんだろうけどw
94デフォルトの名無しさん (ワッチョイ 3bad-s0Sd)
2022/12/25(日) 21:24:32.33ID:fbG5Klx70 >>92にはこれは無理だな
95デフォルトの名無しさん (ワッチョイ b310-dxp0)
2022/12/25(日) 21:35:06.90ID:xTMUZmUe0 100点の回答教えて欲しいならもっとへりくだらないと
煽って回答引き出そうとか幼稚園児か?アホ
煽って回答引き出そうとか幼稚園児か?アホ
96デフォルトの名無しさん (アウアウウー Sa1f-MkkF)
2022/12/25(日) 23:40:35.90ID:8AzSKsIAa >>87
B.m2() を呼ぶと、super で、A.m2()が呼ばれる
この時、this が、B インスタンスから、
その中のA インスタンス部分を指すように変わる
だから、A.m2()を呼ぶと、
B.m1()ではなく、A.m1()が呼ばれる
B.m2() を呼ぶと、super で、A.m2()が呼ばれる
この時、this が、B インスタンスから、
その中のA インスタンス部分を指すように変わる
だから、A.m2()を呼ぶと、
B.m1()ではなく、A.m1()が呼ばれる
97デフォルトの名無しさん (ワッチョイ b310-dxp0)
2022/12/26(月) 00:11:57.51ID:bZAU6rX30 0点。逝ってよし!
98デフォルトの名無しさん (ワッチョイ b310-dxp0)
2022/12/26(月) 00:52:55.31ID:bZAU6rX30 0点どころかおもっくそ嘘教えてるしw
マイナス1億点
アホバカ
マイナス1億点
アホバカ
99デフォルトの名無しさん (ワッチョイ cf9c-azuO)
2022/12/26(月) 08:09:56.37ID:aUjbdkr90 そういえば某大手SIerのコーディング規約で「親クラスのメソッドを呼ぶときはsuperを明示すること」ってあったなあ
メソッド定義が自クラスでは親クラスに書かれていることが分かりやすくなるとかなんとか
案の定、子クラスでメソッドをオーバーライドしても呼ばれないというトラブルが続発した
本当に親クラスのメソッド呼び出しに固定したいとき以外は super 書かないほうがいいね
メソッド定義が自クラスでは親クラスに書かれていることが分かりやすくなるとかなんとか
案の定、子クラスでメソッドをオーバーライドしても呼ばれないというトラブルが続発した
本当に親クラスのメソッド呼び出しに固定したいとき以外は super 書かないほうがいいね
100デフォルトの名無しさん (ワッチョイ 637c-dxp0)
2022/12/26(月) 11:12:13.07ID:bU1T9eUn0 そもそも親クラスのメソッドを使いたいのにオーバーライドするって
設計がおかしいのでは・・・
設計がおかしいのでは・・・
101デフォルトの名無しさん (ワッチョイ cf9c-azuO)
2022/12/26(月) 13:59:53.17ID:aUjbdkr90 >>100
親クラスのメソッドを使いたいわけではない
開発初期に子クラスでオーバーライドしない場合は super を付けろという規約だった
当然、後から子クラスでオーバーライドしなければならないような変更が発生することもある
そうなったときに、super を明示するという規約が仇になったという話
親クラスのメソッドを使いたいわけではない
開発初期に子クラスでオーバーライドしない場合は super を付けろという規約だった
当然、後から子クラスでオーバーライドしなければならないような変更が発生することもある
そうなったときに、super を明示するという規約が仇になったという話
102デフォルトの名無しさん (ワッチョイ 3bad-s0Sd)
2022/12/30(金) 16:12:33.88ID:ykNPeaas0 >>98 荒すな
103デフォルトの名無しさん (ワッチョイ 4e10-TwI4)
2022/12/31(土) 04:30:32.97ID:4GRHpUZV0 インスタンスの意味もわからんようなのが回答側に回っちゃいかんな
104デフォルトの名無しさん (ワッチョイ 0eba-9yt5)
2022/12/31(土) 15:56:15.97ID:S9Nh4wgt0 列挙型で整数を宣言したんだけどエラーになる。
コード
public enum Sample {
A(10), B(20);
}
エラーメッセージ
Sample.java:2: エラー: 列挙 Sampleのコンストラクタ Sampleは指定された型に適用できません。
A(10), B(20);
^
期待値: 引数がありません
検出値: int
理由: 実引数リストと仮引数リストの長さが異なります
Sample.java:2: エラー: 列挙 Sampleのコンストラクタ Sampleは指定された型に適用できません。
A(10), B(20);
^
期待値: 引数がありません
検出値: int
理由: 実引数リストと仮引数リストの長さが異なります
エラー2個
直し方教えてください
コード
public enum Sample {
A(10), B(20);
}
エラーメッセージ
Sample.java:2: エラー: 列挙 Sampleのコンストラクタ Sampleは指定された型に適用できません。
A(10), B(20);
^
期待値: 引数がありません
検出値: int
理由: 実引数リストと仮引数リストの長さが異なります
Sample.java:2: エラー: 列挙 Sampleのコンストラクタ Sampleは指定された型に適用できません。
A(10), B(20);
^
期待値: 引数がありません
検出値: int
理由: 実引数リストと仮引数リストの長さが異なります
エラー2個
直し方教えてください
105デフォルトの名無しさん (オッペケ Srbb-EOKO)
2022/12/31(土) 16:41:17.52ID:ThgnqEFxr まず java enum でググります
106デフォルトの名無しさん (ワッチョイ db4b-MNVA)
2022/12/31(土) 21:06:42.50ID:XIUc7tAE0 ここはKotlinの質問はダメなの?
107デフォルトの名無しさん (ワッチョイ a3f0-sdJO)
2022/12/31(土) 21:23:42.19ID:G/ER4sv/0 Kotlinスレあるし基本はそっちでしょ
JVMやバイトコード関連質問とかだと微妙だけど、
それもKotlin使ってる場合の質問なら基本Kotlinスレじゃね?
JVMやバイトコード関連質問とかだと微妙だけど、
それもKotlin使ってる場合の質問なら基本Kotlinスレじゃね?
108デフォルトの名無しさん (ワッチョイ db4b-MNVA)
2022/12/31(土) 21:31:08.90ID:XIUc7tAE0109デフォルトの名無しさん (ワッチョイ 9aad-TwI4)
2023/01/01(日) 01:15:54.77ID:k0DSm/Wv0110デフォルトの名無しさん (ワッチョイ b6ad-9yt5)
2023/01/01(日) 13:35:25.48ID:RCDNye7r0 public enum Sample {
A(10), B(20);
Sample(int n) {
}
}
これでおk
A(10), B(20);
Sample(int n) {
}
}
これでおk
111デフォルトの名無しさん (ワッチョイ 8b01-gKiU)
2023/01/02(月) 13:21:36.86ID:l4/Jezsd0 >>107
kotlinスレ完走しても立たない😭
kotlinスレ完走しても立たない😭
112デフォルトの名無しさん (ワッチョイ db4b-MNVA)
2023/01/02(月) 13:55:45.23ID:8T2JCaCm0 >>111
立てたよ
立てたよ
113デフォルトの名無しさん (オイコラミネオ MMe5-NK77)
2023/01/20(金) 00:55:10.53ID:ZdjsiCX8M 勉強を開始して3週間、優しいJavaを1周もしてないです
章末の練習問題を初見で解ける章と、初めてみるパターンで
解けない章があります
読めば理解はできるのですが、センスが無い?それとも勉強を進めて引き出しを増やしていくもの?
同じ時間で解けたという友人もいて、少し悩んでいます
章末の練習問題を初見で解ける章と、初めてみるパターンで
解けない章があります
読めば理解はできるのですが、センスが無い?それとも勉強を進めて引き出しを増やしていくもの?
同じ時間で解けたという友人もいて、少し悩んでいます
114デフォルトの名無しさん (ワッチョイ 299c-4c6f)
2023/01/20(金) 02:37:54.38ID:8hijXP6L0 がんば!
115デフォルトの名無しさん (オイコラミネオ MMe5-NK77)
2023/01/20(金) 15:38:06.11ID:ZdjsiCX8M116デフォルトの名無しさん (スッップ Sd1f-oUhl)
2023/01/24(火) 20:20:26.58ID:rGIG2HhYd onMessageの中でDBコネクトして最後にクローズしてるソース見て、なんでonOpenでDBコネクトしてonCloseしないんだろうと思ったんですけど
onMessageで毎回DBコネクトするのが一般的なんでしょうか?
onMessageで毎回DBコネクトするのが一般的なんでしょうか?
117デフォルトの名無しさん (ワッチョイ 339c-KBNU)
2023/01/25(水) 01:08:43.52ID:pnC8XgZK0 そうですね
必要な場面で接続して用が済んだらすぐに閉じるのが良い設計だと思います
パフォーマンスが気になりますか?
いまはコネクションプーリングという技術があって論理的にクローズしても下位レイヤーでは接続を維持するような仕組みがあります
パフォーマンスのためにデータベース接続を開きっぱなしにするのは設計が古いです
必要な場面で接続して用が済んだらすぐに閉じるのが良い設計だと思います
パフォーマンスが気になりますか?
いまはコネクションプーリングという技術があって論理的にクローズしても下位レイヤーでは接続を維持するような仕組みがあります
パフォーマンスのためにデータベース接続を開きっぱなしにするのは設計が古いです
118デフォルトの名無しさん (スッップ Sd1f-oUhl)
2023/01/25(水) 05:23:54.54ID:b0dkH4ICd なるほど
c言語ばっかりやっててJAVAはど素人
WEBは全くわからないので
考え方が古かったんですね
コネクションプーリングの勉強からはじめます
c言語ばっかりやっててJAVAはど素人
WEBは全くわからないので
考え方が古かったんですね
コネクションプーリングの勉強からはじめます
119デフォルトの名無しさん (テテンテンテン MM4f-S9vL)
2023/02/07(火) 20:18:51.62ID:+C6/44ZiM JPanel p = new JPanel() {
BufferedImage img;
try {
img = ImageIO.read(new File("...."));
} catch (IOException e) {}
void testA() {}
void testB() {}
};
な感じのインナークラスの書き方で、どのようにimgをtry catch書いたらいいでしょうか?
BufferedImage img;
try {
img = ImageIO.read(new File("...."));
} catch (IOException e) {}
void testA() {}
void testB() {}
};
な感じのインナークラスの書き方で、どのようにimgをtry catch書いたらいいでしょうか?
120デフォルトの名無しさん (ワッチョイ 7f10-Rw9A)
2023/02/07(火) 23:28:27.93ID:CqENBtXk0 catch節になにをコードしたらいいかわからないということ?
121デフォルトの名無しさん (テテンテンテン MM4f-S9vL)
2023/02/08(水) 04:27:27.92ID:43XrJi8HM >>120
try catchを書く前はシンタックスエラーは表示されていなかったのですが、
try catchを書いた後に下記のエラーが出ます、
Buffered imgの行に
Multiple markers at this line
- Syntax error, insert ";" to complete
LocalVariableDeclarationStatement
- Syntax error, insert "}" to complete ClassBody
や voidの行に
Multiple markers at this line
- Syntax error on token "void", record
expected
- Syntax error, insert "}" to complete
RecordBody
- overrides javax.swing.JComponent.
paintComponent
そのため、インナークラスでのtry catchの書き方が分かればいいなと思っております。
try catchを書く前はシンタックスエラーは表示されていなかったのですが、
try catchを書いた後に下記のエラーが出ます、
Buffered imgの行に
Multiple markers at this line
- Syntax error, insert ";" to complete
LocalVariableDeclarationStatement
- Syntax error, insert "}" to complete ClassBody
や voidの行に
Multiple markers at this line
- Syntax error on token "void", record
expected
- Syntax error, insert "}" to complete
RecordBody
- overrides javax.swing.JComponent.
paintComponent
そのため、インナークラスでのtry catchの書き方が分かればいいなと思っております。
122デフォルトの名無しさん (ワッチョイ 0f9c-vJiC)
2023/02/08(水) 08:01:16.78ID:SBxrkX9O0123デフォルトの名無しさん (ワッチョイ 0f90-/fdB)
2023/02/08(水) 20:07:35.47ID:s9e4VQn50 >>119
素直にJPanelの継承クラスを書くのがいいんじゃないかと
素直にJPanelの継承クラスを書くのがいいんじゃないかと
124デフォルトの名無しさん (テテンテンテン MM4f-S9vL)
2023/02/08(水) 21:12:26.74ID:CuuJsoDPM125デフォルトの名無しさん (ワッチョイ 0f9c-zLlH)
2023/02/08(水) 22:10:29.63ID:SBxrkX9O0 インスタンス・イニシャライザを使え
JPanel = new JPanel() {
BufferedImage img = null;
{
try {
img = ImageIO.read(new File("...."));
} catch(IOException e) {}
}
void testA() {}
void testB() {}
};
JPanel = new JPanel() {
BufferedImage img = null;
{
try {
img = ImageIO.read(new File("...."));
} catch(IOException e) {}
}
void testA() {}
void testB() {}
};
126デフォルトの名無しさん (テテンテンテン MM4f-S9vL)
2023/02/08(水) 22:47:27.38ID:CuuJsoDPM127デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/02/25(土) 00:01:57.10ID:A4bRpZ0eM a = new byte[num];
a[0] = (byte) 0x0A;
のように値を代入したい。
String b = "0A";
が与えられているとき、どうすればバイトとして変数aに与えられた値を入れれますか?
a[0] = (byte) ("0x" + b);
a[0] = (byte) 0x0A;
のように値を代入したい。
String b = "0A";
が与えられているとき、どうすればバイトとして変数aに与えられた値を入れれますか?
a[0] = (byte) ("0x" + b);
128デフォルトの名無しさん (テテンテンテン MM0e-g+Li)
2023/02/25(土) 00:12:07.69ID:+Qy/IqxpM Byte.parseByte("0A", 16);
129デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/02/25(土) 04:19:37.99ID:A4bRpZ0eM >>128
ありがとうございます。
ありがとうございます。
130デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/02/26(日) 00:02:46.88ID:F7MFR7BvM フォルダの中にある各ファイルを対象とした処理を書きたいのですが、
File[] inputFiles = stream.toArray(File[]::new);
の行で
Exception in thread "main" java.lang.IllegalStateException: stream has already been operated upon or closed
がでます。
try (Stream<Path> stream = Files.list(Paths.get(path))) {
stream.filter(Files::isRegularFile);
File[] inputFiles = stream.toArray(File[]::new);
Iterator<File> i = Arrays.asList(inputFiles).iterator();
while (i.hasNext()) {}
} catch (IOException e) { e.printStackTrace(); }
が試そうとしているコードになりますが、stream以外を使用するべきでしょうか?
File[] inputFiles = stream.toArray(File[]::new);
の行で
Exception in thread "main" java.lang.IllegalStateException: stream has already been operated upon or closed
がでます。
try (Stream<Path> stream = Files.list(Paths.get(path))) {
stream.filter(Files::isRegularFile);
File[] inputFiles = stream.toArray(File[]::new);
Iterator<File> i = Arrays.asList(inputFiles).iterator();
while (i.hasNext()) {}
} catch (IOException e) { e.printStackTrace(); }
が試そうとしているコードになりますが、stream以外を使用するべきでしょうか?
131デフォルトの名無しさん (ワッチョイ b18f-eFGh)
2023/02/26(日) 02:18:47.80ID:B5iNMzdY0 filterとtoArrayを;で分けてるのが良くない、つなげるんだよ、つなげればきっとうまくいく
132デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/02/26(日) 02:49:11.03ID:F7MFR7BvM >>131
ありがとうございます。
try (Stream<Path> stream = Files.list(Paths.get(path))) {
File[] inputFiles = stream.filter(Files::isRegularFile).toArray(File[]::new);
Iterator<File> i = Arrays.asList(inputFiles).iterator();
while (i.hasNext()) {}}
のように、つなげて?書いてみたのですが
Exception in thread "main" java.lang.ArrayStoreException: arraycopy: element type mismatch: can not cast one of the elements of java.lang.Object[] to the type of the destination array, java.io.File
とエラーが表示されるので、もう少し調べてみます。
ありがとうございます。
try (Stream<Path> stream = Files.list(Paths.get(path))) {
File[] inputFiles = stream.filter(Files::isRegularFile).toArray(File[]::new);
Iterator<File> i = Arrays.asList(inputFiles).iterator();
while (i.hasNext()) {}}
のように、つなげて?書いてみたのですが
Exception in thread "main" java.lang.ArrayStoreException: arraycopy: element type mismatch: can not cast one of the elements of java.lang.Object[] to the type of the destination array, java.io.File
とエラーが表示されるので、もう少し調べてみます。
133デフォルトの名無しさん (ワッチョイ b18f-eFGh)
2023/02/26(日) 08:40:51.36ID:B5iNMzdY0 Pathのシーケンスを配列にするなら型をPath[]にしないと
Fileにしたいなら.map(Path::toFile)を入れるといい
Fileにしたいなら.map(Path::toFile)を入れるといい
134デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/02/26(日) 10:37:04.47ID:ZT8LdB8LM135デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/03/02(木) 20:14:38.83ID:WGG9oXzEM funBで例外が発生した場合、funcAの処理をReturnしたいんですけど、
基本的にどのようにコードしたほうがいいのでしょうか?
フラグを用意して、funcBで例外発生したらフラグをTrueにするんでしょうか?
public void funcA() {
String tmp = funcB();
if (funcB()で例外発生した) {return;}
}
public String funcB() {
try {} catch(Exception e) { e.printStackTrace();}
}
基本的にどのようにコードしたほうがいいのでしょうか?
フラグを用意して、funcBで例外発生したらフラグをTrueにするんでしょうか?
public void funcA() {
String tmp = funcB();
if (funcB()で例外発生した) {return;}
}
public String funcB() {
try {} catch(Exception e) { e.printStackTrace();}
}
136デフォルトの名無しさん (ワッチョイ b18f-Wvzt)
2023/03/02(木) 21:01:50.80ID:EnYbv0EK0 これで良い、例外が投げられたら処理は中断される
public void funcA() {
String tmp = funcB();
}
public String funcB() {
}
public void funcA() {
String tmp = funcB();
}
public String funcB() {
}
137デフォルトの名無しさん (テテンテンテン MM0e-c/TO)
2023/03/02(木) 21:09:49.91ID:WGG9oXzEM なるほど。ありがとうございます。
138デフォルトの名無しさん (テテンテンテン MM0e-g+Li)
2023/03/02(木) 22:10:06.50ID:UfHr+gSfM funcBで今catchしてるってことは多分checked例外でしょ?
そうならchecked例外がSomeExceptionとして
public void funcA() {
try {
String tmp = funcB();
} catch(SomeException e) {
e.printStackTrace(); // なんらかのエラー処理
return;
}
}
public String funcB() throws SomeExecption {
SomeExceptionが生じる処理
}
そうならchecked例外がSomeExceptionとして
public void funcA() {
try {
String tmp = funcB();
} catch(SomeException e) {
e.printStackTrace(); // なんらかのエラー処理
return;
}
}
public String funcB() throws SomeExecption {
SomeExceptionが生じる処理
}
139デフォルトの名無しさん (スッププ Sd33-fh7v)
2023/03/04(土) 12:32:32.24ID:NjX9qwnLd ヒープメモリとかスレッド周りの知識が入門書ではほとんど得られなかったのですが詳しく実践していける粒度で解説してるテキストとかあれば教えてください
レスを投稿する
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 新米の予想収穫量、1割増 746万8000トン―農水省 [蚤の市★]
- 高市「発言は撤回しない。謝罪もするな。外務省局長!任せたぞ。」👈なにをさせたかったの?😲 [826239858]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【悲報】『岡田が日和って逃げたのに高市が自分から突っ込んだ発言をして自爆した』⬅国会答弁、実際はこれだった…… [158478931]
- 自分に自信がない女の子、陽キャ美容室で80cmのエクステを付けた結果wwwwwwwwwwwwwwwwwww [329329848]
- 【実況】博衣こよりのえちえち歌枠🧪
- 外務省局長、よくわからないまま帰国へ [834922174]
