Java入門・初心者質問スレ Part.3 [無断転載禁止]©2ch.net

レス数が1000を超えています。これ以上書き込みはできません。
2017/04/04(火) 20:41:11.59ID:y0EcmGB0
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.2
http://echo.2ch.net/test/read.cgi/tech/1478863511/
2017/06/25(日) 12:17:45.64ID:KhSXYTyi
タイトルも糞も俺は>915の疑問に回答しただけだアホ
933デフォルトの名無しさん
垢版 |
2017/06/25(日) 12:26:32.31ID:T3UbVkML
チームの人間をアホ・バカと罵ることで自らの力を誇示する人がいる
彼らはそれと引き換えにチームの人間を萎縮させチームの力を低下させる
個人の力よりもチームの力を優先できることをコミュニケーション能力と呼ぶならば
会社がコミュニケーション能力を重視するのは当然のことかも知れない
934デフォルトの名無しさん
垢版 |
2017/06/25(日) 12:27:12.25ID:T3UbVkML
僕らはチームなんだよ!
チームプレイに徹して欲しい
935デフォルトの名無しさん
垢版 |
2017/06/25(日) 12:28:04.52ID:T3UbVkML
2ch株式会社Java入門チーム
2017/06/25(日) 12:39:18.47ID:NO+bhPJd
自分だけはバカじゃないという前提
937デフォルトの名無しさん
垢版 |
2017/06/25(日) 12:51:17.04ID:T3UbVkML
認知心理学の研究で大学の教授にアンケートを取ったところ
自分が他の教授よりも頭が良いと思っている人は9割だった

知的活動では自信過剰なことがプラスに働くんじゃないか
という研究結果があるので他人の批判ではなくて自己の思考や
行動を活発化させる方向にそれを活かせればよいのだろうけどね
938デフォルトの名無しさん
垢版 |
2017/06/25(日) 18:58:05.05ID:/dywZQtk
>>904

すみませんでした。以後、imgurを使用います。

----

indexが増えた際のx座標計算がうまくできません。
IntStream.range(0,itemCount)
.filter( i -> getItemX(i) <= e.getX() && e.getX() < getItemX(i)+getItemWidth(i) ).limit(1)
の制限も考慮しなくてはならないのでしょうか?

参考ソース (ttps://www.axfc.net/u/3818669)
作成ソース (ttps://pastebin.com/i84ws4zH)
939デフォルトの名無しさん
垢版 |
2017/06/25(日) 19:43:27.29ID:PbhQLBTm
>>916
ならばなおのこと全部Javaで作った理由がわからんな。Javaでこんなものまで作れますよって実績作ることにしかならないじゃない。
2017/06/25(日) 20:14:59.02ID:L2u2Exq8
Javaの話じゃなくてすまんがIronPythonを.NETをdisるために作ろうとしたら想像以上によく動くものができたから自分の論文を撤回せざるを得なくなったって話思い出した
2017/06/25(日) 21:15:23.43ID:Fdc708fK
業務システムでプロジェクト分割をしようと思った時、
1. Controller + Form
2. Repository + Service + Dto
3. システム共通

の3つに別けようと思う。
このプロジェクト分割方法は馬鹿かな?
942デフォルトの名無しさん
垢版 |
2017/06/25(日) 21:42:01.98ID:NUJBMJ8x
>>931
現実はお前に合わせてレベルを下げてなんかくれないぞ?
2017/06/25(日) 21:43:09.30ID:Mv46Kpif
>>942
おじいちゃんその話52回目ですよ
944デフォルトの名無しさん
垢版 |
2017/06/25(日) 21:43:24.48ID:wnVI7vr5
>>939
全部Javaなんて誰が言っているのか?
2017/06/25(日) 22:14:49.01ID:biukWTID
>>904
すまん。899は俺に合わせたんだと思う。

>>938
79行目
 誤: if (i == index) {
 正:if (i == this.index) {
13行目のint index;と71行目の getItemX(int index) 、どちらもindexなんだけど、79行目では13行目の方を使う。

86行目のtmpX += interval;を83行目と84行目の間に移動。
forの外にあったらintervalは1回しか使われない。

>IntStream.range(0,itemCount)
>.filter( i -> getItemX(i) <= e.getX() && e.getX() < getItemX(i)+getItemWidth(i) ).limit(1)
>の制限も考慮しなくてはならないのでしょうか?
そっちはマウスのボタンを押した際のX座標からどの四角かを判別してる所だから関係ないよ。
946デフォルトの名無しさん
垢版 |
2017/06/25(日) 23:19:36.03ID:/dywZQtk
>> 945

ありがとうございます。なんとか出来ました。

>>そっちはマウスのボタンを押した際のX座標からどの四角かを判別してる所だから関係ないよ。
なるほど。まだよくラムダが分かっておらずfilterとlimit(1)があったので、座標計算の一部をしているのかと思いました。

親切にどうもありがとうございました。
947デフォルトの名無しさん
垢版 |
2017/06/26(月) 01:41:16.14ID:dBcxZn43
>>944
Java ではないのか? じゃあこれ間違ってるから書き直しておいてくれ。

https://ja.wikipedia.org/wiki/Eclipse_(%E7%B5%B1%E5%90%88%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83)
> Eclipse自体はJavaで記述されている。
948デフォルトの名無しさん
垢版 |
2017/06/26(月) 07:38:34.42ID:WsPLfBZ0
EclipseはすべてJavaで作られた,と,言いたかったのか
949デフォルトの名無しさん
垢版 |
2017/06/26(月) 07:39:54.73ID:WsPLfBZ0
Wikipediaの編集はそうするべきと思った人が自分でやりましょう,そのためのWikipedia
2017/06/26(月) 20:29:48.22ID:Zn9ql8N4
初歩的な質問ですみません
例外処理について勉強しているところなのですが
以下のコードでobjメソッド内で例外エラーが発生したとして、
"throws Exception"を記述する理由が良く分かりません
その記述が無くても、tryブロックでobjメソッドを呼び出した時に例外エラーが起こるので
catchブロックに移動し問題なく例外処理されると思うのですが・・・

class Sample{
public static void main(String args[]){
try{

obj();

}catch(Exception e){ //obj()からパスされた例外をキャッチ

   //例外処理

}


}

static void obj() throws Exception{

処理

}

}
951デフォルトの名無しさん
垢版 |
2017/06/26(月) 21:13:23.21ID:L0ltnIDu
>>950
それがないとコンパイラも人も中身を全部読まなきゃ何の例外返す可能性があるメソッドなのかわからないからだろう。
2017/06/26(月) 21:27:09.37ID:Zn9ql8N4
>>951
ありがとうございます!
2017/06/27(火) 07:26:37.90ID:JOEM7gLE
javaってc++のシンタックスシュガーという認識で良いでしょうか
2017/06/27(火) 07:56:12.40ID:ngSbFuUq
>>953
何言ってんだお前、全然違う
シンタックスシュガーじゃない
センタックスシュガーだ
それ以外は合ってる
955デフォルトの名無しさん
垢版 |
2017/06/27(火) 09:23:49.77ID:iWisgjb4
>>953
似ている所はあるがかなり違うと思ってた方が良いと思うよ。
2017/06/27(火) 12:51:55.54ID:24FbyWo4
>>953
まずシンタックスシュガーって言葉の認識がおかしいわw
2017/06/27(火) 14:24:50.21ID:UG1947Jf
>>954
えっ
958デフォルトの名無しさん
垢版 |
2017/06/27(火) 17:56:39.93ID:WJOzEeQP
かんたまがきゆい
959デフォルトの名無しさん
垢版 |
2017/06/27(火) 19:12:17.19ID:emYml4i8
C++はC言語、手続き型プログラミング言語に抽象データ型を実現し、
静的型付けオブジェクト指向プログラミングを書きやすくするために作られ、
C言語を継承し機械語の効率的な実行のための設計を維持しようとしている。

Javaは当初、組み込みシステム上でネットワークコンピューティングに対応(support)するために作られた。
Javaは移植性があり、セキュアであり、マルチスレッド対応であり、分散であり、そして
C++よりも単純(simple)になるように設計された。
Javaの文法はCプログラマに馴染みやすいものが選ばれたが、Cとの直接的な互換性は維持されていない。

JavaとC++の比較
-Wikipedia
960デフォルトの名無しさん
垢版 |
2017/06/27(火) 19:15:14.99ID:emYml4i8
C++
プログラマを当てにする
明示的な型破壊
マルチパラダイム
演算子多重定義

Java
プログラマを守る
型安全性
オブジェクト指向
演算子の効果は不変

JavaとC++の比較
-Wikipedia
2017/06/27(火) 19:15:21.15ID:XD0WiN5V
java初心者の素人ですが、C言語は難解で難しいんやろなあと思っている
2017/06/27(火) 19:22:49.43ID:01l/tej4
初心者、入門の話だとJavaの方が10倍難しいよ
963デフォルトの名無しさん
垢版 |
2017/06/27(火) 19:24:55.69ID:BFJFfjlP
>>962
それはオブジェクト指向だけ切り取った場合だろw
2017/06/27(火) 19:27:03.80ID:kIT2/xtQ
>>961
難解というのなら Java の generics の方が難解だ
C++ のそれは instanctiate に端的に表されるとおり、至極素直だと思う
2017/06/27(火) 19:27:49.98ID:XD0WiN5V
え、まじですか?
Cの方がメモリ管理とかポインタとかあって難しいという噂ですよ。
その代わり、早いのだとか。

javaは、私でも初歩だけは楽しく学べました。
どんな言語にしろ、プログラムって素晴らしいですね!
966デフォルトの名無しさん
垢版 |
2017/06/27(火) 19:27:53.77ID:emYml4i8
「メモリ管理は、Java仮想マシンに統合されたガベージコレクションの機能によって行われる(中略)
Javaには、C/C++のような、整数とポインタの相互変換、
配列の要素へのポインタによるアクセス、ポインタ演算といった機能は、基本機能としては提供していない」

Java
-Wikipedia
2017/06/27(火) 19:29:43.95ID:XD0WiN5V
でも楽しくて素晴らしいなんて思えてるのは最初だからかも。
開発となれば納期とか派遣とか人間関係とかあって、つらいという噂です。
やはりプログラム言語は恐ろしいですね…
2017/06/27(火) 19:31:16.57ID:kIT2/xtQ
趣味でやればいい、誰にも支配されることはない
2017/06/27(火) 19:31:29.26ID:01l/tej4
>>965
ポインタってぶっちゃけかなり単純な話だよ
2017/06/27(火) 19:32:18.24ID:kIT2/xtQ
>>969
でも void * 型を適正に使うのはむずかしい
2017/06/27(火) 19:41:34.06ID:i1YH3/OV
C/C++はGCがないからなぁ、まあBoehm使えば済むけど
972デフォルトの名無しさん
垢版 |
2017/06/27(火) 19:42:59.14ID:GZ1TXcZe
Cはアセンブリ言語がわりに使うのが丁度いい感じがする。
OS書くとか、デバイスドライバ書くとか、組み込み用マイコンの数KBのROMエリア用のプログラム書くとかな。
ああ。でもこの頃は物凄く小さいマイコンボードでもLinux乗ってたりするからあまり小さくする必要はないかな。
2017/06/27(火) 21:59:25.71ID:i+35CN1y
**
Cには、ダブルポインタ、ポインタのポインタもあるから面倒

可読性が低いし、メモリ管理が厄介なので、
生産性が低く、開発費がかかる

固定配列だから、配列.add のように、配列に要素を追加できない

漏れは、1冊丸ごと、ポインタの本も買ったけど、
まともにプログラミングするだけでも、数年以上かかるし、
生産性が低いから、どんどん自分の給料・時給が下がっていくのが、Cのおそろしさw

あの人、ずっと製品を作れないって、影口を叩かれるのに、君は耐えられるか?w
2017/06/27(火) 22:13:18.16ID:Dbg4icUk
ただ、アセンブラもそうだけど、生産性以前にC言語のプログラミングは楽しいよ
2017/06/27(火) 22:19:59.43ID:FoyQGDtV
プログラミング初心者の話でしょ?
仕事に使うかって話なの?
976デフォルトの名無しさん
垢版 |
2017/06/28(水) 00:34:04.24ID:na5KYPAC
>>973
reallocぇ。。。
GUIはMFCなりに任せて、中身はCで書くとか、新人の頃はそんなだったから、開発自体は数年もかからんよ。
バグった時のメンテが大変なだけ。
2017/06/28(水) 00:58:22.89ID:CBwCtPCV
>>973
てか、Cの配列はシンタックスシュガーでありポインタ操作を分かり易く表現しているだけだ。
*(p + i) を p[i] と書けるようになっているだけ。だから添え字がオーバーしようがマイナスだろうがお構いなしにアクセスできる。
そして malloc() 等でヒープにメモリ確保してそこを配列として使うのであれば realloc() で配列の伸縮は可能。
ていうか使っていいメモリ領域を伸縮できるだけのことでそこを配列として使うかどうかはプログラマの自由。
978デフォルトの名無しさん
垢版 |
2017/06/28(水) 08:04:30.05ID:S5X3XZyd
Cの配列の重要な点として、確保した領域が本当に連続しているらしいというのがある
他の言語は、その辺がどうなってるのかわからない
979デフォルトの名無しさん
垢版 |
2017/06/28(水) 08:15:41.53ID:na5KYPAC
>>978
連続してるから配列と言う。
だから二次元配列は二次元分が一次元のメモリアドレスに並ぶが、配列の配列は中の配列は連続してて、外の配列は各配列のポインタを配列として保持する。

この辺はデータ構造だから他の言語でも実装方法に違いはあっても意味的には同じはず。
(だからPythonはわざわざリストって言ってるんじゃなかろうか)
2017/06/28(水) 08:52:01.64ID:yOCmX8s5
Javaは文系科目、Cは理系科目
981デフォルトの名無しさん
垢版 |
2017/06/28(水) 09:04:21.96ID:na5KYPAC
プログラミングそのものが理系って気はするけどな。
その中じゃCはハード寄りなので工学系か。
2017/06/28(水) 11:33:29.30ID:mVs/LpbZ
プログラム自体が理系という間違った認識
経済学部や文学部もJavaくらい必修にすればいいのに
983デフォルトの名無しさん
垢版 |
2017/06/28(水) 12:43:23.69ID:XcVisUao
C、C++は自由度が高すぎる。C、C++を使わないといけないようなところ以外では使わないのが普通。

使う場合はコーディング規約なり、なんらかのルール、制限をかけないとたいへんなことになる。
984デフォルトの名無しさん
垢版 |
2017/06/28(水) 13:26:41.42ID:d3x3J7jp
>>979
多次元配列の時にポインタ(Javaなら参照)使うかどうかは言語によって違うが、Cはポインタ使わないで塊にした配列というのも作れる。これはメモリ上で連続している。
例えば char s[3][10]; と宣言した場合、 char型10要素の配列が3要素連続している。char[10] という型が新たに作られて、それの配列になっているからだ。
なのでこれは char *s[3]; と宣言してから各要素にメモリを割り当てた時と同じように s[2][3] みたいにしてアクセスできるが、その場合は char * の配列なので扱いが違っている。
985デフォルトの名無しさん
垢版 |
2017/06/28(水) 13:29:55.62ID:d3x3J7jp
>>983
そうそう。言語でサポートされていないことを人間が工夫するなりツール使うなりして補わないと中々うまく行かない。
986デフォルトの名無しさん
垢版 |
2017/06/29(木) 17:10:53.86ID:wGgfLCtF
***SLAMO***

}

000-"F","TAP","0","1M","L","E-07"/0B"[9BA%]"^"2*73B"="0"/"9GA"
001-"Do"[[[%9DE=HUF%%!%$0B1OTU"NE"]]]<\b>
002-<<%!!!HNDEL%!0DAI@$7[1B]!0#!@>>
3000-{{1\B%HUF!0$$\%6/0Q\%6/GA[[7BU]]%9TE!%$en$}}


---

[[[C%%]]]
}

000-"5802"/"α"="0.1888412376155482"%en{
2017/06/30(金) 07:57:33.97ID:eG/sXpk5
>>870
全部で10000ならあるよ。
1ファイル1000行は役員に呼び出される。
2017/06/30(金) 08:44:51.69ID:TS0G3Eok
役員だと?!
989デフォルトの名無しさん
垢版 |
2017/06/30(金) 14:24:23.98ID:9wiTcCe3
確かに1000行でも一体何故そうなったのか気になるレベルだな。
データを中に含めたりすれば行くだろうが、外出ししなかったのは何故かとかね。
データ含んでないのになったのならそれはそれで不思議ではある。基本的な何かを間違えてたりはしないかとかな。
2017/06/30(金) 16:38:58.27ID:47Hf59hn
外出っていやらしいよね
2017/06/30(金) 16:40:17.80ID:ZsngkGDU
プロジェクトの人間が入門書レベルのソースコードしか書けない奴等ばっかだと
関数分割してるだけで不満垂れ出す
そしてそういうプロジェクトのリーダーはただ管理してるだけの上辺だけのリーダー
コネで仕事取ってるそこそこデカい会社によくあるパティーン
2017/06/30(金) 17:45:07.04ID:cIeri8pZ
>>990
中に入れた方がいやらしくないね
993デフォルトの名無しさん
垢版 |
2017/06/30(金) 21:24:54.98ID:k0YageAz
こんばんは、別言語を嗜んでいますがjavaは初心者です
とある勉強会に参加しようか迷っているのですが理由としてはIDEを使わずjavacコマンドでのコンパイルになるためです
勿論セッション内容はjavaについてですが、IDEを使わずの原始的な(失礼だったらすみません)方法でも勉強になるでしょうか?
アドバイス頂けると助かります
2017/06/30(金) 21:40:12.36ID:f3bJ3XCJ
>>993
なるなる
むしろ最初はIDE使わないで勉強したほうが本質的に理解できると思う
2017/06/30(金) 21:52:29.18ID:OVPH3JJ6
spring bootを使うことになったのですが、本買って勉強した方がいいでしょうか?
Javaのオブジェクト指向が分かるレベルです
どうやって勉強した方がいいでしょうか?
996デフォルトの名無しさん
垢版 |
2017/06/30(金) 21:58:30.29ID:QKAjGyYK
>>993
IDEのような開発のためのツールの勉強にはならないだろうが言語そのものの勉強にはなるのではないかな。
2017/06/30(金) 22:04:05.44ID:m1s+AXNT
javaの関数が戻ってこなくてタイムアウトになる
デバッグ実行で追うと関数の最後まで行くのに、呼び出し元に戻らない
何か心当たりありませんか
2017/06/30(金) 22:08:58.24ID:S0i2W9e4
>>995
掌田津耶乃が書いていたかな?
2017/06/30(金) 22:12:52.28ID:W0OUnv8/
>>997
関数の最後に原因があるんじゃないのか?
2017/06/30(金) 22:14:44.85ID:W0OUnv8/
はいよっと
Java入門・初心者質問スレ Part.4 [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1498828456/
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 87日 1時間 33分 33秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況