★★Java質問・相談スレッド184★★
プログラミング言語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 Oracleの無料JDKダウンロードサイトが真っ白です どうにかしてください あそこは真っ白になったり現れたりを繰り返しているようだ。 時間を空けてまた見てみると良い。 JMHの@Paramはなんで文字列で指定するの? @Param({"1","2"}) int size; intに対しても文字列。なんで? あと @Param({"1",...,"2"}) こういう...の記法は何を意味してる? JAVA初心者でもBASICのように簡単にプログラミングできる方法を開発しました switch(GOTO){ case 10:処理;break; case 20:処理;break; case 30:処理;break; } これでBASICで便利だった行番号とGOTO文が使えます なおこのコードはフリー素材として誰でも使えるようにします 恥ずかしがらず活用してください >>9 それGOTOって言わなくね...? GOTO使いたいならbreak, try catch使って擬似的に再現すればいいと思うけど。 「e(fx)clipse3.8.0」をEclipseのマーケットプレイスからインストールしました。 エクリプスで、ウィザード→javaFx→javaFx Projectを選択して、JREは[JavaSE-16]を使用してプロジェクト作成すると、 自動生成されたコードですでにThe import javafx cannot be resolvedが発生してます。 そのため、上記プロジェクトのビルドパスの[Oder and Export]のタブでJavaFx SDKにチェックと入れてみたしたが同じエラーがでます。 どうすればいいでしょうか? e(fx)clipseプラグインって開発止まってるでしょ JavaFX開発するならIntelliJ IDEAのほうがいいと思う Web開発しないなら無料のコミュニティエディションで十分だし javaファイルをフォルダーに入れて それに単純にアクセスする方法はないでしょうか? importを使えば何とかアクセスできるんですが もっと単純にHTMLみたいな感じでアクセスしたくてたまりません それにimportだと同一クラス名が使えてしまうのでまぎらわしいです Folder/Class fc = new Folder/Class(); みたいな感じでやりたいんですがもちろんこのコードは通りません 助けてください >>14 すいません自己解決しました Folder/Class fc = new Folder/Class(); ではなく Folder.Class fc = new Folder.Class(); とすればよかったみたいです エンターキーをJbutton上において押下したときでも、ボタンのアクションを呼び出したいのですが、 どうしたらいいでしょうか? KeyListenerをimplementsして、下記のようにしたのですが、 JButton okButton = new JButton("OK"); okButton.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_ENTER) { System.out.println("エンター"); } } }); エラーが出ます。 The method addKeyListener(KeyListener) in the type Component is not applicable for the arguments (new KeyAdapter(){}) >>16 import java.awt.event.KeyAdapter; ありがとうございます! インポートが足りなかったのですね。 因みに、エンターキーが押下された場合に、既にある okButton.addActionListener(new ActionListener() {..処理..} を実行するためにokButton.addActionListeneを呼べたりできるんでしょうか? イメージ的には if (e.getKeyCode() == KeyEvent.VK_ENTER) { okButton.getAction().actionPerform(); } です。 アクションリスナが実行されるのはアクションが起きたときなので okButton.doClick(); でいんじゃないかな Stream.of(okButton.getActionListeners()) .forEach(x -> x.actionPerformed(null)); これで呼べなくはないだろうけど これをやるならActionListenerで行ってる処理を別メソッドに移動して そのメソッドをActionListener, KeyListenerの双方から呼ぶようにするのが正当なやり方だと思う 教えて頂いた方法をそれぞれ試してみようと思います。 色々勉強になりました。ありがとうございます! セキュリティって何ですか? JAVAプログラムってそんなに簡単に外部から侵入できるんですか? なんでFXCollections.observableArrayListのところでエラーが出るんでしょう? ttps://pastebin.com/qxC6PKaY newしてんのにコンストラクタ呼び出しになってないからじゃないの? >>24 ホントだ。newしてた。orz ありがとうございます。 漏れが登録していたJava のサーバーから、パスワードを抜き取られましたとか、 Microsoft かブラウザから、通知が来た 大きなセキュリティーホールがあったけど、 ほったらかしで、それを修正していないサーバーも多い 変数名を変えたいんですが、100個以上あるので万道臭いです。 なんか1発で買える方法とかありませんか? >>21 簡単と感じるかどうかは主観の問題。君から見て複雑で難しいものであっても簡単と感じる人はこの世のどこかに居るかも知れない。 >>12 JREがOpenjdk系だとjavaFX統合版、JREとjavaFX別モジュール版とある もしかしてJREのみのインストールしとらん? Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:756) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:473) at java.net.URLClassLoader.access$100(URLClassLoader.java:74) at java.net.URLClassLoader$1.run(URLClassLoader.java:369) at java.net.URLClassLoader$1.run(URLClassLoader.java:363) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:362) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601) >>34 Java16でコンパイルされたクラスをJava8で実行しようとしていてそれはダメですよってエラー >>34 UnsupportedClassVersionError Spring Batch chunkの使い方わからん 真剣に悩んでいます floatのもっと簡単な使い方を教えて下さい float baka=5.963; とするとエラーが出ます float baka=5.963f; とfをつければエラーは消えますが、いちいちつけるのが面倒です 例えば大量に数値を打ち込むときにfをつけてたら大変でしかたありません 何とかfをつけない方法はないでしょうか? doubleを使えというのはなしでお願いします もう3日もやり方を模索して見つからずほとんど寝ていません 切実です >>40 どうしても嫌だという場合は例えばファイルに文字列で入れておいて初期化時にファイルから読んで変換するとか、 文字列の配列でプログラム中に埋め込んでおいて初期化する時にまとめて float の配列に変換するとか、 そんな風にするしかないんじゃないかなあ? 入力が大変というぐらい沢山あるのであればやっぱファイルに入れておくのが良いのでは? 後で変更する時にプログラム修正しなくて済むよ。設定ファイルのようなもの。 >>39 コミット間隔を指定するだけっしょ データが大量にあるときに便利 ブックマークレットのスレッドかこちらか悩みましたが質問なのでこちらでご相談させていただきます。 他者のWebサイトを閲覧する際、JavaScriptを用いて作成されている場合、リンクを新しいタブで開けない場面があります。 頻繁にページを進んだり戻ったりする場面、可能であればリンク先を別タブで開くようにしたいです。 ブックマークレットを用いて、現在ページのJavaScriptのリンクを別タブで開くように書き換える処理をすることは可能でしょうか? >>45 ここはJavaScriptのスレではなくJavaのスレなのでスレチ >>46 スレ間違いでした。教えて頂きありがとうございます。 自作のオブジェクトをツリー構造で管理したいのですが出来合いのクラスでおすすめはありますでしょうか 親ノードから直下の子ノードに順次アクセスしたり、最下位のノードからルートまで階層をさかのぼって情報収集したり、子を親から切り離してツリー構造ごと別のノードの子として移動させたりしたいです swing の JTree の中で使っている DefaultMutableTreeNode のユーザーオブジェクトに自前のオブジェクトを入れるのが現在の候補ですが他にいいのがあれば知りたいです 格納するユーザーデータにジェネリックスが使えればベストです >>50 うまく説明できずすみません ほしいのは個々のデータオブジェクトを格納できるノード的なクラスかツリーとしてアクセス可能なCollection的なクラスです 標準ライブラリにはないね ディレクトリ構造のような多分木でしょ 自作するのがいんじゃないかな AWSのS3のような感じでパスをキーにした連想配列を木構造とみなすこともできそうだけどね 統一教会に聞いてみてはどうかな。 色々教えてくれるんじゃないかと。 まず自民党支部で紹介状をもらってから家庭教会(韓国籍の方は高位なので同胞教会)に行けば親身になって相談に乗ってくれます。 >>55 コードサンプルまでありがとうございます 残念ながらほしいのとは違いました ちょっと機能あり過ぎて使いこなせるか不安ですが自前で作るよりはずっと良さそうなので javax.swing.tree.DefaultMutableTreeNode を使うことにします。 (ごめんなさい初心者質問スレがあったのですね 次からはそちらにします) 霊感商法の被害にあってる人が大勢いるのに、国葬とは、何を考えているのか。 jsoupでいくつかのサイトのHTMLを取得する場合、マルチスレッドにすると順番に読むより早くなりますか? 基本早くはなるけど、そういう質問するレベルだとスレッドプールやらその辺の実装方法が分からないとね・・・ ↓知ってる人いたら教えてくだされ "ABC".replaceAll(".*", "DEF") ってやると結果が"DEFDEF"ってなる テキストエディタとかだと単純にDEFに変換されるだけなんだけど javaだと正規表現の".*"が""(ブランク)と"DEF"の2回マッチしてるみたいなんだ これってjavaだと当たり前の動作なのかな? ちなみに、 "".replaceAll(".*", "DEF") ってやると"DEF"になることから 最初のやつは"ブランク"部分と文字列部分の2回ヒットしているんじゃないかと推測してる "AAA".replaceAll("(.*)", "($1)") これが (AAA)() こうなった 末尾の空文字列とマッチしてるっぽい 変な動作だけど多分それで正しい 任意の一文字とそれの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())); } ごめん、>>73 の"null"って書いたのは空文字のことね "\0" ではないので念のため なんどもすまん 落ち着いて考えたら ".*" と ".*$" で動作が変わったらおかしいね ".*$" での動作が納得できないは取り消します 試してくれてありがとう 何か指定のしかたが悪いのかと思ってあがいてみたけどやっぱりダメだった そういう仕様なんだと思うことにします Ruby でも、2回マッチする puts 'abc'.gsub( /.*/, 'def' ) 出力 defdef 久々にスレ見たらこんな頭の悪い問答を何時間も続ける低次元っぷりに絶望するゴミスレ JFrameのボダンを押下して表示したダイアログボックスから画像を選択し、その選択した画像上でマウスをクリックしながらドラッグした範囲に四角形を描画したいとおもっているのですが、四角形が描画されません。 何かおかしいでしょうか? ttps://pastebin.com/XEHpQkrL 『良いコード/悪いコードで学ぶ設計入門』という本がJavaを使って、 オブジェクト指向プログラミングの説明をしているのですが、非常に わかりやすくて勉強になっています。 このような本は他にないでしょうか? 本じゃないけど、boostのソースはためになるな。 >>83 ありがとうございます。 ソースコードはハードルが高いです。 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; ■■} } 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; ■■} } >>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; ■■} } >>85 のように親クラス 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倍した値がリターンされる。 ようですが、どういうルールに従っている結果でしょうか? 各メソッドを 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 まあ少し分かりにくいんだけど、 クラスBのインスタンスを生成してメソッドB.m2()からクラスAのメソッドA.m2()が"super.method名()"で呼ばれたとして、 その時、クラスAのメソッド(A.m2())中でもthisはやっぱり、当然に、クラスBのインスタンスのままなんですよ(勝手にインスタンスが生まれ変わったりはしない) で、クラスBのインスタンスに対してm1()呼び出しをするので、B.m1()が呼ばれます 先ほどの様に、各メソッドに System.out.println(this.getClass().getName()); でも追加してみればわかるかと >90 0点の回答。馬鹿。二度と書き込まないように。 >91 30点の回答。アホ。二度と書き込まないように。 >>92 が100点の回答しろよw 無能なんだろうけどw 100点の回答教えて欲しいならもっとへりくだらないと 煽って回答引き出そうとか幼稚園児か?アホ >>87 B.m2() を呼ぶと、super で、A.m2()が呼ばれる この時、this が、B インスタンスから、 その中のA インスタンス部分を指すように変わる だから、A.m2()を呼ぶと、 B.m1()ではなく、A.m1()が呼ばれる 0点どころかおもっくそ嘘教えてるしw マイナス1億点 アホバカ そういえば某大手SIerのコーディング規約で「親クラスのメソッドを呼ぶときはsuperを明示すること」ってあったなあ メソッド定義が自クラスでは親クラスに書かれていることが分かりやすくなるとかなんとか 案の定、子クラスでメソッドをオーバーライドしても呼ばれないというトラブルが続発した 本当に親クラスのメソッド呼び出しに固定したいとき以外は super 書かないほうがいいね そもそも親クラスのメソッドを使いたいのにオーバーライドするって 設計がおかしいのでは・・・ >>100 親クラスのメソッドを使いたいわけではない 開発初期に子クラスでオーバーライドしない場合は super を付けろという規約だった 当然、後から子クラスでオーバーライドしなければならないような変更が発生することもある そうなったときに、super を明示するという規約が仇になったという話 インスタンスの意味もわからんようなのが回答側に回っちゃいかんな 列挙型で整数を宣言したんだけどエラーになる。 コード 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個 直し方教えてください Kotlinスレあるし基本はそっちでしょ JVMやバイトコード関連質問とかだと微妙だけど、 それもKotlin使ってる場合の質問なら基本Kotlinスレじゃね? >>104 それコンストラクタが書いてないじゃん。 入門書をもっとよく読むかネットで java enum とかで検索して調べた方が良い。 public enum Sample { A(10), B(20); Sample(int n) { } } これでおk 勉強を開始して3週間、優しいJavaを1周もしてないです 章末の練習問題を初見で解ける章と、初めてみるパターンで 解けない章があります 読めば理解はできるのですが、センスが無い?それとも勉強を進めて引き出しを増やしていくもの? 同じ時間で解けたという友人もいて、少し悩んでいます >>114 有難うございます! 取り敢えず継続していきます、、 onMessageの中でDBコネクトして最後にクローズしてるソース見て、なんでonOpenでDBコネクトしてonCloseしないんだろうと思ったんですけど onMessageで毎回DBコネクトするのが一般的なんでしょうか? そうですね 必要な場面で接続して用が済んだらすぐに閉じるのが良い設計だと思います パフォーマンスが気になりますか? いまはコネクションプーリングという技術があって論理的にクローズしても下位レイヤーでは接続を維持するような仕組みがあります パフォーマンスのためにデータベース接続を開きっぱなしにするのは設計が古いです なるほど c言語ばっかりやっててJAVAはど素人 WEBは全くわからないので 考え方が古かったんですね コネクションプーリングの勉強からはじめます JPanel p = new JPanel() { BufferedImage img; try { img = ImageIO.read(new File("....")); } catch (IOException e) {} void testA() {} void testB() {} }; な感じのインナークラスの書き方で、どのようにimgをtry catch書いたらいいでしょうか? catch節になにをコードしたらいいかわからないということ? >>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の書き方が分かればいいなと思っております。 >>121 コンストラクタの中にtestAとtestBが入っちゃってる void testA の前の空白行に } を入れろ >>119 素直にJPanelの継承クラスを書くのがいいんじゃないかと >>122 void testA の前の空白行に }を入れたのですが、下記のエラーが表示されました。orz Multiple markers at this line - Syntax error, insert "}" to complete ClassBody - Syntax error, insert ";" to complete LocalVariableDeclarationStatement >>123 おっしゃる通り、素直にJPanelの継承クラスを書いたほうがよさそうです。 ただ、初めて見る書き方だったので、勉強のためにもう少し調べてみようと思います。 インスタンス・イニシャライザを使え JPanel = new JPanel() { BufferedImage img = null; { try { img = ImageIO.read(new File("....")); } catch(IOException e) {} } void testA() {} void testB() {} }; >>125 ありがとうございます! インスタンス・イニシャライザは初めて知りました。 これからも少しづつ構文の勉強をします! a = new byte[num]; a[0] = (byte) 0x0A; のように値を代入したい。 String b = "0A"; が与えられているとき、どうすればバイトとして変数aに与えられた値を入れれますか? a[0] = (byte) ("0x" + b); Byte.parseByte("0A", 16); フォルダの中にある各ファイルを対象とした処理を書きたいのですが、 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以外を使用するべきでしょうか? filterとtoArrayを;で分けてるのが良くない、つなげるんだよ、つなげればきっとうまくいく >>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 とエラーが表示されるので、もう少し調べてみます。 Pathのシーケンスを配列にするなら型をPath[]にしないと Fileにしたいなら.map(Path::toFile)を入れるといい >>133 ありがとうございます! 助かりました! funBで例外が発生した場合、funcAの処理をReturnしたいんですけど、 基本的にどのようにコードしたほうがいいのでしょうか? フラグを用意して、funcBで例外発生したらフラグをTrueにするんでしょうか? public void funcA() { String tmp = funcB(); if (funcB()で例外発生した) {return;} } public String funcB() { try {} catch(Exception e) { e.printStackTrace();} } これで良い、例外が投げられたら処理は中断される public void funcA() { String tmp = funcB(); } public String funcB() { } funcBで今catchしてるってことは多分checked例外でしょ? そうならchecked例外がSomeExceptionとして public void funcA() { try { String tmp = funcB(); } catch(SomeException e) { e.printStackTrace(); // なんらかのエラー処理 return; } } public String funcB() throws SomeExecption { SomeExceptionが生じる処理 } ヒープメモリとかスレッド周りの知識が入門書ではほとんど得られなかったのですが詳しく実践していける粒度で解説してるテキストとかあれば教えてください こういうレスする奴って自分も知らないけど取り敢えず何か言っておきたいだけのゴミなんだろうね ChatGPTに質問してみたら? 「ヒープメモリとかスレッドについて教えて」 ってやったら、教えてくれるよ。 しれっと嘘つくこともあるから裏取りはちゃんとやってな。 バカってネットで情報収集して自分でまとめられねーんだよな だから本とかぼったくり教材みたいなのに進んで金出したがる 対価を出せばまとまった情報が楽に手に入るから ゴミの典型よ >対価を出せばまとまった情報が楽に手に入る 必要な情報が手っ取り早く入手できるなら十分でしょ 日常生活のストレスを発散するようにしょうもない暴言をレスする奴はゴミの典型ではないのかな? 今の時代本はネットでも拾えないような局所的な知識を得る時だけに見るもんで お前みたいなバカはそこらへんに腐るほどある情報にすら対価払っちゃうただのカモネギなんだよな こういうバカムーブしかできないのがゴミの典型 バカがマウント取りたがってて草 こんだけ色んな情報があるのに初心者にそれを精査なんてできる訳ない 実績があって評判のいい教材に金を払うのは当たり前だろ とっかかりのインピーダンスミスマッチというか、知識0から1への段階への壁を打開する為に教材に投資するのは全然アリだわ。 世の中の天才達だって、初等教育は誰かから受けてるし、20歳超えても大学・大学院までお世話になってる。 許容範囲の予算で優良な教師得られるなら得るべき。 ゴミの自覚はあったんだなw 顔真っ赤にさせちゃってごめんなゴミw 思考能力0のチンパンカモネギバカだもんなw ネットでググって理解できない程のバカって自分が知りたいことは ピンポイントで全部書籍になってると思ってるのもバカすぎて怖いんだよな バカのバカすぎる質問に対して2、3レスついた回答見て普通は察するもんなんだけど ほんと教科書みたいになんでも答えがあると思ってる低能学生バカって感じだなw ネットでググって完全に理解した気になってる痛い中高生っていつの時代にもいるよな バカ学生のくせに朝はちゃんと起きれるのかw バカだからメモリの見方もスレッドの仕組みもわからんから一生懸命馬鹿でもわかる本探してんだもんなw spring frameworkって他の言語でいうとrailsとかlaravelみたいなものでしょ? なのになんで難しく感じるんだろ 昨日から一生懸命携帯とPCで書き込んで忙しい低能バカ学生だなw 本が一番といいながらこんだけバカなんだからお前が本読む意味なんて微塵もねーわなw もうこいつの相手しない方がいいかも ただのレス乞食だろこれ まぁメモリもスレッドも網羅してるJava書籍があると思ってるバカ学生じゃ相手になるわけねーわなw 基本のキの字すら理解してないのに本読んで基本理解するとか書いてるホンモノのバカなんだからw 逃亡宣言なんかいちいちせんでええからとっとと消えろゴミ 知らないだけでしょ 知らないことを偉そうに言うなよ 意味不明w ほんとバカって何言ってるかわからんなw バカ「絶対に100億兆円稼げるアプリの実装方法が書かれた本を教えてください!!!」 賢者「は?ねーよバカw」 バカ「知らないことを偉そうに言うな!!!」 THE 糞バカ 取り敢えず上から目線のゴミ野郎はNGに入れといたわ 非建設的な持論を並べ立てるだけのバカほど見苦しいものはない まあ現実が上手くいってないんだろうねこの人 バカにとってはぼくちんの気に食わないレスは全部非建設的だもんなw 逃亡にしろNGにしろいちいち宣言しなくていいからとっとと消えろってゴミwww バカだから何言われてるのかわからないだけでしょ わからないことを偉そうに言うなよ まあ雑談なんだけど、独学でjavasilverはとって今オンラインスクールで勉強してるのね(独学でwebアプリ作ろうとかしだすとすごく効悪いと思ったから)、まだそんなレベルなんだけど、JAVAってオブジェクト指向が難しいっていうけど、何をやりだしたら難しいのかな。 他の言語知らないから比べられんのやけど。 独学でjavasilverまではとって、まだそのレベルなんだけど、JAVAで難しいって言われるオブジェクト指向って、どうゆうとこだと思います? クラス型の変数をつくってそこにオブジェクトをつっこむってところがいまいち納得いかないけど、そうゆうとこかな。 頭の中で理論立ててくいのが大変。わかる人はもう慣れで考える必要もなく、読んだり組んだりするのかな。 クラス型の変数にnewしたやつを代入して、その変数がメソッドの引数に使われてると、つどつど内容を追って考えるものですか? ライブラリやモジュール設計するつもりでなければ気にすんな Tomcat上で動作しているWebアプリがあるのですが、 テキストボックスを追加するとかの改造したいと思ってます ただ、フレームワークか何かを使っているようで、 正直、動作がよく分かりません Eclipseとかで、ソースのここに来たらブレーク、みたいに指定できますが、 似たような感じで、ブラウザのこのボタンが押されたらブレーク、みたいにして その時にどのソースのどこが動作していたかが分かるようにならないかと 思ってますが、そういうことってできますか それとも構造を読み解かないと無理でしょうか 知識不足 まず画面とトムと業務クラスがどういう連携してるか知るところから理解してないと話にならん そのレベルだと画面のサブミットの意味も理解してないだろうからHTMLの勉強からだから絶望的知識不足 画面にしてもwebアプリサーバーにサブミットする方法はformだったりスクリプトだったり非同期だったり テンプレエンジン使ってたりいろいろあるから読むのなんてあたりまえ Java は、Spring Boot, Groovy とか? 基本はRuby on Rails で、それ以外のフレームワークは劣化版 YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンが有名 WSL2, Linux, AWS, Docker, VSCode, CircleCI, Github Actions Bootstrap, React, Vue.js, TypeScript 最近、Java のログ機能に重大なセキュリティーホールが見つかって、 Tomcat のサイトからパスワードが盗まれたとか、Edge から通知が来たw とある文字コードのバイト列を他の文字コードの文字列に変換するには 下記みたいに一旦tmpStr、tmpBytesに変換しないと駄目なのかな? byte[] bytes = {0x00, 0x01, 0x02, 0x03}; // 例えばShift_JISとする String tmpStr = new String(bytes, "Shift_JIS"); byte[] tmpBytes = tmpStr.getBytes("UTF-8"); String convStr = new String(tmpBytes, "UTF-8"); >>176 バイト列を new String(bytes, charsetName) で String のインスタンスにしたら内部では char[] に UTF-16 で保持されている。つまり Unicode になっている。 その String のインスタンスから何かのエンコードのバイト列にしたいなら getBytes(charsetName) 等を使う。 >>177 そうするとこのステップを踏まないと正しくエンコードされた 文字列が出力されないんですね > byte[] bytes = {0x00, 0x01, 0x02, 0x03}; // 例えばShift_JISとする Shift_JISでエンコードされたバイト列 > String tmpStr = new String(bytes, "Shift_JIS"); Shift_JISでデコードしてStringを得る > byte[] tmpBytes = tmpStr.getBytes("UTF-8"); UTF-8でエンコードされたバイト列 > String convStr = new String(tmpBytes, "UTF-8"); UTF-8でデコードしてStringを得る これらは同じものだよ ・Shift_JISでデコードしたString ・UTF-8でデコードしたString 文字コードはString→バイト列の変換規則であって String自体にはShift_JISもUTF-8もないよ >>179 バイト列そのものが文字コードであって 相互に変換するのが文字コードの変換になる感じですか その相互の変換はStringを介さないと出来ないのでしょうか? >>180 Shift_JISのバイト列をUTF-8のバイト列に直接変換する機能は標準ライブラリには用意されてない 自作するならShift_JISは8000文字くらいだからトライ木に詰め込んで変換するとかかな 自作しても処理が速くなるとは限らないしStringにデコードするのが正統派スタイルよ 英数字だけならShift_JISもUTF-8も同じバイトだから変換する必要ないけどね バカって基本的な原理を全く知ろうとしないで延々と質問するよな 原理を知ってればそれに頼らないでどう処理すればわかるのに 答えだけすぐ見る頭の悪い学生みたいに常に行き当たりばったりの行動しか取れないから永久に進歩しないし嫌われる 逝ってヨシ!!!!!!!! >>181 介するのが標準でマッピングするようなものはなく そう単純なものではないのですね ありがとうございます >>182 失礼しました ただスレの趣旨には沿ってるかと思うのでご容赦ください >>182 君なんでそんなに攻撃的なの? 更年期のババアなの? 基本的に、CP932(sjis)のようなWindows 専用日本語を知っている外人は、まずいない。 逆に日本人で、CP932以外のCPを知っている香具師がいないのと同じ 例えば、MySQL もいつも日本語のバグを修正しているから使えない。 Ruby では、iconv を非推奨にして、NKF に変わった CP932を変更しても、各モジュールがその変更に追随しないから使えない。 特に、Ruby, Java の2大バックエンドのウェブ開発では、 OSS を使うから、UTF-8 以外には対応しない これが基本中の基本 一応枝葉の部分を拾っておくと、java.nio.charset.Charset(やCharsetEncoder)あたりを使えば Stringを介さずにBuffer(バイト列)のままShift_JIS(あるいはWindows-31J) -> UTF-16 -> UTF-8と変換することは出来る 巨大なデータとかメモリマップファイルとかでもなければStringを介するほうが楽でよいと思うけど(どちらにせよUTF-16経由になるし) あとおそらくcharsetはShift_JISではなくWindows-31Jを使う方が望ましい結果が得られる可能性が高いかと 某マイクラのJava版の中身を見たりいじったりしたいのですが、 versions/1.19.4/1.19.4.jarというファイルがメインjarに見えるので直接java -jarしたら Error: Could not find or load main class net.minecraft.client.Main と言われてしまいます 実際マニフェストにはnet.minecraft.client.Mainだと書いてあるのだけど、jarを展開すると 上記クラスファイルはなく、代わりにnet/minecraft/client/main/Main.classというのがある 一方マイクラのlauncherから起動する分には何の問題もない これってどうなってるんでしょうかね。これは本当のメインjarではないとか? あるいはマニフェストの設定をランタイムで変更したりとかできるんでしょうか あ、もしかしてmainのあるクラスをjavaの引数に指定すればいいのかな? 久々にJava案件に関わる事になりそうなんだが 今ってJava8が主体っていう認識で良い? Java11やJava17とかも追加で勉強しておいた方が良い? >>190 そういうのってその案件次第じゃ? 古いJDKを使って欲しい案件だってあるでしょ ちなみに今Android Studioをチェックしたら17が入ってるようだ しかしこのスレは生きているのか フロントがJS、バックがSpringMVCという構成ではなく、 バックをWebFluxにして、R2DBCを使えば、単純なDBクエリだけれどリクエスト数は多い というサービスに効果あるかな。今後も、WebFluxのユーザは増えていくでしょ。 と思ったのですが…… JDK20以降でLoomが完全実装されたら仮想スレッドになって 実質、ノンブロッキングのコードを書いても書かなくても同じになって、 WebFluxやR2DBCの優位性は無くなります? ワシのところはJava11だ、Java8の知識があれば十分 冗長な糞コードしか書けない雑魚は別にバージョンなんて全く気にする必要もないし気にするだけ思考の無駄 8未満と8以降じゃ公文式使えなかったりストリップも使えないからオワコンだけど javaってjarを実行するよりclassファイルを実行したほうが速いですか? なんとなくjarは最初に圧縮の解凍があって遅そうなイメージがあるのですが そんなことはないですか? >>200 圧縮されていた方が(コンピュータからしたら)とても遅いディスク等からメモリへの読み込みが少なくて済むので速くなる。圧縮状態から元に戻すのはメモリ上でやるのであまり時間が掛からない。 もちろんこの逆の状態とか、圧縮状態から元に戻すのに物凄く時間が掛かるCPUだったりそのような圧縮だったりすればこの限りではない。 でもそんな環境は今は珍しいと思うよ。組み込み関係のマイコンとかならあるかも知れない。(ラズパイみたいなお前普通のPCだろとツッコミを入れたくなるようなやつは除く) その速度差を気にするのだったら そもそもJavaで書かないほうがいいと思う Javaって今時Union型も無いんですか どうして? 全部あったらプログラミング言語としての違いがなくなってしまいますね。 >>205 JavaはクラスのインスタンスはGCで管理するので共用体の必要が無いのでは? >>205 生のメモリとオブジェクトは概念として完全に分離されてるから さまざまな型システムにはメリデメのトレードオフが必ずある 共用体も節度を持って使えば便利だけど濫用すると惨劇を招く Javaはシンプルさと移植性を重視してデザインされたので、クラス定義や複数の変数で代用可能な共用体は用意されなかった Cの直系やBetter JavaScriptと違ってそんなに必要になるシーンも多くないのでSealed Classで事足りるだろう 世界中にある莫大なコードベースに対して破壊的変更が少なくなるように配慮せざるを得ない部分もある シンプルさが大量のプログラマを生んで成功したからこそ長い栄華を誇ったのだし、栄枯盛衰の落ち目を笑うのは浅はか Javaにも様々な新機能が追加されていってるけど頑なに実装を拒んでるものもあるよな その筆頭がasync/await 要望が多いのに「代わりにVirtual Thread使ってくれ」とか言ってるからな Virtual Thread とは使い処が違うんだよ!! 質問です。 pleiades 2023 で gradle のプロジェクトをインポートしようとしているのですが 以下エラーが出てビルド出来ません。 ------------------------------------------------------------------ FAILURE: Build failed with an exception. * What went wrong: org/gradle/api/plugins/MavenPlugin > org.gradle.api.plugins.MavenPlugin * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. CONFIGURE FAILED in 1s ---------------------------------------------------------- 結構頑張ってググっているのですが原因が分からないのですが、 どなたか助けていただけませんでしょうか。 環境は Mac Ventura, gradle 8.3, Java17 です。 文字数制限で連投になりすみません。 なお build.gradle の内容は以下です。 --------------------------------------------------------------------- plugins { id 'org.springframework.boot' version '2.3.5.RELEASE' id 'io.spring.dependency-management' version '1.0.10.RELEASE' id 'java' id 'eclipse' id 'idea' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = 11 compileJava.options.encoding = "UTF-8" repositories { mavenCentral() } dependencies { implementation('org.springframework.boot:spring-boot-starter-jdbc') implementation('org.springframework.boot:spring-boot-starter-thymeleaf') implementation('org.springframework.boot:spring-boot-starter-validation') implementation('org.springframework.boot:spring-boot-starter-web') runtimeOnly('com.h2database:h2') runtimeOnly('org.springframework.boot:spring-boot-devtools') testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation('org.springframework.boot:spring-boot-starter-test') { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' } } すみません、自己解決しました。 ビルドに使う Gradle を 7.2 にしたら何故か出来ました。 ググると maven プラグインは 8 から廃止なので maven-publish を使えみたいな記事はあったのですが、 maven-publish と build.gradle の plugins に書いてもダメだったんですよね……。 根本的には解決していないのですが、とりあえずご報告でした。 int[] a={1,2,3,4,5}; という入れる変数を作ったんですが、プログラムの途中で a={5,4,3,1,2};というふうにしたいんですができません。 いちいちa[0]~a[4]全部に代入しないといけないのでしょうか? >>217 参照って分かりにくいよな。 ぼーとしてると実体を見失うわ。 Cのポインター配列だとあり得ないけど。 >>216 a の参照先を変えてしまっていいなら a = new int[] { 5, 4, 3, 2, 1 }; と書けば良い。それまで a の参照していた先のメモリはgcが自動で解放してくれるので考える必要はない。 a の参照先をそのままにしたいなら一つづつ a[0], a[1], a[3], a[4] に代入するかループ使って代入すれば良い。 インプレースコピーで要素の入れ替え、みたいな話じゃないのか 設定ファイル(setting.config)があり、その中身が pathA="D:\\Download"; pathS="G:\\Download"; pathC="Z:\\Download"; と各行にあるものを読み込み、各Pathに設定されたディレクトリを指定した変数に代入するプログラムを書こうとしています。 その場合、一般的にはどのように読み込み処理を書かれるのでしょうか? >>222 java.util.Properties クラスのインスタンスを作って load() でそのファイルを読んで getProperty("pathA") みたいにして内容を取り出す。 intellij使ってメソッド定義する際に引数にOptionalを指定すると 「Optional<型>がパラメータ'変数名'の型として使用されています」って警告が出るけど 引数にOptional指定するのってよくない書き方なのかな? 背景が黒くならないのは何故でしょうか? public class ImageViewer extends JPanel implements Runnable { private static int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width; private static int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height; private Thread thread; public ImageViewer() { thread = new Thread(this); thread.start(); } @Override public void run() { while (true) { repaint(); } } @Override public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D) g; g2.setBackground(Color.BLACK); } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { JFrame frame = new JFrame(); frame.getContentPane().add(new ImageViewer()); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(0, 0, screenWidth / 2, screenHeight / 2); frame.setLocationRelativeTo(null); frame.setVisible(true); }});}} >>227 paintComponentの中で塗りつぶししてないからじゃない? 今スマホだからメソッド名が分からないけど fillXXとかいう名前のメソッドがGraphicクラスになかった? >>228 ありがとうございます。 g2.clearRect(0, 0, getWidth(), getHeight()); を追記したらできました。 ちなみに、エクスプローラーの左側にフォルダ構成が表示できる「ナビゲーションウインドウ」はどのような方法で実装されいますでしょうか? >>226 基本的にOptionalは戻り値として使うために作られたもので、引数として使うことを想定してない 一般的にも引数には使わないことが推奨されている(いろいろ議論はあるけど) 「引数がnullの時にデフォルト値を与える」みたいな使い方をしたくなるけど、それやると呼び出す側にOptionalで包むことを強制することになるので、かえって煩雑になったりするんだよね ttps://pastebin.com/tM0VgmHA 左側に表示されるフォルダをクリックすると、右側にそのクリックされたフォルダの中身を表示したいのですが、どうすればいいのでしょうか? >>232 クリックを感知するリスナー作って 表示するようにするだけ 非プログラム民です Javaの一番初歩的なスレがここっぽいので失礼します Win11にJavaってあんまり要らないんでしょうか? 8年ぶりぐらいに新調したんですがそういや入れてないけど何も要求されてないなと気付きました PCの使用用途としてはネットサーフィンやゲーム程度 Office(Excel)はLibre使ってて今のところマイクラもやってない… プログラムなどPCの根っこ部分を弄るような人以外はもう特に入れる必要がない時代なんでしょうか? ちょっとふわっとした質問ですが教えていただけると助かります >>234 Javaのデスクトップアプリというジャンルがほぼ死に体なのでPCにJavaを入れる機会は大幅に減った 下手に入れて放置とかしてるとセキュリティホールになりかねないので必要になるまで入れない方がいいよ そうなのか それじゃあしばらくお別れになりそうだな 回答ありがとうございます Oracle公式のJava Runtime Environment自体が廃止されたし Javaは開発者が使うもの、ユーザーはアプリにバンドルされたJavaを使うことになったから ユーザーがJavaをインストールする必要はなくなった インベーダーゲームを作成していて、敵の左右移動についての質問になります。 敵の最初配置は以下のようになっており、最初は右方向に移動します。 ■■■■ ■■■■ → ■■■■ 右端へ行く途中に、いくつか敵が倒された後(倒された敵は□で非表示) □■■□ □□■□ □□□■ 一番端で生き残っている者(※ここでは一番下の右側の敵)が右端に着くと、全体が移動方向を反転したいと思います。 どのように実装されているでしょうか? 現在は以下の通りに敵を作り、それぞれに移動方向をセットしています。 Alien[][] aliens; for (int i = 0; i < col; i++) { for (int j = 0; j < row; j++) { aliens[j][i] = new Alien(x, y, this); aliens[j][i].setDirection(RIGHT);//右に移動する }} Alienのコンストラクタにthisを渡さないほうがいいよ thisを渡してるってことはAlienクラスが外側のクラスを参照してるってこと このような相互参照する設計は結合が密になって後々不都合が出ることが多い Alienインスタンスそれぞれが x, y 座標を持ってるんだからaliensを二次元(画面座標)にする必要はない ScopedValueの説明記事読んでたら思ったんだけど あれって同じ変数名なのに違う型になってるよね? Object x=; ScopedValue.where(x,,); これが対象スコープ内では ScopedValue x; として呼び出せてしまってる、ということだよね xが場所によって型が違う なかなか嫌な構文だね。可読性低下しない?勘違いしそう >>240 自分も説明読んだだけだけど、whereの第一引数はScopedValueじゃないか? >>239 ありがとうございます。疎結合やList<Alien>にできるよう見直します。 スペースインベーダーの敵の移動について、一番端にいる敵が画面の端まで移動した場合、方向を反転するという動きを実装しようとしております。 現在、敵が端まで行った際に反転するところまでは実装できたのですが、敵が画面外に少し出た状態で反転します。 画面の端できっちりと反転する方法はありますでしょうか? ttps://pastebin.com/2KFpUcpc あるんじゃない?てか、そんなの少し手前を画面の端とみなすように作れば良いだけでは? エラーチェックをする関数を作るとき、 エラーがあれば、エラーあるよーんってメッセージをつけた例外を呼び出し元に投げる。 ということをしたいとき。 エラーの詳細はどうでもいいとき、 throw Exception(“エラーあるよーん“) はだめなの? わざわざExceptionを継承したクラス作らないとだめなの? >>247 そのコードを呼び出す側が全ての例外をcatchするもしくは全ての例外をcatchしないという使い方しか絶対にしないのならいいんじゃね 例外クラスの自作はあまりやらないよな? 既存のヤツでだいたいは間に合う 作るとすれば エラー情報を盛込みたいとか しっくりくる名前の例外クラスが無い場合とか 後で拡張を考えてるとか そんくらいだよな なんでも質問スレからきました VScodeでjavaを勉強する初心者です プログラムが完成したのでjarファイルをビルドしたのですが jarファイルをクリックしてもコマンドプロンプトで起動しても デバッグでの動作を全くせずに終了してしまいます javaを入れなおして再起動などもしてみましたが起動しません どうすれば動くjarファイルを作成できるのでしょうか よろしくお願いします >>252 コマンドから実行したら何かメッセージ出力されるんじゃないかな それをここに貼り付けてくれ >>253 * 実行するタスク: java (build): Build Workspace Building all the Java projects in workspace... Task complete. * ターミナルはタスクで再利用されます、閉じるには任意のキーを押してください。 上記のようなメッセージが表示されますが、jarファイルは見当たりません。 >>255 リンク先はeclipseではないでしょうか build/libsという項目は見当たりません たぶん、jar ファイルにバグがあって、 エラーで終了しているのだろう プログラムの冒頭で、sleep, wait して止まるか確かめたら? もし止まらずに終了したら、プログラムの開始前に、エラーで終了している事になる >>247 Ruby なら、単にraise すると、RuntimeError となる raise "単なるエラー!" 俺の勘違いかもしれんが、>>254 はVSCodeのタスクのログじゃないか? コマンドプロンプトで起動したときのコマンドと出力を貼って欲しい Javaのメソッド参照ってそのストリームの各要素がインスタンスかつメソッド参照されてるメソッドがそのインスタンスに属する場合と、System.out::printlnみたいにそうじゃない場合と、Math::sqrtみたいにStaticなメソッドである場合、3種類を察して読み替えないといけないよね? ラムダ式と比べてメソッド参照の何が読みやすいのか分からんのだけど そもそも組み込み関数なのかどうか、staticなのかどうかがぱっと見分からない場合不便を感じるのは俺が読解力低すぎるのか? 初歩的な質問で申し訳ないのですが javaで1ピクセルの点を表示する場合どういった方法を用いるのが良いのでしょうか? >>260 試してないけどワイがやるとしたら java.awt.GraphicsのdrawLineかfillRectでやってみるかな OpenGLで1ピクセルの画像を表示するのがいいと感じます System.out.println("1ピクセルの点"); Java で awt や Swing を使って文字列を描画する時に、枠内に収まるようにするにはどうしますか? 例えば 100 x 200 ピクセルのサイズに合わせて 0 と描画したい場合はどうしたらいいんでしょうか? >>266 フォントサイズを測って描画するだけだよ クラスGraphicsからクラスFontを取得すれば出来る >>267 計るとは? フォントサイズはポイントでしか指定できませんよね? じゃあ実際に 100x200 ドットの内側に丁度よく文字を描画するのはフォントサイズをいくつに指定すればいい? >>271 Windowsなら96dpiだからフォントサイズ(フォントの高さ)200ピクセル(150ポイント)だろ >>266 画像を用意して表示する。 HTMLだってクライアントに合わせて大きさ違いの画像を選択しているんだぜ? その場で画像を作るのは、処理がもたついたときにボロが出るからな。 予めサイズいっぱいの画像用意して 描画領域に合わせて拡大縮小する、でもよかったな 絵が粗くなる欠点あるけど分かりやすくはある HTMLで複数画像用意するのは写真とかでしょ 図形なんかはSVGなどのベクター形式使ったほうがいい フォントも同様 あらかじめ複数サイズの画像用意するとかアホかよ Windowsの場合はこういうことも知ってる必要ありそうだね Windowsのディスプレイとモニター いまだ96DPIが基準 https://ascii.jp/elem/000/004/038/4038068/ >>278 そういうどうでもいい画像ファイルはWebブラウザ側がキャシュとして保持するから問題にならない。 >>279 いろんなアプリケーションで解像度が合わずにボケて表示されるから、一般人じゃなければいろんなものが混ざった結果だとは気づいている。 Windows 95の仕様では画面の見た目と、印刷時の見た目が同じになることを売りにして発表したが、640×480ピクセルや800×600ピクセルのモニターでは不可能だった。 1280×1024ピクセルが標準的になったWindows XPでも解像度が低すぎて解決しなかった。 ちなみに高精細ディスプレイ、高解像度ディスプレイは目の負担が大きいので、目が良い自分の感覚で作ってしまうのは問題がある。 見た目の格好良さよりも、誰もが読める、見えるものを意識していないと差別主義者と言われたら、反論できないから注意しろよ。 >>280 どういうこと? ブラウザがキャッシュしても初回の表示時間が遅くともなるでしょ? それを避けるためにデバイス解像度に合わせて小さな画像を送る最適化するんだけど >>283 Webブラウザ側がクライアントの情報付きでリクエストしているのに? >>283 初回が遅くてもいいじゃないか? Windows 95のナローバンドの時代の話でもしているのか? 画像をレスポンシブ対応にするには、 srcset で画面の横幅か、デバイスピクセル比によって、複数画像を切り替える <img srcset="small.jpg 320w, medium.jpg 640w, large.jpg 1280w"> Java Platform SE Binaryは動作を停止しました と出て画面が真っ白になるこたがあるんですけど メモリ不足ですか? 原因調べる方法ありますか? >>290 WER(Windows Error Repoting)を有効にしておくとプロセスがクラッシュしたときにメモリダンプが出力される それをJava BUG DATABASE に送るとよい またアプリでJNI/JNAなどのネイティブコードを使ってる場合には Javaだはなくアプリ側に原因があることも そういったとこも点検するとよい >>292 ありがとうございます! 調べてやってみます 作ってる会社がクズで保守契約してるのに調べろと言っても無視して何もしないんです 疑似的ボイス・トォ・スカル 組織はある程度大きくなるけれど構築方法 @Bluetooth v5.4 マルチ説ぞ可能なので同時に100に接続可能 飛距離は最大400メートル Aピンマイク.完全ワイヤレスイヤフォン【マイク付き】 ★これで司令塔を中心としたエリアが構築官僚 Bピンマイクのみの者は超指向性スピーカーにて指示を受けている 少し上のシステム C家の防犯カメラを道路が映るように設置 Dすまふぉのai機能拡張により仲間の未認識させる E口パクによる読み取りやジェスチャーやアイコンタクトによりさらに指示できる内容を増やしている @司令塔となる者にスマフォと全てのBluetoothをペアーリング AaIアシストにより各仲間に隠語で話すウ B警察にばれてモスク罪にAIによるアシストで行動パターンの変化をさせる 空き巣後の闘争中に路地に引き込んでの警察車両の足止め 仲間は通貨そのあとに車の故障で立ち往生これを繰り返す 万引きもチームプレイをすれば店員.万引きジーメンなどもかいくぐれる ネットを返していない特設通信なのでサイバー警察からも逃げれる >>289 互換性と古いアプリケーションを切り捨てることは時間のかかること あと50年以上はかかると思うよ AppleはCPUアーキテクチャ何度も変えてるんだよね MC68000 → PowerPC → Intel x86 → ARM(Apple M1) Android もいくつかのCPUアーキテクチャをサポートしてる WindowsはなぜかCPUアーキテクチャの刷新に失敗し続けている なんでだろ? >>293 動かすJava Runtime Environmentを 変えてみるのもいいかも >>296 Windowsはインテルのx86が消えかかっていて、AMDが作ったx64のCPUにほとんどか置き換わったぞ? なんでCPUを調べずに変わっていないと思っているのか? 互換性があるから同じように動いているものが多い。 >>296 アップル社なんて資金力がなさすぎて、ハードウェアはWindows PCのハードウェアを採用、OSはUNIXを採用して、独自規格は諦めた。 >>296 そもそもマッキントッシュは名前が同じだけで、PCとしては何度も互換性を失っている。 それだけシェアが低いということ。 >>298 記事の文脈理解できてる? x64も含めてx86が無くなるという話だよ? >>301 CPU内の話やJavaの仮想マシンの実装と、多く使われているPCアーキテクチャの変化をごっちゃにして話しても意味がない。 x64規格のCPUがなくなるのは、はるか未来のことだ。 過去の資産を使おうとして互換性に問題がでるのであれば、無理に置き換えてる必要はない。 Macなどが嫌われるのは、Macユーザーがそこまで意識してPCを選んでないからだ。 CPUを大きく変えて性能を上げるよりは、小さく作る技術に頼った方がまし ログレコードにクラス名って項目があるんだけど 全レコードにログ出力クラス名が出てるって プロが作ったものとしてどうなんすかね? >>305 プロ(格安労働させられてるので仕事も当然いい加減) >>305 ログの目的次第 インスタンスID、クラス名、メソッド名、引数の内容みたいなのが出力されてるとうれしい状況を想像できない? 引数の内容出してくれてたらうれしいけど そこのクラス名だしてくれなきゃ意味ないでしょ >>308 クラスClassでMethodクラスをとれば引数情報取れるだろ >>308 ログ出力クラス名というのがログ出力をトリガーしたクラス名じゃなくロガーのクラス名ってこと? であればどのロガーからの出力なのかを示すものだから理由はさらに分かりやすいと思うんだが いずれにしても不要だと思うなら消せばいいだけでは? 再審AIが発表されるたびににボイス・トォ・スカル器機をしている者が陥れられるⓀっ行為 これを聞けばよい ※ネットに反論の書き込んでもまづい言葉もある 最低でも安定して使用できる全ての化学科学論文を読み込ませておク ここで質問 マニュアルが2冊ある 近となる行為がある 禁となる行為 対象者が寝ている時に行わない 対象者が外では行わない 1一に24分以上行うと 2021年時点の危険行為なので現在はさらに科学が進んでさらにいるのでシビア read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる