Java入門・初心者質問スレ(ワッチョイなし) Part.8
JDKファイルの違いについて聞きたいんだけど
JDK1.8.0_172とJDK10.0.1は何が違うの? >JDK1.8.0_172とJDK10.0.1は何が違うの?
数字 巷の記事では無償版ガー有償版ガーとか騒いでるけど
Java案件のほとんどがBtoBの社内向けツールしかないんだから誰も金なんか払わん罠 >>9
社内向けとかB2Bだからこそ、簡単にJREバージョンアップ出来ないから、有償版のライセンスが活きてくると思うんだが。
社内で使うから保守切れててもいいわwみたいな思想なら知ったこっちゃないが。 バージョンアップしなくても動くのになんでわざわざ金払ってアップすんの?w
不正する意味も必要もない社内アプリで何の脅威に対して金払うの?w
頭大丈夫?ww そりゃ、サポート切れ製品を使うわけにはいかん、と言うコンプライアンス的な問題と、
実際にそれによって起きる問題を避けるって意味でしょ。
社内システムだからノーガードでOKは標的型の攻撃のあるこのご時世あんまり賢いとは思えないんだが。
バージョンアップしなくても動くから、バージョンアップせずにサポート(セキュリティパッチ)のある状態で使うために、ライセンスが要るんだが。
セキュリティパッチは無償で貰えると思ってた? で、そのサポートとやらは何のためにいるのって聞いてるんだけど?w
なんとなく怖いから?w
まぁ俺は使う側のただの木っ端だからどうでもいいけどさw サポートなんかとっくに切れてて脆弱性の塊であるIE8を使い続けてる
ゴミみたいな銀行と仕事のほとんどを銀行から貰ってる低レベルなゴミ会社すら存在するのに
何となく金払えよ的な雰囲気を醸し出しても払う奴なんているとは思えんけどね >>13
なんとなく怖いんじゃなくて、セキュリティパッチが当てられないと標的型攻撃の目標になった時にノーガードだからって言ってんじゃん。 標的型攻撃:
特定の組織内の情報を狙って行われるサイバー攻撃の一種であり、
その組織の構成員宛てにコンピュータウイルスが添付された電子メールを送ることなどによって開始される
ソーシャルハッキングに近い不始末が何でJavaのサポートが必要なことに繋がるわけ?w
メールか何かから感染したウィルスが"たまたま"Javaの脆弱性突いて
内部の人間しか使わないどうでもいい情報しか扱ってないwebサービスの情報の流出でも危惧してんの?w
そもそも外部に公開してないどうでもいいもんの心配ばっかしてホント頭大丈夫?w
ドヤ顔で「標的型攻撃の目標ガー(キリッ!!」とかこっぱずかしいこと言ってるけどさwww そもそも内部にあるもんの資源にアクセスされた時点で
Javaのサポートがどうとか以前に全部終わりだよなw
こいつオラクルの回し者か?wwww >>16
たまたまJavaの脆弱性をつくんじゃなくて、予めJavaのバージョン把握してれば、「たまたま」ではなくてそこ狙えるでしょ。
内部の人間しか使ってないどうでもいいシステムではないよ、イントラのシステムって。
んで、大体は相乗りしてる。
突破口そのものだよ。
あんまエンタープライズ環境知らないのに、想像で喋るの辞めたほうがいいよ。
Oracleの回し者がどうのとかではなくて。
こういうケースではJava使うの辞めなきゃね、ってレベルの話だよ。単に。
>>17
内部にあるものの資源にアクセスしても、資源には普通は端末なりログイン者なりの職制でアクセス制御かかってるよね。イントラなら余計に。
それがJavaで実装されてて、ランタイムに脆弱性があることがわかってる、なんて状態で運用できないでしょ。
ってかそこを付くのが標的型の特徴なんだから。
組織内の人間に単に攻撃を仕掛けるんではなくて、組織内の人間に、その組織の(システムなり、人間系なりの)脆弱性を把握して、それを攻撃するのが標的型だよ。
単にアタック対象を絞ることじゃない。 レスないからてっきり俺の言ってる事理解してどっか言ったかと思ってたのにw
そんなゴミみたいなレス考えるのに2時間もかかったの?w
>突破口そのものだよ
外部から見えない社内ツールが何で突破口になるの?wwねぇ?w
詳しく書いてみなよww書けるならw
>内部にあるものの資源にアクセスしても
内部にアクセスされた時点でJava関係なしに終わってるって言ってるの理解できる?w
ガチの池沼なのかね君・・
ちょっと怖いよw それにしても知ったかの馬鹿に限って
相手を知ったかっていう謎のチンパン負け惜しみ現象はなんなんだろうねw
馬鹿すぎて死ぬのかねこの手の馬鹿はw 2時間もかかったというか、仕事してるからな。
外部から見えない社内ツールの何が突破口になるか、ってそりゃ、標的型の攻撃でしょ。
こういう脆弱性のある社内ツールがある、って所まで把握してやるもんでしょ。
内部にアクセスされた時点では終わらないよ。
お前は本当に足りない知識で喋るの辞めたほうがいいと思うわ。
>>20に至っては完全なブーメランだろ。
馬鹿すぎて死ぬんじゃないかな。 Oracleが嫌い好きではなくて、ライセンスとコンプライアンスの問題なんだから、そのへんOracle憎しで勘違いされても困るわ。
標的型攻撃、を辞書の引用じゃなくて、ちゃんと理解してから書き込めよな。 Javaのアンチはともかくとして、Javaの信者な程今回のライセンスとリリース方法の変更は頭の痛い問題だと思うんだがな。
金なんか払わんと言ってるのは、MSDNについてるライセンスで本番サーバ運用できるじゃん、って言ってるようなもんなんだが。 0.1_も質問の答えになってないけど自分で自分の書いてることも理解できないのか?w
質問1
外 部 か ら 見 え な い のにどういう経路で攻撃するの?
ほれちゃんと書いてみw
標準型(爆w)の攻撃はなんとなくイントラのネットワークも攻撃できるかも?的な感じ?w
アホ あとレス返すのに2時間も3時間も考えるのやめてくんない?w
アホ >>24
外部から見えない所に内部からアクセスするために、内部の人間に実行させるのが「標的型攻撃」だが。
外部から見えないけれどもここにある、の情報を収集するのと、それを攻撃するのは分けて考えような。
前者の調査は調査で、ソーシャルハックなりなんなり別の方法で行うもんだろう。
あんま知らん事を語らんほうが良いと思うぞ。 >>25
仕事ぐらいするだろw
待ってる間、何してたんだ? はぁあ?www
内部の人間にやらせるならJavaも糞もないよな?wwww
小学生の屁理屈より酷いねこりゃw
ここまでアホならそりゃ金出すわwwははw
ちょっと面白かったよ
アホw まぁ、知ったかの馬鹿にはわからんのだろうな。
どういう問題か。
早めにミスって社会的に死んでくれたら世界がもう少しマシになると思うから、どうぞその理解でPGなりSEなり続けてくれ。 >>28
内部の人間に(不用意に)やらせるときに、サポート切れの環境があれば、脆弱性を突かせられるでしょ。
本来は何らかの認証認可がかかってんだから。
小学生以下の読解力おつかれさん。 内部の人間にやらせる、を、内部の人間が自発的に行うと取ってるのかな?
内部の人間が不注意で行ってしまうような攻撃なんだよ。
普段の取引先とそっくり同じfromで、自己展開アーカイブに見せかけた添付ファイルつけたメールとかでな。 あーあアホが顔真っ赤にしてファビョちゃってww
もうわかったからいいよw
ぼくちゃんの「ひょうじゅんがたこうげきなんだよッ!!(ムッキー」 はさww
がんばって見えない敵と戦うために金払えばええやんw
アホww 標的型だけど。
もうお前の底は知れたから、出直せ。 お前みたいチンパンのいる会社なんて誰も攻撃しないから安心していいぞw
アホw 今後こういうよく知らんやつに騙されてノーガード戦法取る会社がどれぐらい増えるんだろうな。 今後こういう知ったかで不安煽りまくる池沼に騙されて金払う会社がどれぐらい増えるんだろうなw >>23
OpenJDKはオラクルが自分たちの特許を侵害された、となったらいつでもオラクルの保持するJavaに関する特許で相手企業を訴える事が出来るってよ
OpenJDK使って好き勝手ソースいじってたら足元すくわれる可能性有る時点で使えんわ >>3
もうSWTも終わりだろ
スクリプト系言語に代わられつつある サーバーサイドはライセンスに関してダメージ無しって何で言えるの?
58 名前:デフォルトの名無しさん (ペラペラ SD93-Fd17 [183.72.127.214])[sage] 投稿日:2018/07/04(水) 12:43:11.63 ID:JFNnLnouD
有償化はサーバーサイドにはノーダメージなんですね
これから勉強しようと思う者としてクライアントjavaは逆にやりたく無かったので対象が絞られて助かります やさしいjavaって本で始めたのですが
コードを入力するのって
メモ帳より、便利なアプリケーションありますか? >>43
エディタでググって気に入ったものを使ってね
あとはIDEとか >>44
IDE をぐぐったら
エクリプスてのが目に止まったんですが
素人初心者が使っても大丈夫ですか? 質問お願いします。
友達がパソコン用にJavaアプリ(jar)を作ってくれたのですがそれをAndroidで動かしたいのです。
したい事はそれだけなんですがJavaをちゃんと勉強しなければ出来ないですか?
僕はプログラム知識は全くありません。
友達はAndroidには興味が無いようです。
よろしくお願いします。 ドコジャバとか言うのが使える参考書買ったんだがドコジャバが全く操作を受け付けないんだけどw javaの勉強を一からしたいのですがオススメの学習サイトや参考書教えてください
プログラム言語の経験はまったくありませんがパワーシェルやbashは実務経験あります 言語の勉強は嘘でも誇張でもなくそこらへんの書籍1冊読むだけで1週間で理解できる
仕事で使うレベルなら言語だけ覚えても全く無意味で>2に書いてる事をググれカスとしか言いようがない
全部体系的に綺麗に説明してるサイトはどこかにあるんだろうけど今のお前じゃ見ても頭パンクするだけ
というかググって自分で理解できない時点で全く向いてないからやめとけ >>51
それぐらいのスキルがあったら
案外テキトーにJava打っても
できるようになるんちゃう? >>51
おっと
大事なことを伝え忘れるところだった
Javaはオワコン 開発環境とは別に、jboss使ってvpsとかでweb環境を作りたいです。
開発環境はeclipseとか使えばできるんですが実際の環境を作れません。
どうしたらいいんでしょうか。 >>50
あれはeclipse初めから使ってやったほうがいい
どこJavaは使えんかった この2冊を読む
スッキリわかる Java入門 第2版、2014
たのしいRuby 第5版、2016 ・VPSにアプリケーション鯖入れる
・アプリケ鯖にJavaで作ったプログラム(warファイル)をデプロイする
・外部からの接続設定をごにょごにょする
終わり 過疎だからわざわざ回答してやってるのに
質問だけして礼すら言わないゴミは何なんだろうな
二度とレスつけるなゴミどもが >>51
俺はブックオフで買った「世界で一番簡単なJavaのe本」が良かった。 初心者です。よろしくお願いします
ブロンズの黒本で勉強中です
public abstract class B implements A {
// any code
}
これは
「抽象クラスとしてBをもち、BはAを継承している」
という意味で宜しいのでしょうか。 >>63
日本語の問題。他の選択肢も書いてくれないとわからない。 Eclipse以外にもIDEあるんやね
NetBeansとか
他にあるかな
VSでもできるかな プログラムを実行中に不具合が見つかって、ソースを修正してセーブしたら、プログラムを再実行しなくても修正が反映されたりしますか?
修正が反映されるときとされないときがあるような気がするんですが。 >>67
ホットスワップで検索
原理的に修正したソースコードとバイナリは異なるものだ
末端の処理なんかはそこのクラスのメモリ上への再ロードで行ける場合があるけど
大抵はリスタートが要ると考えた方がいい >>68
ありがとうございます。ググるとクラスの構成に変更があるかどうかで変わるみたいですね。
メソッドの中のコードをいじった時はうまく行くけど、新しいメソッドを追加した時はダメとか、
どういう時に再起動しなければならないかどうか感覚が分かりました。
むしろ今までちょっとプログラムを書きかえただけで必ず再起動しなければならないと思ってたので、
自分にとってはデバッグの効率アップになります。 CのソースをJavaに移植していて、大きな配列を作るところで引っかかったのですが、
何か対策はありますでしょうか?
具体的には、2^64=2147483647個の配列が作りたいです
double[] hoge = new double[2147483647];
Logcat:I/zygote64: Starting a blocking GC Alloc >>70
double型は64bitだから最低でも16GBのメモリが必要で
vmの引数に-Xmx32768?mとか指定すれば良いかと >>71
基本的なByte計算を忘れてました
確かにdoubleで2^64の配列を作るには16GBが必要ですね
作っているのがスマホアプリで16GBも無いので、別の方法を考えてみます >>2
>eclipseの使い方を覚える
仕事で使えるもっとモダンなエディタを教えてください 拡張forについて質問したいです
要素毎に処理を変えたいのですが可能ですか?また可能であればどうしたらいいかヒントでも良いので教えて欲しいです
この場合拡張for文では無い方が良いとは思うのですが今回は拡張for文で行いたいです すいません、お風呂に入ったら自己解決しました、、、
そもそも普通に分けたら良いですね、意味不明な質問しました 今後は何か分からないことがあったらまず風呂に入るように。 public static void main(String[] args) {
int SIZE = 6;
int[] array = { 3, 5, 7, 11, 13, 16 };
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
int i = 0;
while (i < SIZE && array[i] != num) {
i++;
}
if (i < SIZE) {
System.out.println(i);
} else {
System.out.println("その値は見つかりません");
}
} staticって便利ですね
たくさんのclassの共通変数として使える
逆カプセルみたいなもんですな
いやー便利便利
癖になりそう propertiesファイルである項目を指定する時に別の項目を参照したいんですが可能でしょうか?
シェルスクリプトで言うと↓のような設定をpropertiesファイルでやりたいです
MY_APP_STAGE=dev
MY_APP_HOME=/usr/bin/myapp/${MY_APP_STAGE}/ >>85
それダメなやつ
staticにする必要がない変数までstaticにするとバグの原因になる 共通変数として使えるって言ってるんだから正しい使い方なのでは? 初心者だったころ(今でもか?)Cのstaticと同じと思っていたわ。
クラスを複数newしてリストで使っていて、変な動きする?と気付き理解したわ。 そうじゃなくてどういう意味か分かった上で使えってのw >>86
propertiesにその機能はないので独自に作るなり
Apache Commons Configurationを使うなりでできそう プリミティブ型の配列オブジェクトに適用されるインスタンスメソッドの実装を見たいのですがどこにあるでしょうか
たとえば int[] に対して equals(int[]) を呼ぶと Object.equals(Object) と同じようなふるまいに見えるのですが確証がないので Javaのクラスはないけど言語仕様には
https://docs.oracle.com/javase/specs/jls/se19/html/jls-10.html
> All methods of class Object may be invoked on an array.
> Objectクラスのすべてのメソッドは、配列に対して呼び出すことができます。
とある ありがとうございます
配列変数に対して getClass().getSuperclass() とやると java.lang.Object が返ってきて
getClass().getMethods() を見たらオーバーライドしているメソッドはなさそうです
直接の親であるObjectクラスのメソッドが採用されるのですね
int[] a と int[] b の要素数と中身が同一の場合に a.equals(b) が真になってくれるとありがたい処理があるのですが
配列だとダメそうなので ArrayList にしようかと思います Arrays.equals(a, b)で比較できるよ >>96
アドバイスありがとうございます
equals(Object) メソッドが使いたかったのです
具体的に言いますと (厳密にはちょっと違いますが) int[] の配列オブジェクトが複数あってそれを Set<int[]> に入れます
値が同じで別な配列オブジェクト {1, 2, 3} が重複して入らずさらに Set.contains({1, 2, 3}) が正しく真を返してくれると都合がいいのですが配列だとダメそうです Android studioでMainActivityに以下の様に内部クラスを定義すると
public class Test {
public String str;
}
Test部分がハイライトで表示されて、カーソルを合わせると
Inner class ‘Test’ may be ‘static’
と表示されます。
どういう意味でしょうか?
Testは複数インスタンスを作るのでstrはstaticにはしません。
特にエラーにはなりませんが気持ち悪いのでハイライトを消したいです。 外部クラスにアクセスしてないので
内部クラス(=非staticなメンバクラス)である必要がない
staticなメンバクラスにすれば? って話でしょ >>99
インナークラスのTestはたぶんstaticです、なので
static class Test {
にすればおk 一番わかりやすいjavaの本か動画Udemyなどないかな >>102
入門書
『新・明解Java入門 第2版 (新・明解シリーズ)』
データ構造
『新・明解Javaで学ぶアルゴリズムとデータ構造 第2版 (新・明解シリーズ)』
実践的プログラミング
『プロになるJava―仕事で必要なプログラミングの知識がゼロから身につく最高の指南書』
がおすすめ
僕は望洋先生のアルゴリズムとデータ構造をボロボロになるまで読んだなあ 最強のJava入門書はどれか?(2016年秋)
Java入門書、ベストな選び方の、その先へ
https://ascii.jp/elem/000/001/238/1238080/
矢澤久雄「プログラムはなぜ動くのか」、高橋征義「たのしいRuby」など、
ベストセラーの著者や業界人が、
「スッキリわかるJava入門」が、なぜ売れたのかを分析している
元祖スッキリシリーズの本。
この本から、多くの言語・技術に広がっていった >>101
ありがとうございます。
staticを付けてワーニングは消えました。
メンバー変数に付けるstaticは共用になるけどclassは特に影響ないのですね。 >>105
classにstaticをつけると
class Outer {
int outerValue;
class Inner {
int getValue() {
return outerValue;
}
}
}
こういう外側のインスタンスメンバにアクセスするのができなくなる
あとはインスタンス化するとき
// 非static classはこう
var inner = new Outer().new Inner();
// static classはこう
var inner = new Outer.Inner();
違いはそれくらい