Java入門・初心者質問スレ Part.4at TECH
Java入門・初心者質問スレ Part.4 - 暇つぶし2ch183:デフォルトの名無しさん
17/07/30 16:14:13.17 0PJrZm1n.net
>>178
コンストラクタだけ特別扱いしているから。

184:デフォルトの名無しさん
17/07/30 16:16:05.30 w/kjlxMo.net
>>178
「コンストラクタ」がメソッドから呼び出される?
コンストラクタはそもそもメソッドじゃないよ
メソッドじゃないものに、メソッドのルールを考えても意味ないんじゃね?

185:デフォルトの名無しさん
17/07/30 16:24:52.28 RBZmZf5e.net
>>179-180
スッキリしない(´・д・`)

186:デフォルトの名無しさん
17/07/30 16:32:05.28 w/kjlxMo.net
『スッキリわかる』シリーズを読みなさい

187:デフォルトの名無しさん
17/07/30 16:32:13.98 0PJrZm1n.net
>>181
そういう作りの言語だからとしか言えない。
なんだったらスッキリする言語を自分で作りなさい。
まあ確かにコンストラクタはいきなり呼べるので違和感あるかも知れないが、 new した時にメモリ確保されて
インスタンスが出来て、それからその中の


188:コンストラクタが呼ばれると考えればいい。実際その通りだし。 C言語で実現するとしたら構造体のメモリを確保した直後にそのポインタを受け取って構造体の中身の初期化を するようなのがコンストラクタね。



189:デフォルトの名無しさん
17/07/30 16:40:07.27 RBZmZf5e.net
>>183
ちょっとわかった。
new演算子で動的にメモリを確保してその中身を初期化するのがコンストラクタの役割だから、
コンストラクタは動的な文脈で呼び出されるのか。

190:デフォルトの名無しさん
17/07/30 17:32:09.96 pdhvmw2O.net
stream apiを使って
[1,1,2,2,3,3,3,1]
みたいなリストを
[1,2,3,1]
みたいに連続した同じ要素をまとめるコードはどう書けばいい?

191:デフォルトの名無しさん
17/07/30 17:35:55.57 pdhvmw2O.net
filterで1前の値見れたら楽なんだろうけど

192:デフォルトの名無しさん
17/07/30 17:37:48.11 pdhvmw2O.net
もしくは条件に合致した時だけreduceするとか

193:デフォルトの名無しさん
17/07/30 17:38:03.65 zcFf9TVa.net
>>185
distinct()を流れのどこかに挟む

194:デフォルトの名無しさん
17/07/30 17:38:50.17 zcFf9TVa.net
あ、これは駄目か、無視してくれ

195:デフォルトの名無しさん
17/07/30 18:39:49.01 DLqAucgC.net
>>185
素朴に
URLリンク(paiza.io)

196:デフォルトの名無しさん
17/07/30 18:56:29.36 xziOu8cb.net
>>174
中身の無い煽りはスルーでいいよ
料理のレシピを覚えても調理器具を使えないと料理は出来ないのと同じで
都度都度javaを覚える必要があります
いきなり開発環境のテンプレート見てわからないと思うから
ググって1つ1つ覚えるしかないかな

197:デフォルトの名無しさん
17/07/30 18:59:48.32 DLqAucgC.net
>>185
インデックスで
int[] a = { 1, 1, 2, 2, 3, 3, 3, 1 };
IntStream.range(0, a.length)
  .filter(i -> i == 0 ? true : a[i - 1] != a[i])
  .map(i -> a[i])
  .forEach(System.out::println);

198:デフォルトの名無しさん
17/07/30 19:01:39.65 DLqAucgC.net
||でよかったわ

199:デフォルトの名無しさん
17/07/30 19:37:41.52 r1emgWco.net
重複削除ならこんなの見つけたよ。
URLリンク(www.sejuku.net)
stream使ってないが非常にシンプル。

200:デフォルトの名無しさん
17/07/30 19:38:22.75 r1emgWco.net
あ、だめか。最後も1か。

201:デフォルトの名無しさん
17/07/30 20:49:27.90 0PJrZm1n.net
やった!できた!
しかし、なんだか stream っぽさがない・・・
URLリンク(paiza.io)

202:デフォルトの名無しさん
17/07/30 21:04:08.55 w/kjlxMo.net
>>190
>>196
paiza.ioって、スゴいね!
こんな、便利なものがあったなんて知らなかったYo!!

203:デフォルトの名無しさん
17/07/30 21:26:46.37 9WmloTCT.net
無理やりstreamで実装するメリットが見当たらない

204:デフォルトの名無しさん
17/07/30 21:36:56.23 w/kjlxMo.net
でもまあ、お題が「streamapi」を使って、だからね
初心者スレとしてはメリットとかより、勉強になったかどうかだよね
もちろん
「このやり方の方が効率がいい」
ってのが明確な理由と共に示されれば、
それも勉強になるけどさ

205:デフォルトの名無しさん
17/07/30 21:44:50.49 pdhvmw2O.net
>>190
>>192
ありがとな
Stream api奥が深いわ

206:デフォルトの名無しさん
17/07/30 23:21:06.50 JAHw7kqq.net
スッキリ読みながら勉強の者だが、
プログラム言語って素晴らしいなあ
プロの方々はjavaをマスターして、効率よく業務に活かしているに違いない。

207:デフォルトの名無しさん
17/07/30 23:55:51.22 5i/HO5zm.net
>>99
mp3再生ソフト完成した?

208:デフォルトの名無しさん
17/07/31 08:18:37.92 LN83W0QK.net
質問するのにも敬語すら使えない馬鹿をいちいち相手にしてるからお前等は馬鹿なんだよ
重複削除するのにいちいちマッチングしたりストリーム使ったり馬鹿の代表かよお前等w
ほんと阿呆の肥溜めだな

209:デフォルトの名無しさん
17/07/31 08:21:06.63 2pZH8HVB.net
>>203
最高に天才なあなたのコートを拝見できませんか?

210:デフォルトの名無しさん
17/07/31 08:25:24.08 X8Y7EVM6.net
>>203
2chで敬語使えとか言うバカを久々に見たわ
不愉快だから黙ってろよ

211:デフォルトの名無しさん
17/07/31 08:30:53.93 LN83W0QK.net
レベル低い馬鹿の上に質問する側が敬語も使えないとかただの池沼なんだから
お前が黙って首吊ってさっさと死ねよ低能馬鹿のゴミ

212:デフォルトの名無しさん
17/07/31 08:36:53.63 pwRUpqlR.net
>>206
まあまあそんなに怒らないでください

213:デフォルトの名無しさん
17/07/31 08:57:46.56 2pZH8HVB.net
>>206
言葉づかいが最高に天才ですね

214:デフォルトの名無しさん
17/07/31 14:22:15.80 mMpKpjgf.net
大きな大きなブーメランの映像が頭に思い浮かんだ
一体これはなんだったのだろうか
                          つづく

215:デフォルトの名無しさん
17/07/31 18:15:47.54 CdII1Abc.net
>>203
そこで、皆が誉め称えるようなコードをパッと示したら格好いいのにね

216:デフォルトの名無しさん
17/07/31 19:20:31.40 gHcyqZBx.net
Java大好きだし腐すつもりはまったくないから
怒らないで欲しいけど
他の言語を色々やったあとでJavaに戻ってきたら
StreamAPIなるもんがあって
それを有難がってる(?)人々が居て
若干腰抜かす
StreamAPIがダメっていう主張じゃなくて
Javaにはいらんやん、って主張

217:デフォルトの名無しさん
17/07/31 19:25:06.72 /XbzZj23.net
主張したいなら論拠を示してくれないと反論もできないんですが

218:デフォルトの名無しさん
17/07/31 19:26:34.94 gHcyqZBx.net
ごもっとも
論拠も根拠も特にないので単に感想に差し替えさせてください
んな感想はチラシの裏に書け?
今から書いてきます失礼いたしました

219:デフォルトの名無しさん
17/07/31 19:30:05.84 CdII1Abc.net
>>有難がってる(?)
有り難がってるようなレスはなかったと思うけど・・・
そもそも、ここは初心者スレだから、好奇心で色々と試してるってノリでしょ
ビックリする人がいることに驚いちゃうよ

220:デフォルトの名無しさん
17/07/31 19:39:08.58 W4UbSJlH.net
なんども書くような処理はモジュール化して再利用するって常識
Javaとか関係なしに当たり前のことをやってるのがstream api
これをなにか特別なものと考えて拒否感を持ったり崇拝する人はセンスがない
当たり前のように使おう

221:デフォルトの名無しさん
17/07/31 19:46:13.69 2pZH8HVB.net
必要になったら使うでいいよ
必要なのにアレルギーよろしく拒否るからややこしくなる

222:デフォルトの名無しさん
17/07/31 22:11:44.32 3pgJ0wlK.net
class Aho {
 public static void main(String ... args) {
  System.out.println("質問するのにも敬語すら使えない馬鹿をいちいち相手にしてるからお前等は馬鹿なんだよ");
  System.out.println("重複削除するのにいちいちマッチングしたりストリーム使ったり馬鹿の代表かよお前等w");
  System.out.println("ほんと阿呆の肥溜めだな");
 }
}

223:デフォルトの名無しさん
17/07/31 22:20:26.08 3pgJ0wlK.net
>>216
ま、そうだが、streamはある程度使って慣れないと使い所がよくわからないもののように思うな。
何せループでも実現できちゃうからな。そっちで慣れてる人は中々手を出さないのではないか?
他の言語で多用したいた場合はJavaでも使えて便利みたいに感じるかも知れんが。

224:デフォルトの名無しさん
17/08/01 00:38:37.91 VkAUO0Vr.net
お前みたい馬鹿のために用意されたものなんだからありがたく使っとけよ阿呆

225:デフォルトの名無しさん
17/08/01 01:48:00.02 sayqMREC.net
C#, Java の、Parallel Stream で、複数コアを使える
Node.js は、JavaScript だから、シングルスレッドだろ。
数値計算などで、複数コアを使いたい場合に、困る

226:デフォルトの名無しさん
17/08/01 02:41:43.75 dPOYfvBU.net
URLリンク(paiza.io)

227:デフォルトの名無しさん
17/08/01 03:06:20.33 C


228:kTSkgtj.net



229:デフォルトの名無しさん
17/08/01 07:44:11.55 4BLXFqGa.net
プログラミングそのものを愛するか、プログラミングによって作られるものを愛するかの違いです

230:デフォルトの名無しさん
17/08/01 11:31:28.30 d0oFEyKM.net
愛されるより愛したい

231:デフォルトの名無しさん
17/08/01 12:14:27.48 SHR8K/xw.net
>>223
何に対する意見だよw
仮にstreamapiを好むかどうかにしても、プログラミング自体が好きでもstreamapiが好きとも限らねえぞw
違いです、とかw

232:デフォルトの名無しさん
17/08/01 12:21:01.88 j5u606Kq.net
>>175
お前はもう来るなよ。スレの主旨から言ってお前の言動は不適当。

233:デフォルトの名無しさん
17/08/01 12:47:57.63 SHR8K/xw.net
もっと近いレスに香ばしいのがいるのに、なかなかの粘着さんだなw

234:デフォルトの名無しさん
17/08/01 19:48:41.43 QsBohnup.net
a = [1,1,2,2,3,3,3,1]
p a.chunk {|x| x}.map {|k, a| k}
rubyだとたったこんだけだよね?
> 他の言語で多用したいた場合はJavaでも使えて便利みたいに感じるかも知れんが。
逆ぅ!
如何せん貧相すぎてね
村の子が村のお祭り誇らしげ、みたいな
ブスが化粧してお澄まししてる、みたいな
顔には出さないけど、胸がチクッとするんです…
昨日も言ったけどJavaは好きだし
Javaには感謝すらしているし
ディスろうという目的ではない

235:デフォルトの名無しさん
17/08/01 20:24:37.33 5II4tDgL.net
ちょっと短く書くためにいろいろ犠牲にしてるrubyこそ着飾ったブスに思えるなぁ

236:デフォルトの名無しさん
17/08/01 22:20:27.40 jPOZmE88.net
世の中にはブス専もいるわけだしそこまで行くと主観の問題だわな

237:デフォルトの名無しさん
17/08/01 22:39:38.01 r/kmkyLl.net
比べる対象がスクリプト言語しかも動的型付け言語なのはさすがにおかしい
JavaがJavaの良さを殺さないように意識しながらStream APIを導入する必要があったのと話が違いすぎる

238:デフォルトの名無しさん
17/08/01 22:50:43.40 zlxlSjkN.net
>>228
Javaならこんだけなんだが?
URLリンク(paiza.io)

239:デフォルトの名無しさん
17/08/01 22:57:16.20 zlxlSjkN.net
>>231
コレクションライブラリにメソッド用意することはできるわけで
ラムダ式は処理を丸投げできるハイパーリッチなコレクションと
組み合わせてこそ進化を発揮する
今のJavaの標準ライブラリがショボいことは事実だ
逆に言うとJavaはもっと成長する余地があるってこと
いくらきれいな白鳥でも・・・あとはわかるだろ、そういうことだ

240:デフォルトの名無しさん
17/08/01 23:05:18.35 QsBohnup.net
>>232
(´・ω・`)   n
⌒`γ´⌒`ヽ( E)
( .人 .人 γ /
=(こ/こ/ `^´  
)に/こ(

241:デフォルトの名無しさん
17/08/02 15:22:29.01 mxNq7Aj6.net
8がつ2にち(すいようび)
きょうは、すっきりわかるじゃば入もんを
330ページまでよみました。
ゆうしゃとおばけきのこをうみだしました。
とてもおもしろかったです。

242:デフォルトの名無しさん
17/08/02 18:18:04.54 xzl419Dl.net
>>232さんに触発されて書いた
OCamlならこんだけ
URLリンク(ideone.com)
「連続した同じ要素をまとめ」るコード
ただし、rubyのものにくらべ簡易的なchunk
しかもchunk関数はパクり
ぐぐって丁度いいの見っけたから拝借した
だから何やねん!って言うのは我慢してほしい(´・ω・`)

243:デフォルトの名無しさん
17/08/02 19:08:45.26 JD5jVN3c.net
そういうフィルタが既にあるかどうか�


244:謔閧煌ネ単に拡張して実装できるかの方が言語的には重要だろう C#のLinqはyield returnと拡張メソッドのおかげでLinq拡張がすごくやりやすい それに比べるとJavaのStreamは……



245:デフォルトの名無しさん
17/08/02 19:43:38.64 SsqUphS+.net
関数型厨御用達言語Haskell
URLリンク(ideone.com)

246:デフォルトの名無しさん
17/08/03 00:25:37.27 TTlJ2U7E.net
>>237
C#ならどんだけ?

247:デフォルトの名無しさん
17/08/03 22:30:56.72 2xv/pvUq.net
>>239
へい
URLリンク(paiza.io)
C#7ならタプルを(a, b)って書けるからもっと簡単になる
おっぱいざのコンパイラ古い

248:デフォルトの名無しさん
17/08/04 00:26:47.86 US5e0j3V.net
>>240
(´・ω・`)   n
⌒`γ´⌒`ヽ( E)
( .人 .人 γ /
=(こ/こ/ `^´  
)に/こ(

249:デフォルトの名無しさん
17/08/04 19:10:37.95 US5e0j3V.net
> 簡単に拡張して実装できるかの方が言語的には重要
URLリンク(ideone.com)
rubyも拡張しやすいほうなのかな?
よく分からないまま書いたので、なにかおかしいかもしれない
最初のほうでself.dupなんていきなりしてよかったのかは不明
(Enumeratorを返すメソッド作成の作法的に)
なんだかんだ申しましたが
StreamAPIがどうなっていくかは
今後静かに見守って行きたいと思います 完

250:デフォルトの名無しさん
17/08/04 20:57:07.88 4RPAmR0Z.net
          完


 

251:デフォルトの名無しさん
17/08/05 20:13:27.69 CKfofrut.net
きょうはとしょかんで
スッキリのメソッドをべんきょうしました。
メソッドはとてもむずかしかったです。
となりにこうこう2ねんせいが
べんきょうしていました。
あしたもとしょかんにいきたいです。

252:デフォルトの名無しさん
17/08/05 20:50:07.33 NrXpiBRr.net
おっさん乙

253:デフォルトの名無しさん
17/08/06 04:58:57.45 PQlf2UE9.net
>>244
となりに
→となりで
にほんごも、もっとがんばりましょう

254:デフォルトの名無しさん
17/08/08 12:19:00.25 ybbt0LUq.net
初歩的な質問すみません
おじいちゃんクラス
親クラス
子クラス
という継承関係があってメンバーの名前が統一されてる時
子クラスから親のメンバーを利用するにはsuperを使うのは分かりましたが
おじいちゃんのメンバーを利用するにはどうしたら良いんですか?

255:デフォルトの名無しさん
17/08/08 12:26:11.98 It7rbX8+.net
それはウルトラ、じゃなくて、super.super. って使えない?

256:デフォルトの名無しさん
17/08/08 12:57:35.54 EzmBL1dy.net
superはただの予約語なんだから使えるわけがない
馬鹿かおまえは

257:デフォルトの名無しさん
17/08/08 13:04:24.09 It7rbX8+.net
予約語かどうかの問題ではなく単にそう作ってあるかどうかの問題では?
だってそういう言語作ろうと思えば作れるでしょ。

258:デフォルトの名無しさん
17/08/08 13:06:01.15 EzmBL1dy.net
そう作ってないから予約語なんだよ
馬鹿は回答側に回るな馬鹿

259:デフォルトの名無しさん
17/08/08 13:32:02.75 It7rbX8+.net
はいはい。
そういやキャストすればできるな。

260:デフォルトの名無しさん
17/08/08 13:37:26.20 It7rbX8+.net
こんなの。
ただしクラス名わかってないとできない。
class A {
int a = 1;
}
class B extends A {
int a = 2;
}
class C extends B {
int a = 3;
int get() {
return ((A) this).a;
}
}

261:デフォルトの名無しさん
17/08/08 13:45:04.54 EzmBL1dy.net
コードも酷すぎるからお前はもう二度と書き込まん方がいい
初心者が初心者を低レベルに導く流れはやめろ

262:デフォルトの名無しさん
17/08/08 15:06:55.26 qcoC0xc5.net
>>247
そっちを使う、とかじゃなくて
子クラスがそのように実装される、というだけ

263:デフォルトの名無しさん
17/08/08 15:07:58.73 qcoC0xc5.net
ID:EzmBL1dyが意味不明すぎる

264:デフォルトの名無しさん
17/08/08 15:45:07.99 lxfir1A5.net
何かあったのだろう

265:デフォルトの名無しさん
17/08/08 16:05:06.76 nQaUo2VV.net
全くプログラミング経験無しで
なんとなくjava始めたけど
そもそも論としてこの選択は正しかったのだろうか

266:デフォルトの名無しさん
17/08/08 18:14:28.51 tkRtIBMh.net
さあなあ。今後何やるかにもよるんじゃないか?

267:デフォルトの名無しさん
17/08/08 1


268:9:59:14.74 ID:p/Km8czM.net



269:デフォルトの名無しさん
17/08/08 21:13:19.41 qcoC0xc5.net
>>258
いいんじゃないの
LLとか便利だけど、その面倒な部分の大事さとか学べない
ひとつの言語だけで終わるなら用途によってもっといい言語がありそう

270:デフォルトの名無しさん
17/08/08 22:06:18.12 GW2MTj/k.net
>>247ですが、>>253さんのコード目からウロコです!
thisもキャストできるんですね
不勉強なので>>255さんの仰る事が少し難しいのですが、インスタンスだから、ということでしょうか
今丁度その辺りを勉強しているところなので正しく理解できるよう頑張ります
皆さんありがとうございました

271:デフォルトの名無しさん
17/08/09 08:33:32.83 IlLjAgAU.net
ありがとう。
どうやらjavaを選択したことは間違いではなかった様子。
まだfor構文だが頑張る

272:デフォルトの名無しさん
17/08/09 23:08:12.69 LMnBr9ad.net
forいいじゃん
個人的に、Javaで書くときはなるべく質素に書くのが似合ってる気がする
拡張forとかfroEachとかStreamAPIとか言わずに
for (int i = 0; i < a.length; i++)の形が美しいとすら思う
単に個人的な意見です

273:デフォルトの名無しさん
17/08/09 23:59:14.48 eM0BjlR2.net
美しいかどうかは個人の感覚だけど
短く楽に書けて、読みやすいのはメソッドチェインの方かな

274:デフォルトの名無しさん
17/08/10 00:33:49.18 3830aR0n.net
全部Iteratorで書きたいわ

275:デフォルトの名無しさん
17/08/10 06:49:53.58 7fXn0jIL.net
個人的な意見をごり押ししていいなら無駄なカウンタ変数は美しくない
変数が再代入されるのもできる限り避けたい
よってforはあまり使わない

276:デフォルトの名無しさん
17/08/10 16:31:24.34 q3Q5gWCj.net
内部ではカウントしてそうだけどな

277:デフォルトの名無しさん
17/08/10 19:01:50.13 nhvX9c4e.net
カウントなどというバグの原因は内部でやらせておくに限る

278:デフォルトの名無しさん
17/08/10 19:09:12.83 d/6ciPxh.net
カウントのバグ、みたいなもんを針小棒大に扱って見せても白けるだけ

279:デフォルトの名無しさん
17/08/10 19:26:16.34 9td2XcHM.net
処理速度はともかく数字への無駄な依存をなくすことが悪いことのはずない
チューニングはボトルネックと判明してからでも遅くはない

280:デフォルトの名無しさん
17/08/10 19:32:52.40 Jc4Vqs2x.net
ループ書くと後々必ずループの中身を肥大化させるバカが居からなるべくループは書かない

281:デフォルトの名無しさん
17/08/10 22:48:58.06 0lb9vf6H.net
>>272
それ例えばどんなん?

282:デフォルトの名無しさん
17/08/10 23:18:34.33 7fXn0jIL.net
終わらないループ
終わらないif文
終わらないメソッド
使い回され続ける変数
共通部分の大量コピペ
業務プログラムあるあるですな

283:デフォルトの名無しさん
17/08/11 01:35:32.02 dX0SM6NL.net
超次元宇宙で業務をしておられるようで

284:デフォルトの名無しさん
17/08/11 11:33:31.61 VT8Bdzbq.net
仕様を決めつけて最適化しすぎると保守性が下がるんだけどな。

285:デフォルトの名無しさん
17/08/11 12:10:31.38 BDXv2


286:ULb.net



287:デフォルトの名無しさん
17/08/11 13:20:41.56 3EZq4DC0.net
>>276
あるあるネタだね
画面ごとにデータ取得SQLを最適化したり頭悪いわ

288:デフォルトの名無しさん
17/08/11 17:20:44.31 4bbWTV9L.net
372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているサイトはだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子が求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ
それらの案件まさぐってHPで転売していたのが零細ITがやるフリーランスサイト
自称エージェントはJIETから流れてくる案件を転売してるだけだった。
JIETに加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
473非決定性名無しさん2017/08/03(木) 15:21:30.71
JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の
間でやらしている。

289:デフォルトの名無しさん
17/08/11 17:27:29.24 uuzmQ1J4.net
>>277
オブジェクト指向で書けよ

290:デフォルトの名無しさん
17/08/11 17:38:47.68 uuzmQ1J4.net
>>276
クライアントが拘りの部分だけ設計時に最適化したがるんだよな
そんなとこ運用してからでいいだろというとこ
全部設計してくれてコーディングだけでいいなら任せるけどさ

291:デフォルトの名無しさん
17/08/11 18:43:57.91 JLvLp2X8.net
>>280
たまたま同じ部分をIFでなく継承でまとめたからって、おこる問題は一緒だ
むしろ継承はIF文より汎用性がないからIF文よりずっと悲惨なことになる
すなおにコピペで別クラスにしとこう

292:デフォルトの名無しさん
17/08/11 20:13:57.80 uuzmQ1J4.net
>>282
初心者だと応用効かないか条件分岐の代わりにしか使えないとか
でもそもそもそういうこと言ってるんじゃないんだよ
ちゃんとオブジェクト指向わかってるば、たまたま共通のコードとかじゃなくて、設計段階で本質的に同じものでまとめて書ける
お前のはサブルーチンとして使ってるだけだろ

293:デフォルトの名無しさん
17/08/11 21:13:24.15 qTpm866m.net
javaでウイルス作れる?

294:デフォルトの名無しさん
17/08/11 21:23:48.80 3EZq4DC0.net
Javaはセキュリティホール

295:デフォルトの名無しさん
17/08/11 21:26:09.39 JLvLp2X8.net
>>283
設計段階で同じものだってわかってるなら何使ったってどうにでもなるわ!
オブジェクト指向関係ない
そのあとで実はここ違いますってなったとき
IF文:分岐を入れる
オブジェクト:ケースに応じて継承もしくは別クラス作成
コピペ:該当部分を修正
コピペが最優秀なんだけど

296:デフォルトの名無しさん
17/08/11 21:28:04.90 3EZq4DC0.net
その該当部分が鼠算で無限増殖していくのであっという間に手に負えなくなる
コピペは死罪

297:デフォルトの名無しさん
17/08/11 21:34:53.83 JLvLp2X8.net
そんなに増えないって
結合テストのケースに応じてコピペすりゃいいんだ
どうせまとめたって機能別に試験させられるんだからそこがボトルネックのはず
むしろ同じテストが完了した時点で
同じものがたくさんできているので生産性が高いといえよう

298:デフォルトの名無しさん
17/08/11 21:36:39.69 uBm+ojOM.net
同じ記述


299:はメンテ的に良くないので避けるべき、と習ったよ 修正箇所を少なく作るのが江戸っ子らしい ただそんな書き方は素人の俺には思いつかないのが問題



300:デフォルトの名無しさん
17/08/11 21:43:55.23 JLvLp2X8.net
まとめたら単体まで作るときは楽なんよね…
まとまってるぶん網羅しやすいからブラックボックステストの試験ケース少なくて済む
でもIF文とか継承まみれになると可読性めっちゃさがる

301:デフォルトの名無しさん
17/08/11 21:44:30.73 JLvLp2X8.net
×ブラック〇ホワイト

302:デフォルトの名無しさん
17/08/11 21:53:13.03 3EZq4DC0.net
if文が増えるなら
業務分析が下手くそ
設計が下手くそ
コーディングが下手くそ

303:デフォルトの名無しさん
17/08/11 22:02:03.16 JLvLp2X8.net
>>292
おまえは神か?世界の複雑さを完全に把握してコントロールできるのか?

304:デフォルトの名無しさん
17/08/11 22:07:37.25 3EZq4DC0.net
>>293
わたしがかみです

305:デフォルトの名無しさん
17/08/11 22:13:39.81 +73EubJb.net
   彡 ⌒ ミ  彡 ⌒ ミ
  ( ´・ω・)  ( ´・ω・)
_(__つ/ ̄ ̄ ̄/つ/ ̄ ̄ ̄/
  \/    / \/    /
     ̄ ̄ ̄ カタカタ ̄ ̄
   彡 ⌒ ミ  彡 ⌒ ミ
  ( ´・ω・)  .(・ω・` )ヾ < なぁ、これって
_(__つ/ ̄ ̄ ̄/つ/ ̄ ̄ ̄/
  \/    / \/    /
     ̄ ̄ ̄    ̄ ̄ ̄
   彡 ⌒ ミ  彡 ⌒ ミ
  (  ´・ω)  .(・ω・` )
_(__つ/ ̄ ̄ ̄/つ/ ̄ ̄ ̄/
  \/    / \/    /
     ̄ ̄ ̄    ̄ ̄ ̄
  彡 ⌒ ミ   .彡 ⌒ ミ
  (´・ω・`)   (´・ω・`) また、かみの話してる
_(__つ/ ̄ ̄ ̄/つ/ ̄ ̄ ̄/
  \/    / \/    /
     ̄ ̄ ̄    ̄ ̄ ̄

306:デフォルトの名無しさん
17/08/11 22:15:32.75 uBm+ojOM.net
髪の話するやつ死ねよ

307:デフォルトの名無しさん
17/08/11 22:22:13.21 3EZq4DC0.net
ハゲに人権なし

308:デフォルトの名無しさん
17/08/11 22:53:51.24 GWHLh1ZD.net
このハ・・・

309:デフォルトの名無しさん
17/08/11 23:22:48.62 uuzmQ1J4.net
>>286
仕様と1対1にできるのがオブジェクト指向のいいとこだろう
言ってることが真なら設計に戻るだけ
コードだけ変えてメンテできなくなるのは初心者が陥りがちな罠

310:デフォルトの名無しさん
17/08/11 23:47:13.60 VT8Bdzbq.net
>>289
それむしろ逆。共通化してしまうと仕様変更で別々になる可能性がある。
共通化は本当に共通化したい部分にすべきことであって、何でもかんでも共通化は間違い。

311:デフォルトの名無しさん
17/08/11 23:48:26.02 VT8Bdzbq.net
いまどきJavaでオブジェクト指向にこだわっているのは考え方が古い。

312:デフォルトの名無しさん
17/08/12 00:41:21.40 I0vpQUVr.net
業務系はオブジェクト指向と相性いいからな
趣味とかは知らん

313:デフォルトの名無しさん
17/08/12 07:28:02.61 wZgNEoNa.net
ビット演算について教えて下さい。
ビット演算子(&,|, ^)の右側と左側で桁数が違うときは、どういう処理がされるのですか?

314:デフォルトの名無しさん
17/08/12 08:21:47.95 WyVA8Sgg.net
>>302
データベースとのやりとりは結局、解決してないけどな。

315:デフォルトの名無しさん
17/08/12 08:31:15.18 w+TtGEkw.net
>>303
例えば、8・16ビットで、ビット演算して、何ビットの結果が必要なんだ?
少ない方の結果が必要なら、多い方を、少ないビットに変換すればいいし、
多い方の結果が必要なら、少ない方を、多いビットに変換すればいい
多いビット・少ないビットの、変換関数を探すか、自分で作ればいい

316:デフォルトの名無しさん
17/08/12 09:08:08.52 wZgNEoNa.net
>>305
やりたいことは符号無しintをlongに型変換したいのです。
どこかのサイトを見たところ、
longNumber = unsignedInt & 0x00000000FFFFFFFF
とすればいいらしいのですが、
そもそも桁違いでビット演算したらどうなるんだ?というのが気になりまして。
小さい方を大きいほうの型にキャストしてるのか、
それともキャストしてるんじゃなくて桁を増やしてるのか…
桁増やすにしても、符号拡張してるのか、0で埋めてるだけなのか…
気になって夜も眠れますん。

317:デフォルトの名無しさん
17/08/12 10:00:34.76 WyVA8Sgg.net
>>306
目的に対してどうしてそういう手段でやっているのか?

318:デフォルトの名無しさん
17/08/12 13:30:45.00 VqNg7Zuq.net
>>306
Chapter 15. Expressions
URLリンク(docs.oracle.com)
|
| 15.22.1。 整数ビット演算子&、^、|
| オペランドに対してバイナリ数値昇格が最初に実行されます。
|
| 5.6.2。バイナリ数値昇格
| いずれかのオペランドがdouble型であれば、他方はdouble型に変換されます。
| それ以外の場合、どちらかのオペランドがfloat型であれば、もう一方はfloat型に変換されます。
| それ以外の場合、どちらかのオペランドがlong型であれば、他方はlong型に変換されます。
| それ以外の場合、両方のオペランドがint型に変換されます。
ということなので今回の場合はlong型に変換されるはずよ
> longNumber = unsignedInt & 0x00000000FFFFFFFF
これは末尾にLをつけないとlongにならないかと
> int unsignedInt = -1;
> long longNumber = unsignedInt & 0xFFFFFFFFL;
上をコンパイルして逆コンパイルしたら下になった
> int unsignedInt = -1;
> long longNumber = (long)unsignedInt & 4294967295L;
なので型の変換はキャストっすね
Java 8ならInteger.toUnsignedLongというメソッドが用意されてるので
そっちが良いかも

319:デフォルトの名無しさん
17/08/13 01:18:20.66 SYaWjJhn.net
型違いって言うのが、典型的なバグの条件
MISRA-C などでは、バグを防ぐために、
元から、型が異なるものを演算してはいけないというルール
「A 演算子 B」と書く場合、A, B は絶対に同じ型である必要がある
だから、この式の前に、絶対に同じ型にしているから、
型変換のルールに、疑問など生じない
>>308
に書いているような型変換のルールを、探してきて見直すような、
暗黙の型変換というのは、すごく単純な場合を除き、使わない方がいい
机上デバッグで、毎回、型変換のルールを見直して、
あれこれ議論しないといけないから面倒
しかも、開発メンバーが変わるたびに、説明・確認しないといけない
基本的に、言語仕様書を引っ張りだして、確認するようなものはダメ。
言語仕様書が必要な、コーディングをしてはいけない。
言語仕様書を見ない人もいるし、バグるだけ

320:デフォルトの名無しさん
17/08/13 01:57:33.90 aXXBQeA8.net
PASCAL みたいなのがいいってことかな。

321:デフォルトの名無しさん
17/08/13 02:04:55.15 s7ggTJlx.net
C言語はJavaより型付けが弱いんじゃないかな
ブーリアンもないし

322:デフォルトの名無しさん
17/08/13 07:00:28.21 SCeJgg+o.net
C言語には継承やクラスといった概念がないからね、比較すべきはC++

323:デフォルトの名無しさん
17/08/13 07:08:01.01 WltPyYK1.net
>>308
完璧な回答ありがとうございます。
私の知りたかったこと全てと、私の知らなかったことが入ってました。
L付けておきます。
残念なことに、java1.7なのです。androidなもので。

324:デフォルトの名無しさん
17/08/13 07:09:42.70 WltPyYK1.net
>>309
はーい。あざーっす。
オペランドの片側に(long)付けておきます。

325:デフォルトの名無しさん
17/08/15 16:59:30.70 RbnTXkE5.net
今日からjavaはじめる
よろしくおまいら
初心者レベルだけどC言語から入ってjavaはじめるんだけど文字列結合とかキャストとか省略が許されててむずむずするわ

326:デフォルトの名無しさん
17/08/16 09:09:46.76 qOG9houb.net
実装者が楽になる言語仕様がバージョンアップのなびに追加されるから
このせいで理解してない人が書いたクソコードが万延する諸刃の剣になってる

327:デフォルトの名無しさん
17/08/16 10:09:58.32 F4bo7YNW.net
>>316
本来の書き方をわかってて省略するのとそういうもんだと思って書くのとでは雲泥の差があるな

328:デフォルトの名無しさん
17/08/16 12:49:17.76 qOG9houb.net
booleanとBooleanが混在しまくってるコード見たときには気が狂いそうになった

329:デフォルトの名無しさん
17/08/16 14:56:15.62 Rgy1v+1A.net
>>318
それだけじゃクソコードエピソードとしては弱いなぁ

330:デフォルトの名無しさん
17/08/16 15:17:45.44 uSl3r4ZJ.net
>>319
あなたのエピソードもどうぞ

331:デフォルトの名無しさん
17/08/16 16:28:47.57 7SX+Ce7L.net
ああ

332:デフォルトの名無しさん
17/08/16 17:14:50.23 qxnt2v0K.net
>>320
いきなりメソッドの初めで戻り値を変数に設定して、メソッド内で上書かずに最後でreturn。

333:デフォルトの名無しさん
17/08/16 19:48:31.09 ey68s8sH.net
Java最大の失敗はBean
これのせいで日本企業の所有するコードはパブリックアクセサだらけの地獄になった

334:デフォルトの名無しさん
17/08/17 00:48:02.70 x9wW63w8.net
>>322
変更があった時に、その変数を弄べばいいだけになるから
割と良いと思うけど
逆の変更があったからあなたが見た状態になったのかも知れないし

335:デフォルトの名無しさん
17/08/17 06:28:14.94 8r7YxJOf.net
>>324
あなたの解釈だとコーディングミスを想定していない。

336:デフォルトの名無しさん
17/08/17 14:38:05.88 G+zZ9zG7.net
超初心者ですまん
メソッドを数値で分けて呼び出したいんだけど
今使ってるのがswitchでの分岐
int a;
switch(a){
case 1:
hoge();
break;
case 2:
hogee();
break;
}
みたいな
もっと効率の良いやり方があったら教えて欲しい

337:デフォルトの名無しさん
17/08/17 15:17:28.53 aODDrPp/.net
>>326
幾つぐらい分岐するのかな?少ない場合はそっちの方が速いような気がするが。
分岐が沢山あるとか増え続ける可能性があるとか使う側で自由にセットしたいとかいう場合はまずinterface作っておいてその中にメソッドの定義を書いておく。
次にそれをimplementしたクラスを必要なだけ作っておき、HashMapにキーと共にインスタンスを入れておく。
後はそのHashMapからキーを使ってget()してメソッド呼ぶだけ。

338:デフォルトの名無しさん
17/08/17 15:33:57.25 XeZ7degk.net
c言語の入門書が一通り終わってオブジェクト指向も触りたくなったんでお勧めの入門書教えて下さい

339:デフォルトの名無しさん
17/08/17 16:06:35.83 OlLybMzW.net
(´・ω・`)あのー
すべての文字列はStringクラスのインスタンスとしてあつかわれるっていう表現がうまくイメージできないの
じぶんなりにまとめたのは
String s = "こんにちは"
これは
String s = new String(こんにちは)
と同じでStringクラスをインスタンス化するときに、コンストラクタに対して引数としてこんにちはをわたしてる
そしてインスタンス化されたStringクラスのメンバ変数にこんにちはが代入された
同じようにすべての文字列は扱われるので、
すべての文字列はStringクラスのインスタンスとしてあつかわれると表現される
このイメージでいいの?
くわしいひとおしえてくれませんか?

340:デフォルトの名無しさん
17/08/17 16:09:03.31 8r7YxJOf.net
>>329
Stringはよく使うクラスだから、特別な表記があるだけ。

341:デフォルトの名無しさん
17/08/17 17:04:43.05 G+zZ9zG7.net
>>327
ありがとう…😭

342:デフォルトの名無しさん
17/08/17 17:19:20.91 Q7A+EFnW.net
>>328
この本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

343:デフォルトの名無しさん
17/08/17 18:12:59.47 TlX56ZGd.net
>>329
これこれ
URLリンク(paiza.io)

344:デフォルトの名無しさん
17/08/17 19:12:28.02 x9wW63w8.net
>>325
可能性を上げてるだけなのに想定って
君の思う一番のコーディング以外は全てミスってことか?

345:デフォルトの名無しさん
17/08/18 14:05:01.42 uPv212Ws.net
>>334
ダメな例だよ。
変数が変数たる存在を理解してない。

346:デフォルトの名無しさん
17/08/18 16:58:08.35 Rznosojv.net
>>335
変数が理解�


347:キるのかよw 説明できないなら自分ルールにとどめときな



348:デフォルトの名無しさん
17/08/18 17:12:35.77 uPv212Ws.net
>>336
日本語わかりますか?

349:デフォルトの名無しさん
17/08/18 18:31:21.19 Rznosojv.net
>>337
それが日本語だとすると
変数が理解してない
というように解釈できるぞ
正しい文章とは、誤解の余地がない文章だろう
そんなこといいから、そういったコーディングをした時に発生し得る問題を挙げろよ

350:デフォルトの名無しさん
17/08/18 18:34:12.33 pRy4OxRt.net
普通なら「変数が変数たる理由を理解してない」っていうわな
まあ普通の人は各自で補って、それを論ったりはしないだろうけど

351:デフォルトの名無しさん
17/08/18 18:55:17.40 Rznosojv.net
あー定数やfinalでいいじゃんってことか
finalじゃないから>>324なんだろ
現場でやってれば、そういう問題集解いただけの発想だけでは居られない

352:デフォルトの名無しさん
17/08/19 08:15:29.19 IZN9Kb9e.net
private staticメソッドを使う意味ってありますか?
オーバーロードしたpublic staticメソッドの受け先以外の使い方で

353:デフォルトの名無しさん
17/08/19 08:19:07.46 oORm5Ou6.net
>>341
staticメンバにしかアクセスしないprivateなメソッドはprivate staticで定義するんじゃないの

354:デフォルトの名無しさん
17/08/19 14:46:54.88 hY6XbUY2.net
long x
x = Integer.parseInt(str.substring(121,131))
文字列の一部から10桁のlong型の数値を取得しているのだけど
この取り出したい数値が大きい時に、 x=0 になってしまう不具合があるのだけどどうすればいいでしょうか

355:デフォルトの名無しさん
17/08/19 14:54:42.91 yBrPcq+R.net
>>343
Long.parseLongで

356:デフォルトの名無しさん
17/08/19 15:08:14.44 hY6XbUY2.net
>>344
ありがとうございます

357:デフォルトの名無しさん
17/08/22 06:56:33.86 dBUxkpNb.net
頑張ってる

358:デフォルトの名無しさん
17/08/24 19:19:42.05 JFHydDe1.net
スッキリわかるjava入門を電子書籍で読んでいるのですがラッパーの記述が何処にあるかわからないです
書籍をお持ちの方教えて頂けないでしょうか?

359:デフォルトの名無しさん
17/08/24 19:53:22.35 KbcJbsO3.net
>>347
ちょっと待て
おまえの本には巻末に索引が付いてないのか?

360:デフォルトの名無しさん
17/08/24 20:08:09.37 JFHydDe1.net
>>348
ありがとうございます!
電子書籍なので気付かなかったです!

361:デフォルトの名無しさん
17/08/25 09:44:00.53 kDilQ37G.net
電子書籍なら何も考えずそのまま検索すれば良いだけのような?

362:デフォルトの名無しさん
17/08/25 11:04:00.00 0JW1nIZL.net
電子書籍っていっても文字で情報を持ってるわけじゃないから検索はできない(普通に索引はある)

363:デフォルトの名無しさん
17/08/25 12:29:18.21 KoB8BbC1.net
あー。文字情報なしの電子書籍はダメだね。

364:デフォルトの名無しさん
17/08/25 18:40:20.43 w/d6Mddl.net
漫画や自炊以外でそんなのあるのか

365:デフォルトの名無しさん
17/08/25 19:35:16.88 H2xWyZEq.net
静的初期化ブロックでif文使ってるようなクラスのカバレッジを100%にすることって出来ますか?

366:デフォルトの名無しさん
17/08/25 20:03:58.53 E3yIY7Cv.net
>>354 のようなのを見ると、どうして初心者は言葉足らずが多いのかと、いつも思うよ。

367:デフォルトの名無しさん
17/08/25 21:39:57.94 27FuNdyg.net
メソッドを作成し、呼び出せコリャ
メソッド名は命名規則にのっとって自由に決めてちょ。
値を定義済みの整数配列型と、整数型の値a, b を引数に渡して呼び出すと添え字 a の位置に b の値を挿入し整形済みの配列を戻り値として返すただし、元のデータは失われない
ただし、配列の長さは変化してよし。

368:デフォルトの名無しさん
17/08/25 22:03:30.09 h0dKu5Bs.net
自炊してもスキャンした画像をOCRソフトに読ませてテキスト作らせて画像と一緒にPDFファイルに組み込む事は可能。

369:デフォルトの名無しさん
17/08/25 22:05:05.37 h0dKu5Bs.net
>>356
夏休みの宿題?

370:デフォルトの名無しさん
17/08/25 22:08:03.15 h0dKu5Bs.net
>>354
君の言っていることの意味がわからない。

371:デフォルトの名無しさん
17/08/25 22:13:20.05 h0dKu5Bs.net
>>356
ヒントだけ書いとこう。
1. 配列を List に入れる。
2. add()で途中に挿入。
3. 配列にして返す。

372:デフォルトの名無しさん
17/08/25 22:18:03.60 /f+10ORp.net
>>354
無理です
リファクタリングしてからテストしてください

373:デフォルトの名無しさん
17/08/25 22:27:50.64 x2/PsxCr.net
>>356
public static void main(String[] args)
{
 int[] src = {0, 1, 2};
 for (int i = 0; i < 4; i++)
 {
  int[] dest = insert(src, i, 3);
  System.out.println(Arrays.toString(dest));
 }
}
static int[] insert(int[] src, int index, int value)
{
 int[] dest = new int[src.length + 1];
 System.arraycopy(src, 0, dest, 0, index);
 dest[index] = value;
 System.arraycopy(src, index, dest, index + 1, src.length - index);
 return dest;
}

374:デフォルトの名無しさん
17/08/26 05:15:30.71 djCuR8Pr.net
ダメだ。それ以上簡単な方法が思い浮かばない。

375:デフォルトの名無しさん
17/08/26 05:57:22.09 djCuR8Pr.net
IntBuffer 使ったらできたことはできた。
URLリンク(paiza.io)

376:デフォルトの名無しさん
17/08/26 08:40:40.53 dAUznQNC.net
低レベルスレは宿題ばっかやるアホが多くてホント呆れるわ
チラシの裏でやれドアホ

377:デフォルトの名無しさん
17/08/26 09:32:58.96 yjz2CD2O.net
>>354
System.loadLibraryを特権計算か何かで呼んでるんだろうけどまずカバレッジ100%目指すってのがおかしい
言葉足らずとは思わないが

378:デフォルトの名無しさん
17/08/26 13:57:43.15 A+ZFL75S.net
>>365
お前が出てけやカス

379:デフォルトの名無しさん
17/08/26 14:15:33.60 doT9ddiU.net
初心者スレで
初心者を追い出してどうするのか

380:デフォルトの名無しさん
17/08/26 14:31:40.42 DUW2NPhQ.net
kumi炎上商法

381:デフォルトの名無しさん
17/08/26 14:32:27.39 DUW2NPhQ.net
誤爆

382:デフォルトの名無しさん
17/08/26 22:11:30.26 Z+RkQazT.net
>>365
やめたれ
まぁ確かに人に質問する態度ではないけど

383:デフォルトの名無しさん
17/08/27 01:30:32.99 Xa66qldf.net
プログラミング超初心者です
Androidのアプリを作ることを目標にしてプログラミングを始めました
とりあえずプロゲートでJavaの文法を一通り学び終えたんですが、これからどのように勉強を進めていけば良いのかいまいちわかりません
フレームワークの勉強をした方がいいみたいなんですが、中々敷居が高くてどこからてを着ければ良いのやら、、
助言いただけると幸いです

384:デフォルトの名無しさん
17/08/27 05:51:11.36 uirFB7xG.net
>>372
Androidの開発環境についてるサンプルアプリ動かしてそれ改造したりくっつけてきゃいいよ
設計学びたいなら本読め

385:デフォルトの名無しさん
17/08/27 15:11:13.74 vQCj63e7.net
>>372
こちらへどうぞ
スレリンク(tech板)

386:デフォルトの名無しさん
17/08/28 02:07:53.52 eSPpiGRP.net
スレッドセーフについて教えて下さい。
よくフィールド変数は他スレッドから値が参照されたり、書き換えられたりするから、
使ってはいけない旨の記述を目にします。
例えば
class Calc{
private CalcSub calcSub;
public int execute(int param,int param2){
calcSub = new calcSub();
return calcSub.


387:multiple(param,param2); } } このようにメソッド内だけでCalcSubクラスをインスタンス化したときも、危ないのでしょうか。 メソッド内の変数はスレッドセーフと聞きますが。 呼び出すたびに新しいインスタンスを生成しても危ないのですか?



388:デフォルトの名無しさん
17/08/28 02:16:05.97 eSPpiGRP.net
上記の場合、フィールドに無理やり変数を持つ意味はありませんが、
よくフレームワーク等だとフィールドに変数とアノテーションで宣言しているのを見かけたので
その場合はなぜスレッドセーフで、上記のような場合はそうじゃない(?)のか気になったで質問しました。
よろしくお願いします。

389:デフォルトの名無しさん
17/08/28 05:07:00.05 4ejthJEF.net
2, 30年やっていないと、マルチスレッド・プログラミングは出来ない
作っても、何十回に1回は、妙な動きをするから、使えない
しかも、たちが悪いことに、たいていは正常に動くから、
テストで発見できず、本番環境でバグる

390:デフォルトの名無しさん
17/08/28 06:02:19.75 9/ugOPx7.net
>>375
そんな嘘誰がいってるんだ?

391:デフォルトの名無しさん
17/08/28 06:15:29.06 IHzBG4Iq.net
>>375
実際発生するかは確認してないが考え方として
スレッドαが新しいインスタンスaを作りメンバ変数に代入
スレッドβが新しいインスタンスbを作りメンバ変数に代入
スレッドαがメンバ変数からインスタンスb(あれあれー)を取得しメソッドをコール
スレッドβがメンバ変数からインスタンスbを取得しメソッドをコール
この場合はスレッドαがメソッドを終了するまでスレッドβがコールを待てば発生しないねsynchronized
またはメソッドローカルな変数だとαとβが格納する先がそれぞれ別だから上書きされない
だと思う

392:デフォルトの名無しさん
17/08/28 06:17:34.69 IHzBG4Iq.net
>>377
ServletやAndroidはマルチスレッドでは

393:デフォルトの名無しさん
17/08/28 07:31:21.61 4ejthJEF.net
マルチスレッドの物は、相互には呼べない。
呼べたら、バグだらけになるから大変
相手のキューに投入できるだけ。
それを相手が、自分のタイミングで、拾って処理する
間接的な通信方式だけが認められる。
直接通信はできない。
直接通信すると、バグるだけ

394:デフォルトの名無しさん
17/08/28 08:23:21.64 Aloz5skw.net
>>381
まあまあ君、そんなに興奮しないでください

395:デフォルトの名無しさん
17/08/28 16:17:04.11 izWN4xqJ.net
jdk9に入ると言われてた型推論valって見送られたの?

396:デフォルトの名無しさん
17/08/28 19:11:19.35 Zfeb1b7v.net
>>375
それでダメになるとしたら CalcSub が static のクラス変数を持っていて呼び出した処理の中でマルチスレッドを考慮せずにアクセスする場合だな。

397:デフォルトの名無しさん
17/08/28 19:36:15.99 G4YrO8Fv.net
>>375
直接の答えになってないけど、
わりと大雑把にデザインしていくしかないと思う
~複数のスレッドからアクセスされるオブジェクトはこれで
 そん中のメソッドがそれぞれ排他されている~
こまかく排他や相互作用が入り組んでくると
んなもんはどうなってしまうか火を見るより明らか
排他処理のデザインを先にシンプルにかっちり作っといて
あとはそれだけを触らせる
まぁどうせ、どうしたってあとから徐々に複雑になっては来るんだけど…

398:デフォルトの名無しさん
17/08/28 19:44:26.46 ml0Q9t1V.net
ステートレス&ローカルを徹底すればいいだけだろ

399:デフォルトの名無しさん
17/08/28 19:51:36.15 rn9GWLpv.net
>>386
それは,まともなプログラムを書く上では不可能では
ステートはどうしても必要だ,NAND 二つでつくるフリップフロップですらステートがあるだろう?

400:デフォルトの名無しさん
17/08/28 21:08:49.30 ml0Q9t1V.net
>>387
一般的なWEBシステムなら意識しなくてもそうなるってぐらい簡単だよ
デスクトップで色々とリソースに触るやつは少し工夫がいるかもね

401:デフォルトの名無しさん
17/08/28 21:45:08.56 UF1juDl3.net
要は、難しいところはFWに任せて、土方は簡単なところだけコーディングしましょうってこと

402:デフォルトの名無しさん
17/08/28 21:53:13.49 Eg8/Ix/2.net
>>387
そんな低レベルの話ではないでしょう……

403:デフォルトの名無しさん
17/08/28 22:40:31.14 ml0Q9t1V.net
>>389
手続き型はやめようってはなしだろ?

404:デフォルトの名無しさん
17/08/28 23:39:04.03 eSPpiGRP.net
では、CalcSubがこのような
クラスの場合は、上記のシチュエーションでも必ずスレッドセーフというわけですね。

class CalcSub{
final public int multiple(int value,int value2){
return value*value2;
}

ありがとうございまsた

405:デフォルトの名無しさん
17/08/29 13:11:22.25 M5SL5GoR.net
マルチスレッドでは、状態を持ったら、バグる。
だから状態を持たない、関数型言語が注目されている
そもそも、最速のNode.js なども、シングルスレッド。
Ruby の作者の、Matz ですら、マルチスレッドをやった事がない
まず、何十年もやっていないと無理。
マルチスレッドでは、シングルスレッド用の関数を使えない。
使うとバグるし、そもそも関数を、マルチスレッド対応で書く人は、いない
データ数が少ないと、マルチスレッドの方が遅くなる。
キャッシュ・メモリにも左右されるし、
速くなっても大したことない割には、開発費は何倍も掛かる。
というか、開発すればするほど、複雑すぎて開発不可能になっていくw

406:デフォルトの名無しさん
17/08/29 14:36:32.12 A+tXwp++.net
句点多すぎで読みづらい
スパゲティ文

407:デフォルトの名無しさん
17/08/29 16:56:55.55 eq9UJESX.net
1週間あれば入門書読めるだろ
何十年とかバカじゃないか

408:デフォルトの名無しさん
17/08/29 17:48:32.39 0M2qn692.net
>>394
句点ってw

409:デフォルトの名無しさん
17/08/29 18:46:05.86 cDDCr6AR.net
ほう、一週間でバクも起こさずにマルチスレッドプログラミングが出来るとな

410:デフォルトの名無しさん
17/08/29 18:46:35.11 cDDCr6AR.net
s/バク/バグ

411:デフォルトの名無しさん
17/08/29 19:33:04.52 Y/wjG5sQ.net
一週間で入門できても
一通り習得するのは
一年じゃ足りないからな
たいていの技術は

412:デフォルトの名無しさん
17/08/29 20:21:22.70 8M1VQrJQ.net
>>393
言語レベルでサポートされてるのに、どんだけ無能なんだよ

413:デフォルトの名無しさん
17/08/29 22:31:12.64 vmCbO2W1.net
何十年も掛かることはまずないと思うがなあ・・・

414:デフォルトの名無しさん
17/08/29 22:31:56.88 vmCbO2W1.net
何十年も掛かることはまずないと思うがなあ・・・

415:デフォルトの名無しさん
17/08/30 08:19:03.91 wr6FPFdN.net
最近やる気が出ずにJava勉強してない・・・
やらないとと思いながら結局何もしてない・・・

416:デフォルトの名無しさん
17/08/30 08:48:57.55 R7FBCReN.net
やる気が出ないってのなら必要としてないだけ

417:デフォルトの名無しさん
17/08/30 08:57:07.41 26KxM506.net
ユウナって1人だけドレコ4つなんやな
クラが3
他は全員2

418:デフォルトの名無しさん
17/08/30 09:15:08.90 j/drhsEx.net
Javaは1
smaller is better

419:デフォルトの名無しさん
17/08/30 09:56:47.12 C4N26Ixh.net
>>403
Kotlinでもやってみなさい

420:デフォルトの名無しさん
17/08/30 10:02:14.08 jmJ2uPoL.net
コマンド覚えるレベルの超初級なのですが、コマンド入力したらマウスカーソルなど当てるとその意味を表示するようなソフトやウェブサイトありましたら教えてください。

421:デフォルトの名無しさん
17/08/30 12:03:19.87 2a6L+Efp.net
>>408
どんな環境で、何のコマンド?
まず用語からかな

422:デフォルトの名無しさん
17/08/30 12:48:32.84 3eVDNogH.net
ググればいいような?
あ、そうだ。自分で作ればいいじゃん。
テキストファイルにコマンドと使い方書いといてそれ読んで画面にコマンド出しといてマウスカーソルが上に来たら使い方が出るみたいなやつ。

423:デフォルトの名無しさん
17/08/30 12:55:45.05 6un9/NsV.net
>>409
> 何のコマンド?
来いよベネット

424:デフォルトの名無しさん
17/08/30 14:51:36.52 2a6L+Efp.net
>>411 お前へのレスは最後にすると言ったな あれは嘘だ



426:デフォルトの名無しさん
17/08/30 21:03:40.59 vAN9hjOo.net
>>396
句点「。」と読点「、」だけど、逆だと思ってるひとは多い。

427:デフォルトの名無しさん
17/08/30 21:06:32.18 vAN9hjOo.net
Javaプログラマはマルチスレッドにしなくてもいいのにマルチスレッドで作ったり、それぞれのスレッドで同じデータを参照、更新したがるから変なことになる。

428:デフォルトの名無しさん
17/08/30 22:07:26.36 BAjgmjQJ.net
したがるかどうかは人による。

429:デフォルトの名無しさん
17/08/31 07:24:46.06 jBnRX0S+.net
>>404
それ真理だな

430:デフォルトの名無しさん
17/08/31 23:28:51.90 EcJJqLjf.net
質問です。
フィールド定数として下記のようなインスタンスを持つのはマルチスレッドプログラミング的に問題ありますか?
private static final Comparator<Date> COMPARE = new Comparator<Date>() {
@Override
public int compare(Date s, Date t) {
return s.compareTo(t);
}
};

431:デフォルトの名無しさん
17/09/01 00:01:38.73 WY1jTmKi.net
>>417
その Date が java.util.Date ならそれ自体がスレッドセーフでないためにうまく動かない可能性がある。
Date のインスタンスを渡す側の問題だ。COMPARE.compare(s, t) のように渡すことになるだろうが、
この s, t が他のスレッドと共有されており尚且ついつ書き換えられるかわからない場合は比較している
最中に書き換えられる可能性がある。

432:デフォルトの名無しさん
17/09/01 00:02:44.96 WY1jTmKi.net
>>417
これも読んでみな。
URLリンク(www.atmarkit.co.jp)

433:デフォルトの名無しさん
17/09/01 00:03:08.71 DL6ximvw.net
>>417
値が変化しないなら気にしなくておk
複数スレッドで書き換えるならvolatile付けとけ

434:デフォルトの名無しさん
17/09/01 00:18:20.76 WY1jTmKi.net
>>420
volatile 付けても複数のスレッドで同期取らずに書き換えるなら同じ事では?

435:デフォルトの名無しさん
17/09/01 00:25:43.65 mAYENdZK.net
用途としては、
class DateUtil {
private static final Comparator<Date> COMPARE = new Comparator<Date>() {
@Override
public int compare(Date s, Date t) {
return s.compareTo(t);
}
};
public static List<Date> sortDate(List<Date> dateList) {
Collections.sort(dateList, COMPARE);
return dateList;
}
}
こういうイメージです。
(sortするだけでわざわざreturnする必要ないかもしれませんが)
フィールド変数は、危ないかもしれませんが、定数COMPAREは、それ自身に、
インスタンス変数を持ちません。なので、こういう場合はスレッドセーフなのか気になりました。

436:デフォルトの名無しさん
17/09/01 02:21:00.03 WY1jTmKi.net
>>422
それ自身はスレッドセーフだが List も Date もスレッドセーフではないので
使う側で同期を取るか、または他のスレッドからアクセスされないように作る
必要がある。

437:デフォルトの名無しさん
17/09/01 04:51:05.87 rLv0uJJn.net
判定してる最中または後にt,sが示す時間が変更された場合か
スレッドセーフでないことをバグであるかのように見ている人がいるとやっかいそうだ
もうちょい誤解しにくい日本語訳ないかな

438:デフォルトの名無しさん
17/09/01 06:09:31.18 RTadbuNn.net
Ruby の作者の、Matz でも、マルチスレッドはやった事がない
普通、関数を書く時に、マルチスレッド対応で書く人は、いない。
誰も書いた事がないはず。
マルチスレッド対応で書くには、数十年の研究が必要
マルチスレッドどころか、コンテナでは、read 走査中に、
要素を追加しただけで、バグるように作られているものが、ほとんど
初心者がマルチスレッドをやるなど、30年は早い

439:デフォルトの名無しさん
17/09/01 06:55:47.73 s82kToZ5.net
マルチスレッドなんて簡単だよ
共有するデータはDBなどに集中させる
Javaでは基本的に共有しないでローカルコピーを使う
どうしてもJavaで共有したいならイミュータブルにするかスレッドセーフなライブラリを使う

440:デフォルトの名無しさん
17/09/01 09:53:20.19 Z9Fha70u.net
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募ができる

441:デフォルトの名無しさん
17/09/01 10:17:49.06 bXCQIuYm.net
数十年も研究しなくても普通のプログラマなら数秒から数分で理解できると思うがなあ・・・

442:デフォルトの名無しさん
17/09/01 13:07:05.18 cnTQZK5F.net
普通のプログラマなら、プログラミングに関わるほとんどの概念は数分でマスターできるけど、ここ初心者スレだから、あまり簡単を強調しない方がいいかも

443:デフォルトの名無しさん
17/09/01 14:15:39.27 9fFcfHIv.net
数分で理解できるは
それはそれで嘘

444:デフォルトの名無しさん
17/09/01 18:12:54.04 e0+gOffZ.net
大企業様のオレオレフレームワークも数分でマスターできるのか

445:デフォルトの名無しさん
17/09/01 22:28:02.34 fQM1CpIl.net
>>430
そうか?そりゃ余程へんな解説を聞いたかサンプルプログラムがサンプルと言えないほど複雑でクソだとかそういう特殊な場合ではないか?

446:デフォルトの名無しさん
17/09/01 22:37:22.34 9fFcfHIv.net
たとえば関数型プログラミングを
初見で数分で理解できたわーって
スラスラ書けるプログラマなんかほぼいない

447:デフォルトの名無しさん
17/09/02 00:06:17.15 wVJ/JGX4.net
マルチスレッドの話だろ?そんなの概念は直感でわかるだろ。
環境や言語やそのライブラリに応じて実現方法が違うだけで。

448:デフォルトの名無しさん
17/09/02 08:19:30.69 oilxAadu.net
直感で分かる言うひとと~
すぐには理解できない言うひとの~
想定してるもんがちがう~
ちがう~

449:デフォルトの名無しさん
17/09/02 09:34:27.23 SHTItmsy.net
>>423
では、渡すパラメータがローカルメソッドから渡されて、かつフィールド等にセットされない変数なら
スレッドセーフが保証されるわけですか?

450:デフォルトの名無しさん
17/09/02 13:46:02.16 5eH5prYD.net
>>436
スレッドセーフは保証されるよ
ローカル変数はスタックメモリに置かれてスタックメモリは
スレッドごとに独立してるから共有されないし
Comparatorは状態を持たないからね

451:デフォルトの名無しさん
17/09/02 13:54:08.95 wVJ/JGX4.net
基本は他のスレッドから書き込みアクセスされる可能性があるかないかだ。
あるのならセーフではない。なければセーフ。それだけの話。

452:デフォルトの名無しさん
17/09/02 13:56:04.80 CJZVlBwp.net
ServletやAndroid書いてればマルチスレッド嫌でも使うだろ

453:デフォルトの名無しさん
17/09/02 14:14:01.88 LBbAGOgx.net
今さらdoxygenの存在知ったけど便利だなこれ

454:デフォルトの名無しさん
17/09/02 14:20:05.60 WRdQiCnk.net
一初心者として便利ツールの紹介は好き

455:デフォルトの名無しさん
17/09/02 15:25:36.24 SHTItmsy.net
>>437
意味がわかりません。
そもそもなんでDateやListがスレッドセーフではない話が出てきたんですか?

456:デフォルトの名無しさん
17/09/02 15:35:24.27 wVJ/JGX4.net
>>442
>>422で使ってるからだろ

457:デフォルトの名無しさん
17/09/02 15:37:22.62 SHTItmsy.net
>>443
でもそれぞれフィールドに保持してないですよ。書き換わる要素はないです。

458:デフォルトの名無しさん
17/09/02 15:42:03.87 wVJ/JGX4.net
>>444
だからそれそのものはスレッドセーフだけど呼び出す側で他スレッドと共有されていたらダメってこと。
>>423に書いてあるじゃん。

459:デフォルトの名無しさん
17/09/02 19:36:29.61 5eH5prYD.net
>>442
意味はわかるでしょ

460:デフォルトの名無しさん
17/09/02 23:20:40.52 9OEMTqr3.net
Elixir = Ruby + Rails + Erlang VM
Elixir は関数型言語で、状態を持たない
Elixir で並列に動く、小プロセスはデータを共有しない。
10万の小プロセスを、0.6秒で起動できて、すべてのCPUコアを使いつくす
これで、スレッドと状態を持つ地獄から、おさらば!
プログラミングElixir、2016
著者は「プログラミングRuby」のDave Thomas

461:デフォルトの名無しさん
17/09/03 11:52:47.70 jl0cf3RS.net
( ´_ゝ`)フーン

462:デフォルトの名無しさん
17/09/05 22:34:26.22 dK4j6KND.net
Q: Javaプログラマはなぜメガネかけてるの?
A: 彼らくっきり見えないんだよ。(can't see sharp(C#))
URLリンク(pbs.twimg.com)

463:デフォルトの名無しさん
17/09/05 23:36:08.39 2RdPD3ce.net
まあ確かに俺はC#はできない。
かといってこれから覚えようという気も起きない。
というかそもそもJavaプログラマではない。少なくともJavaを使う仕事が俺には回ってこない。

464:デフォルトの名無しさん
17/09/06 08:50:03.33 s40IHHjR.net
>>450
なんでこのスレでなにかを発言しようと思ったの?

465:デフォルトの名無しさん
17/09/06 16:07:34.90 d2I5RN1E.net
太陽が黄色かったから

466:デフォルトの名無しさん
17/09/06 17:29:08.76 xQN3sZSb.net
まさに異邦人

467:デフォルトの名無しさん
17/09/06 19:06:07.94 4TLv3in6.net
異邦存在

468:デフォルトの名無しさん
17/09/07 07:19:13.27 MB/dyp5b.net
C#はJavaのパクリなんだからその気になればすぐ使える
というとC++のパクりだろって言われるだろうがな

469:デフォルトの名無しさん
17/09/07 07:19:55.34 MB/dyp5b.net
>>454
寝ないで働け

470:デフォルトの名無しさん
17/09/07 07:40:42.73 KHq0qyGq.net
>>455
問題なのは言語じゃなくてFrameworkだろ
まあJavaは最近c#に比べて周回遅れだが

471:デフォルトの名無しさん
17/09/07 08:27:53.25 MB/dyp5b.net
>>457
フレームワークなら同じ言語内でもある話だろう
phpの乱立に比べれば問題ないんじゃないか

472:デフォルトの名無しさん
17/09/07 10:53:40.12 KHq0qyGq.net
>>458
phpよりマシってのは同意
「すぐ使える」ってのがチュートリアルをこなせる程度って意味なら同意

473:デフォルトの名無しさん
17/09/07 22:29:15.27 d5zBqoup.net
spring bootがあるからJavaから抜けられない

474:デフォルトの名無しさん
17/09/07 23:45:33.37 1h1pdgP4.net
Javaはdotnetに比べるとめんどくさすぎるよ
未だに環境変数手動設定なクソSDK
キモい文法のビルドスクリプト
不親切でわかりにくいOSSエコシステム
何がどこに入ってるかわからんパッケージシステム
異様な量のxml設定ファイル
コンテナ・フレームワーク・基本ライブラリの粗製濫造
古くさい冗長な文法
周回遅れで導入される言語機能
アプリケーションの実装に集中する前にもうクタクタ

475:デフォルトの名無しさん
17/09/07 23:57:47.43 +0O7yqRr.net
質問です。
URLリンク(ideone.com)
上のコードで、addメソッドはString型を返すはずですが、
printlnメソッドの()内に""が無くてもよいのは何故でしょうか?

476:デフォルトの名無しさん
17/09/08 00:46:12.18 DUdklaUQ.net
メソッドにはダブルクオートはつけない
変数にもつけない
つけるのは直書きしたときだけ

477:デフォルトの名無しさん
17/09/08 07:18:41.58 Wk+L2KG3.net
>>461
アホ乙
アホには使いこなせないのがJava

478:デフォルトの名無しさん
17/09/08 07:50:37.46 WW306MqY.net
無駄な工数払うほうがアホだろ
ボランティアじゃねえぞ
この感覚が正しいからspring bootみたいなお手軽ブートストラッパが大流行したんだよ

479:デフォルトの名無しさん
17/09/08 07:52:51.24 Wk+L2KG3.net
工数に入れてる時点おまえはただの糞馬鹿
お前の言ってることなんて工数の内にも入らん
よって馬鹿には使いこなせない

480:デフォルトの名無しさん
17/09/08 07:54:31.54 WW306MqY.net
>>466
なんだ学生か

481:デフォルトの名無しさん
17/09/08 07:54:43.84 ulxG92DJ.net
spring bootはマジ神だからな

482:デフォルトの名無しさん
17/09/08 08:02:03.53 Wk+L2KG3.net
工数にもならない程度の作業をラッピングされただけでありがたがるような馬鹿だと
どの道問題起きたときに苦労するからJavaでの作業は向いてない
ラッピングされてるってことは単に馬鹿用に端折ってブラックボックス化させてるだけだしな
bootのデフォルトで使われてるコンテナすら理解してないレベルだろお前等は
馬鹿が内製向けのツールを作る分には楽になるだけって話だな
よって馬鹿には使いこなせない

483:デフォルトの名無しさん
17/09/08 08:16:52.81 WW306MqY.net
>>469
こういうバカがDRY無視したコピペコードを大量生産するんだよなぁ
基本中の基本すらわかってない本物のバカオブザバカ

484:デフォルトの名無しさん
17/09/08 08:18:36.31 vdK1eJ8T.net
馬鹿でも使えるほうがいい言語なんじゃないの

485:デフォルトの名無しさん
17/09/08 08:21:08.55 idaiwuG/.net
>>464
アホに使えてしまうのもJava

486:デフォルトの名無しさん
17/09/08 08:23:17.47 Wk+L2KG3.net
Javaも使いこなせない馬鹿が反論できなくなって発狂
いつもパティーンやな
お前みたいな馬鹿がグラマってるから巷に馬鹿が溢れかえるんだよ馬鹿
おまえはVBでも弄ってろアホ

487:デフォルトの名無しさん
17/09/08 08:28:41.76 qZqUAf36.net
>>473
>パティーン
なにそれ?

488:デフォルトの名無しさん
17/09/08 08:34:27.38 idaiwuG/.net
>>473
パツキングラマーはバカに決まってんだろ
おまえの行く末はおまえが決めればいいけど相手を見下すだけの方針は息苦しくなるよ
本当の天才と相対したら死んでしまう

489:デフォルトの名無しさん
17/09/08 08:39:54.26 GQrkfHCd.net
>>474
パトーンのことだろ、察しろよ

490:デフォルトの名無しさん
17/09/08 08:40:59.78 GQrkfHCd.net
>>475
お前はJavaを頑張れ

491:デフォルトの名無しさん
17/09/08 08:41:48.47 UV7+A1Tq.net
>>461
新しいものが出る度に乗り換えて、
客の環境も入れ替えさせるの?
趣味なら好きなの使えばいいんじゃないかな

492:デフォルトの名無しさん
17/09/08 08:43:06.63 GQrkfHCd.net
>>470
ドライ原則って便利ですね

493:デフォルトの名無しさん
17/09/08 08:43:27.56 LGv6EQ1D.net
はやく出勤しろ

494:デフォルトの名無しさん
17/09/08 08:46:08.95 GQrkfHCd.net
発進!

495:デフォルトの名無しさん
17/09/08 08:47:48.15 GQrkfHCd.net
>>478
一番新しいものが一番安全
僕らがStrutsから学んだことだぬ

496:デフォルトの名無しさん
17/09/08 09:33:28.93 YQG2/F8+.net
>>476
それ何?

497:デフォルトの名無しさん
17/09/08 10:37:24.50 UV7+A1Tq.net
>>482
永遠にベータ版使ってろよ

498:デフォルトの名無しさん
17/09/08 12:23:28.78 bQ6+nW/r.net
>>483
パワーストーンの略だ

499:デフォルトの名無しさん
17/09/08 12:23:56.74 bQ6+nW/r.net
>>484
そこまで極端な話してへんわ!

500:デフォルトの名無しさん
17/09/08 15:22:03.99 UV7+A1Tq.net
>>486
つまり新しいことと安全なことは関係ないと

501:デフォルトの名無しさん
17/09/08 17:54:25.21 47K+oTLF.net
>>487
それって極端な事言って議論を破壊する詭弁じゃん

502:デフォルトの名無しさん
17/09/08 17:54:56.15 47K+oTLF.net
詭弁屋さん詭弁を1つくださいな

503:デフォルトの名無しさん
17/09/08 17:56:20.40 47K+oTLF.net
ゴジラ対ディスカッションデストロイヤー

504:デフォルトの名無しさん
17/09/08 18:07:02.95 47K+oTLF.net
ベータ版と比較して安全とか馬鹿だと思います
リリース版と比較すべきでしょう
ベータ版の意味知らないのかなって思いますよ

505:デフォルトの名無しさん
17/09/08 18:08:25.14 47K+oTLF.net
ベータ版ってつまりヤクザですよね

506:デフォルトの名無しさん
17/09/08 19:07:17.23 G9suUG3Z.net
初心者はいずこに

507:デフォルトの名無しさん
17/09/08 20:01:44.60 idaiwuG/.net
ID:47K+oTLFみたいな屁理屈さんが初心者を排除してるよ

508:デフォルトの名無しさん
17/09/08 20:07:19.09 eQ2MXiWZ.net
>>494
お前はJavaを頑張れ

509:462
17/09/08 20:26:50.43 4h/TeiTo.net
>>463
ありがとうございました。

510:デフォルトの名無しさん
17/09/08 23:42:49.77 1UQsqClt.net
現役のプログラマの人がいたら意見を聞かせて欲しい
新人が入ってくるとしてどういうことを身につけておいて欲しい?もちろん会社によって求められる技術が違うのは分かっているんだけど
今職業訓練中。こんな風に書くとお前の才能無いの人のせいにするなとか言われそうだけど、講師がひどすぎる。クラス全員置いてけぼりでみんな困ってる
だからもう自分で入門書読んだりしてなんとか文法勉強してるんだけど、そこから先も一人で進めるかは不安。どういう勉強をしていくのが今求められる人材になれる?

511:デフォルトの名無しさん
17/09/08 23:51:00.20 idaiwuG/.net
>>497
知ったかぶりをせず人に聞ける程度のコミュ力
極論プログラム書けなくても現場で書ける人と繋がれたらいつの間にか書けるようになってるんだから小手先のスキルは後で良い

512:デフォルトの名無しさん
17/09/09 00:08:04.32 5ixV4zFS.net
JUnitを覚えろ
アルゴリズム一つ作るごとにテストケースを作って動作が正しいことを検証しろ
テスト駆動開発は理解も深まるし業務でJava使うような堅い職場はJUnit使えると必ず役立つ

513:デフォルトの名無しさん
17/09/09 01:25:00.19 IT7jkcdD.net
>>498
「先輩、オブジェクト指向って何ですか?」

514:デフォルトの名無しさん
17/09/09 01:28:15.56 Sn7cakJv.net
>会社によって求められる技術が違うのは分かっている
お前のただの妄想
>講師がひどすぎる
酷すぎる理由が一切書かれてない。読み手はお前の被害妄想としか受け取れない
>入門書読んだりしてなんとか文法勉強してる
書いてる内容を3日で理解できないなら諦めてコンビニバイトでもしろ
そんな低次元の知識は仕事で必要な知識量の1/100にも満たないからな
>人に聞ける程度のコミュ力
1日に何回も聞く奴はウザがられる
>JUnitを覚えろ
時間の無駄

515:デフォルトの名無しさん
17/09/09 04:49:25.98 Si3y5SDY.net
生徒についてはここでは触れないが、
酷い講師がいることは事実。
ある言語の教室に、その言語を全く知らない講師が来たのは震撼した
応募してきたクズも採用した教室も絶対に許さない

516:デフォルトの名無しさん
17/09/09 06:04:46.60 sPhDSaTF.net
>>501
>お前のただの妄想
>書いてる内容を3日で理解できないなら諦めてコンビニバイトでもしろ
>1日に何回も聞く奴はウザがられる
>時間の無駄
>酷すぎる理由が一切書かれてない。読み手はお前の被害妄想としか受け取れない
と否定する割にお前の主張に根拠がないんだが

517:デフォルトの名無しさん
17/09/09 06:12:48.38 xjITUSuv.net
>>488
UbuntuのリリースはDebianのベータを元にしてるな
つまり新しいかどうかでなく、品質を確保できているかどうかだ
そして新機能追加したばかりだと必ずバグはある
多くの人が使い枯れて安全となる
もちろんフィードバックがされないような状態はダメだ
ころころ変わるようなソフトは危険ということだ

518:デフォルトの名無しさん
17/09/09 06:34:28.48 YpNY2XAD.net
職業訓練であれ、全員未経験者の趣味で触ったこともない人ばかりって講座もすごいな
そんな高度な授業なのか
講師もどうしていいのか分からないんじゃ?

519:デフォルトの名無しさん
17/09/09 13:00:49.30 cTT03w6l.net
>>497
職業訓練に通ってるような奴に期待してる職場なんてないから、そのまま流れに身を任せていれば大丈夫
「今求められる人材」とかいうのは、お前とは違うステージの人間が意識すること

520:デフォルトの名無しさん
17/09/09 17:08:08.27 PtA6wXYt.net
スッキリわかるJAVA入門でオプジェクト志向の章に入ったものです。
メソッドの作成で急にpublicだけが抜けていたり、voidだけが抜けていたり、staticがつねに抜けていたりでその説明がありません。
ご教授お願いします。

521:デフォルトの名無しさん
17/09/09 17:15:58.94 dLxRWBAU.net
オブジェクト指向以前の問題だから別の本買え

522:デフォルトの名無しさん
17/09/09 17:28:28.27 PtA6wXYt.net
>>508
この本が1番初学者にとっていいって聞いたんですけどここにたどり着くまでにpublicとstaticの意味について全く触れられないままオブジェクト指向に入りました。
そこでいきなりpublicが抜けていたりstaticが抜けていたりでよくわからない状況なんですけど他の本の方がいいんですかね?

523:デフォルトの名無しさん
17/09/09 17:40:39.92 xc4mrJzo.net
>>509
publicメソッド→アクセス制限のないメソッド
staticメソッド→状態を持たないメソッド(コンストラクタ等によって生成された非staticフィールドにアクセスしないメソッド)
一つの本に頼るんじゃなくて複数の本で勉強しろってこと

524:デフォルトの名無しさん
17/09/09 17:55:28.42 XkIFpn02.net
>>501
うざいくらい聞いて進むならそれでいい
プログラマーの仕事において相手の感情なんか関係ないからね

525:デフォルトの名無しさん
17/09/09 17:57:16.81 OyBWgb9s.net
それはオブジェクト指向のところで説明するから
そもそも一番最初のpublic static void mainも説明なしにおまじないとして進める訳で
その疑問が出て来たからこそ頭がやっと受け入れ体制になった

526:デフォルトの名無しさん
17/09/09 18:55:24.83 cywOEVjq.net
確かそんな説明だったね
アクセス修飾子とか静的とかで別の賞に乗ってるんじゃない?

527:デフォルトの名無しさん
17/09/09 18:58:19.52 qKz0mxSR.net
売国安倍は憲法改正で国民主権と基本的人権
を奪うつもりだ。 ← 民主主義の崩壊
URLリンク(www.data-max.co.jp)
↑ マスコミは 9条しか報道しないが 自民案
の真の恐怖は21条など言論の自由を奪うこと
URLリンク(blog.goo.ne.jp)
↑超危険な緊急事態条項で人権無視の内閣独裁に!
URLリンク(www.youtube.com)
上のビデオで 自民党は 国民に基本的人権
は必要ないと怖いことを平気で言う。
URLリンク(xn--nyqy26a13k.jp)
↑ 都民ファーストも安倍と同じく 憲法改正で 人権
無視の大日本帝国憲法に戻すつもりだから
絶対に投票してはだめだ。 民主主義が崩壊する
URLリンク(blog.goo.ne.jp)
↑ ネトウヨ= 安倍サポーター工作員はネットで国民を騙す。
URLリンク(dot.asahi.com)
URLリンク(blog.goo.ne.jp)
↑ 安倍自民を操るカルト右翼「日本会議」は国民主権否定。
国民投票や選挙では自民党、維新、小池新党に絶対に入れるな。

528:デフォルトの名無しさん
17/09/09 21:59:27.12 NRF7XfoD.net
public static void main(String[] args)はおまじないでいいよ。最初の内はこれ入れたら動くぐらいの認識で、とにかくプログラムを書きまくれ

529:デフォルトの名無しさん
17/09/09 23:00:31.13 4g0rauvm.net
>>515
そろそろ書き疲れましたが次はなにをすればいいでしょうか

530:デフォルトの名無しさん
17/09/09 23:31:14.84 fEs2gsLh.net
オブジェクトの勉強

531:デフォルトの名無しさん
17/09/09 23:54:43.97 IT7jkcdD.net
>>517
それが終わったら何を勉強すればいいんですか?
自分で考えるべきですか?

532:デフォルトの名無しさん
17/09/10 03:41:17.48 whQ/VzG3.net
>>516
書き疲れたって言っても、写してるだけで自分で考えて書いてるわけじゃないでしょ
手が疲れても意味ないよ、頭が疲れなきゃ

533:デフォルトの名無しさん
17/09/10 07:58:46.57 Aa/cPztt.net
Javaのお進め図書・情報・urlc2ch.net
URLリンク(mevius.2ch.net)


534:92971/l50 スッキリわかる Java入門 第2版、2014 スッキリわかる Java入門 実践編 第2版 スッキリわかる サーブレット&JSP入門 実践Javaコーディング作法 プロが知るべき、 112の規約と21の心得、森崎雅稔(まさとし)、2014 Java 最強リファレンス、田中裕一、2014 EFFECTIVE JAVA 第2版、2014 Spring Framework 4 プログラミング入門、掌田津耶乃、2014 Spring Boot プログラミング入門、掌田津耶乃、2016 プログラミング GROOVY、2011 Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016



535:デフォルトの名無しさん
17/09/10 08:45:20.14 62TRA2/h.net
>>509
相性もあるから
わからなくても3冊読破しろ
わかるようになってくるはず
それでもわからなければ聞け

536:デフォルトの名無しさん
17/09/10 08:47:21.01 62TRA2/h.net
新しい言語やるときは予約語について調べるといいな
大抵数十個しかないし

537:デフォルトの名無しさん
17/09/10 12:00:09.53 bNzAxglb.net
Javaってめんどくさすぎませんか?
c#だと
dotnet new mvc
たったのこれだけでアプリケーション開発をスタートできます
それに比べてjavaは手間が多すぎます
アプリケーション開発に集中したいのに余計なことにばかり労力をかけなければなりません
なぜjavaコミュニティの人々はこんなにもめんどくさい状態を放置し続けているのでしょうか
やる気がないのでしょうか?

538:デフォルトの名無しさん
17/09/10 12:11:48.52 8/swxObF.net
めんどくさいと思ってないからだろうね
めんどくさいと思うヤツがいればそいつがめんどくさくないようにするツールを作るし

539:デフォルトの名無しさん
17/09/10 12:55:23.82 3lFSiHDa.net
なんとなくLinuxと似てるな。使っているやつの大半が元からコンピュータに詳しいやつばかりなので初心者向けの改良がされないで扱い辛いまま放置されるという。

540:デフォルトの名無しさん
17/09/10 13:10:45.17 MFlsvD9d.net
>>523
ヒント:アホにはJavaは使いこなせない
ヒント2:Javaはアホが使えるようにできてない
ヒント3:お前がアホ

541:デフォルトの名無しさん
17/09/10 13:23:18.68 3lFSiHDa.net
うーん。しかし、どの程度の規模のどういった開発をしたいのかにもよるが、まずは言語そのものの学習をしたいのであればWindowsならメモ帳で書いてコマンドラインでコンパイルして実行するっていうかなり簡単な方法があると思うんだが。

542:デフォルトの名無しさん
17/09/10 13:25:05.37 3lFSiHDa.net
あ、この頃はウェブでソース入れてボタン押すだけでコンパイルして実行してくれる所あるからもっと簡単だな。簡単すぎ。

543:デフォルトの名無しさん
17/09/10 13:51:40.24 bNzAxglb.net
ちなみに私は普段から仕事で大規模な開発をしています
JavaもJavaで主流のフレームワークも素早く習得し実務で利用しています
できないのではなくただひたすらにメンドクサイのです
なぜjavaユーザーはメンドクサイものをそのまま放置するのか
その理由が私にはわかりません

544:デフォルトの名無しさん
17/09/10 13:57:30.06 jX//aMWX.net
冗長なコードになってもJavaが人気なのは強い静的型付けでアホが書いても安全だから
そこそこの規模の開発でアホが書いたRubyコードなんか混じると地獄になる

545:デフォルトの名無しさん
17/09/10 14:04:46.24 HJWXg031.net
Eclipse落としてくるだけじゃん

546:デフォルトの名無しさん
17/09/10 14:05:12.61 MFlsvD9d.net
ヒント4:書いてることがド素人丸出し
ヒント5:大規模プロジェクトに突っ込まれるのは数合わせの木っ端要員
ヒント6:お前が馬鹿

547:デフォルトの名無しさん
17/09/10 14:12:11.92 bNzAxglb.net
>>531
重いし遅いしめんどくさいです
シェルとvimだけでやりたいです

548:デフォルトの名無しさん
17/09/10 14:50:40.96 HJWXg031.net
面倒なの嫌いな人間がvim使ってんじゃねえw

549:デフォルトの名無しさん
17/09/10 15:34:37.41 MFlsvD9d.net
ヒント7:素人の馬鹿がネガってるだけ
ヒント8:


550:馬鹿にオススメの言語 COBOL、VB、C#



551:デフォルトの名無しさん
17/09/10 15:40:59.48 QzndGGQt.net
ビーンズとかいうの使えばいいんだろ?

552:デフォルトの名無しさん
17/09/10 15:58:47.27 3lFSiHDa.net
>>529
面倒くさいとか言いながらそのまま使ってしまうやつが多いからだろう。
つまりある程度コンピュータに詳しいやつしか使っていないという Linux と似たような状況。
まあそれでも Android とか作って金稼ごうという Google みたいなのが現れるかも知れないわけだが、
Javaではまだそういう野望を持つやつは居なかった(いや、居ないことはないがメジャーにならなかった)わけだな。

553:デフォルトの名無しさん
17/09/10 16:05:36.32 bNzAxglb.net
>>537
難しい事を出来る能力のある人ではなく
なんとか使えてはいるけれどカイゼンするまでの能力はない半端な人しか使っていないのでは?

554:デフォルトの名無しさん
17/09/10 16:13:25.25 w6DoWSI/.net
そいつはこのスレで言うことなのか

555:デフォルトの名無しさん
17/09/10 16:13:50.06 3lFSiHDa.net
>>538
それもあるかもね。
後は「難しいことを知っている自分」というのがエゴの足しになっている場合かな。
ま、実際に人にはできない高度な事が出来ればそれで金を稼げる可能性が高まるわけで、
それに頼って生きているようなやつはその高度な事を高度でなくすような事はしないだろう。
そんな事したら自分の生活が貧しくなって底辺に落ちるからな。w

556:デフォルトの名無しさん
17/09/10 16:14:41.00 HJWXg031.net
たいした違いがあるとも思えんが
何がそんなに面倒だったんだ

557:デフォルトの名無しさん
17/09/10 16:14:55.00 MFlsvD9d.net
ヒント:素人以下の馬鹿の自演

558:デフォルトの名無しさん
17/09/10 16:16:09.02 bNzAxglb.net
まるでCOBOLを見ているようで悲しくなりますね

559:デフォルトの名無しさん
17/09/10 16:17:42.42 g6e16kXh.net
ヒント10:訓練校の人間も2は見ている

560:デフォルトの名無しさん
17/09/10 16:20:12.36 HJWXg031.net
簡単さと引き換えになるのはたいてい
規模が大きくなった時のメンテナンス性や
意識的な細かい制御
ようするにvimの人は手順を追って何とか作業ができはするが
利益を理解できるレベルにないのだろう

561:デフォルトの名無しさん
17/09/10 16:35:10.48 bNzAxglb.net
>>545
簡単さとカスタマイズ性を両立できることは他の言語のモダンなフレームワークが証明していますよ
Javaスレらしいと言えばらしいんですが、少々考え方がレガシーですね

562:デフォルトの名無しさん
17/09/10 17:06:48.53 MFlsvD9d.net
ヒント:
フレームワークを素早く習得し~とか
自分で使用言語選べない立場にいる木っ端のアホが能書き垂れるスレじゃない

563:518
17/09/10 17:27:17.21 zlOAvEVW.net
>>520
ありがとうございました。
ちょっと怒ってます?

564:デフォルトの名無しさん
17/09/10 17:48:12.43 KEYZb0z0.net
>>546
で、質問はなんだったっけ?

565:デフォルトの名無しさん
17/09/10 18:25:31.79 HJWXg031.net
Javaにはコマンドラインからのプロジェクト作成ウィザードがないとお怒りのようです

566:デフォルトの名無しさん
17/09/10 18:29:20.29 MFlsvD9d.net
マジレスするとコイツがめんどくさいって言ってるのって
環境変数設定するのがーとかの超低次元のレベルの話だろ

567:デフォルトの名無しさん
17/09/10 20:11:27.20 vMSV9X0d.net
>>489
おう、まいど!
好きなの持って行きな!
URLリンク(www.wikihouse.com)

568:デフォルトの名無しさん
17/09/10 20:19:51.38 xTzJbttv.net
>>449
C#って動詞だったのかよ...

569:デフォルトの名無しさん
17/09/10 21:41:22.66 JRi6baJ3.net
doが省略されてるんでしょって言わないとわからんかね

570:デフォルトの名無しさん
17/09/10 22:19:33.84 bNzAxglb.net
>>549
なぜJavaコミュニティの人々は使いにくいJavaを放置し続けるのか?
ですかね

571:デフォルトの名無しさん
17/09/10 22:21:44.81 7jTNf2+P.net
>>555
使いにくいと


572:感じていない が回答ですね



573:デフォルトの名無しさん
17/09/10 23:00:06.61 ZcQzUUfy.net
spring initializrもめんどくさい?

574:デフォルトの名無しさん
17/09/11 01:26:23.02 l21t5Df8.net
フレームワークや言語を修正できる人って1000人に1人くらいでしょ、自分でできるならここで文句言うこともないと思うので修正できる人探して訴えるしかない
使うのが面倒くさいと思っていても修正するのはそれ以上に面倒くさいとわかるでしょうに

575:デフォルトの名無しさん
17/09/11 03:04:41.07 TB0SwtSd.net
人の作ったもの読んで理解して修正するのが面倒なら初めから全部自分で作ってしまうという手もある。
まあでもプログラミングを全部一人でやる必要はない。仕様公開して作る人募集して作ってもらうということも可能だからな。
自分で作るとしてもプラグインで機能追加できるようにしといて自分では核となる部分とどうしても最初からあって欲しいプラグインだけ作って後は他の人にどんどんプラグイン作ってもらうという手もある。

576:デフォルトの名無しさん
17/09/11 03:10:25.03 +NzND3PL.net
Javaのオブジェクト指向の正統派感が半端ない

577:デフォルトの名無しさん
17/09/11 06:37:01.01 JLDhDRUg.net
>>523
mavenですぐ始められるだろ

578:デフォルトの名無しさん
17/09/11 06:38:35.28 JLDhDRUg.net
>>560
intとかあるのに?

579:デフォルトの名無しさん
17/09/11 08:20:23.82 +NzND3PL.net
>>562
プリミティブを許さないOOPって何がある?

580:デフォルトの名無しさん
17/09/11 09:39:24.12 vJ3AiMg+.net
○次受けが多いほど退場率が早くなる。高くなる
直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ 
長時間労働 高稼働 高スキル要求が多い
フリーランスサイトを運営している零細ITの自称エージェントは労働市場から流れてくる案件を転売してるだけだった。
労働市場に加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募できる
eJobgo JIET JISA で検索
優良エージェント・優良サイト
首都圏IT(PE-BANK)  プログラマーズ

581:デフォルトの名無しさん
17/09/11 12:00:24.74 YUiT0WG/.net
例外処理について質問です
try catchで例外オブジェクトを投げるとのことですがこの例外オブジェクトってなんなんでしょう
例外って要はプログラム実行してて何か不自然な挙動があったという状態であってそれがオブジェクトとは?
今までオブジェクトってのはクラスがあってそれを基にしてオブジェクトが作られる、メモリ領域が確保される
っていう理解だったので、エラーにオブジェクトもくそもないだろと思うのですが

582:デフォルトの名無しさん
17/09/11 12:11:54.05 KaqDqihN.net
>>565
Throwableを実装するクラスのオブジェクトでござろうよ

583:デフォルトの名無しさん
17/09/11 12:52:21.51 464/dgmD.net
>>565
例外オブジェクトは、例外が発生した原因、場所などを保持するオブジェクト
オブジェクト指向の世界なんだから、エラーに関する情報もオブジェクトへのアクセスで取得できた方が一貫性あるし都合がいいじゃん

584:デフォルトの名無しさん
17/09/11 12:55:56.64 YUiT0WG/.net
えーっと書き方悪かったですかね……
エラーってのはプログラムとは独立の事象じゃないですか
プログラムを実行した結果起きる出来事なわけで実体はないと思うんですよ
だからそれはオブジェクトというか操


585:作する対象になりえないのではないかと



586:デフォルトの名無しさん
17/09/11 12:57:33.16 MQg6nYRf.net
>>565
例外情報をまとめたオブジェクト

587:デフォルトの名無しさん
17/09/11 13:21:47.07 w3UfkE5E.net
ここまで頭悪い奴は久々に見たな

588:デフォルトの名無しさん
17/09/11 13:48:48.73 YUiT0WG/.net
>>567 >>569
あーなるほど
エラーそのものがオブジェクトなんじゃなくて、エラーが出るとエラー情報を元にオブジェクトが生成されるってことでいいんですかね

589:デフォルトの名無しさん
17/09/11 13:53:32.73 JLDhDRUg.net
>>563
ruby

590:デフォルトの名無しさん
17/09/11 14:02:19.43 wWjif9uw.net
ここの住人は優しいな

591:デフォルトの名無しさん
17/09/11 14:04:39.27 JLDhDRUg.net
自分で例外クラス定義したり
newしたりしないのかな

592:デフォルトの名無しさん
17/09/11 15:56:12.62 pLv+3faO.net
してもいいけどだいたいは元からあるやつで済みそう。

593:デフォルトの名無しさん
17/09/11 16:31:17.48 j2JxUcFR.net
自作例外は初心者に不要だと思う

594:デフォルトの名無しさん
17/09/11 17:39:05.01 OENb9hQD.net
構造体的なものを使いたい時に、クラスを使っているのですが
Public class Hoge {
public int fuga;
public int piyo;
}
とやって、更にgetFuga,setFugaなどのメソッドを実装するのと
メソッドを使わず、利用の中でtest.fuga=3などと直接触るのでは
Java的には前者のほうが推奨なのでしょうか?
(カプセル化?っていうんでしょうか?)
また、その場合にはクラスもPublicではなくPrivateにして外から触れなくするのが良いのでしょうか?
よろしくお願いいたします

595:デフォルトの名無しさん
17/09/11 17:54:49.24 a/3J8itn.net
>>577
パブリックなアクセサ作ったら
カプセル化にならぬよ
フィールドをパブリックで公開するのがモダンなインプリメンテーション

596:デフォルトの名無しさん
17/09/11 18:01:03.13 QNy5oHUR.net
>>577
物による
振る舞いを持ったオブジェクトならフィールドもアクセサも公開しない
データならフィールド丸出し

597:デフォルトの名無しさん
17/09/11 21:07:20.59 +NzND3PL.net
>>572
orz

598:デフォルトの名無しさん
17/09/11 21:12:01.54 QpwJ435R.net
>>577
他のクラスからいつ書き換えられてもいいならpublicにしとけば良い。
書き換えられた時に何かそれにまつわる処理をしたいならprivate等の外から直接アクセスできないやつにしてsetter経由でしか書き換えられないようにすれば良い。
読み出しのみ可能にしたいなら同様にprivate等にしてgetter作っておけば良い。

599:デフォルトの名無しさん
17/09/11 21:42:22.72 +NzND3PL.net
>>578
アクセサメソッドはカプセル化というよりは不正な値の代入や取得を防止するのが主な目的だと思うけどね
なのでフィールドはprivateにしてアクセサメソッドをpublicにする
フィールドをpublicで公開するのがモダンなimplementationだというのは初めてきいた

600:デフォルトの名無しさん
17/09/11 21:55:44.65 j2JxUcFR.net
もはや宗教

601:デフォルトの名無しさん
17/09/11 22:17:17.13 x6mCsGmB.net
>>582
最先端だからね、これから広めて欲しい

602:デフォルトの名無しさん
17/09/11 23:05:36.77 y5R43Vtl.net
どこの先っぽだ

603:デフォルトの名無しさん
17/09/11 23:51:12.72 QNy5oHUR.net
C#もそうだけどモダンな言語ってのは関数型の取り込みが進んでるんだよ(Javaはモダンじゃないって?)
んで関数型はデータを純粋なデータとして扱う事が多い
だから隠蔽されたクラスより公開された構造体の方が合ってるんだね

604:デフォルトの名無しさん
17/09/12 00:08:26.83 APGFN74L.net
質問です。
コンストラクタにはpublicを付けた方がいいのでしょうか?
それとも付けない方がいいのでしょうか?

605:デフォルトの名無しさん
17/09/12 00:33:44.11 yajdRfge.net
OH!

606:デフォルトの名無しさん
17/09/12 01


607::23:33.84 ID:7I+dfSsy.net



608:デフォルトの名無しさん
17/09/12 01:31:43.91 wkDGqWCe.net
>>587
コンストラクタの意味合いから考えて通常はpublicをつけます
逆にprivateをつけた時の効果とそれにより考えられる効能を想定してみましょう

609:デフォルトの名無しさん
17/09/12 01:37:00.21 KwS1KeaA.net
>>585
恐らく三角形の底辺の右か左の尖ってる所

610:デフォルトの名無しさん
17/09/12 01:40:47.97 KwS1KeaA.net
class X {
 private X() {}
}
俺の心の中でしか new できないクラス

611:デフォルトの名無しさん
17/09/12 01:50:55.01 wkDGqWCe.net
自身の初期化済みオブジェクトを返すクラスメソッドだけからしかオブジェクト生成をさせたくない時(があるのかしらんが)とかかねぇprivateコンストラクタを定義するとしたら

612:デフォルトの名無しさん
17/09/12 02:03:12.61 7I+dfSsy.net
昔はsingletonにする時によく使ってたけど、最近はDIコンテナに任せちゃうからなあ

613:587
17/09/12 02:37:13.04 APGFN74L.net
遅い時間に失礼します。
回答をくれた方ありがとうございます。
publicを付けるか付けないかで具体的に何が変わるのでしょうか?
例えば、
public class A {
int a;
A() {
a=1;
}
}

public class A {
int a;
public A() {
a=1;
}
}
とでは何が違うのでしょうか?
2度目になりますが、回答の方よろしくお願いします。

614:デフォルトの名無しさん
17/09/12 03:37:49.76 sosh7c3a.net
>>595
publicはデフォルトコンストラクタを明示
privateはデフォルトコンストラクタを使用禁止

615:デフォルトの名無しさん
17/09/12 03:49:16.12 KwS1KeaA.net
URLリンク(msugai.fc2web.com)

616:デフォルトの名無しさん
17/09/12 11:19:16.85 WW0MtbKa.net
>>577-582
フィールドを直接アクセスするのは、同じクラス内だけ。
同じクラス内のソースコードを書く人は、
同じ会社・人物だから、勘違いが少ないから、OK
そのクラスの外からアクセスする人は、必ず、アクセッサを通す。
これは異なる会社・人物を想定しているから、
コメントで説明するだけじゃ、不十分
コメント通りに、プログラミングするかどうか、分からないため、
必ず、アクセッサを通して、不正な値ではエラーにする
もし、エラーにしなかったら、不正な値でも動いてしまって、
後に、別の場所で、別のエラーになるから、原因を突き止めるのが難しくなる
エラーの原因と、エラーになる場所が遠くなるから、ダメ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch