トップページ⇒tech
1002コメント343KB

Java入門・初心者質問スレ [無断転載禁止]©5ch.io

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん2016/05/12(木) 05:18:33.40ID:nzHoBPh8
Java初心者のためのスレッドです。
0855デフォルトの名無しさん2016/10/28(金) 06:20:08.37ID:ZSEeTNr3
ジェネリクスなんですが、
List<? super A> list = new ArrayList<A>();
のようにsuperで型宣言した場合、
list.get(); した時に全部Object型になります。
? の部分にどんな型が来ても互換性が取れるようにってことだと思うんですが、
それなら極力 super なんて使わずに、
List<A> list = new ArrayList<A>();
にするほうがいいと思うんですが、ジェネリクスでの<? super *>の活用しどころってどういうケースでしょうか?
0856デフォルトの名無しさん2016/10/28(金) 06:43:40.93ID:l/3+OTVv
なんでextendsでなくsuper…
0857デフォルトの名無しさん2016/10/28(金) 12:17:18.19ID:0c0ESAbt
>>855
出力のみに使う型はextends
入力のみに使う型はsuper
入出力両方で使う型には変性を付けない
0858デフォルトの名無しさん2016/10/28(金) 14:29:30.59ID:dom53pU3
utilクラスはすべてstaticでもいいでしょうか?
例えばDBにアクセスするutilなどです。
08598532016/10/28(金) 16:02:47.03ID:wDKSwFbg
>>854
ネット環境が無いんです。
0860デフォルトの名無しさん2016/10/28(金) 16:21:15.04ID:GNbMn5al
ネット環境がないとネットの掲示板に書き込んでる矛盾
08618592016/10/28(金) 18:22:32.29ID:wDKSwFbg
>>860
ガラプーって表示されてないですかね?

パソコンがオフラインです。携帯から書き込んでます。ガラケーです。
0862デフォルトの名無しさん2016/10/28(金) 21:40:52.11ID:EqqPNtKi
プログラミング初心者でやさしいjavaとネットの講座で独学でやっているのですが、java se8 silverを受けてみようと思うのですが、
黒本は初心者ならbronzeからやったほうがいいのでしょうか?
0863デフォルトの名無しさん2016/10/29(土) 02:44:29.93ID:4FyVr6lP
diしたいのですが
@resouceでインジェクトされないんです。どうしてですか?
0864デフォルトの名無しさん2016/10/29(土) 03:51:39.00ID:qP5vgiL/
>>862
実際のSilverの問題は、わざとか難しい部分を繰り返し聞いてくるので簡単ではありませんよ。

Bronzeから受けてください。

国家試験と違って出題範囲をまんべんなく聞いてくる試験ではないのと、試験が短いのでSilverはあせります。
0865デフォルトの名無しさん2016/10/29(土) 04:39:13.23ID:29FSllRn
個人的にはブロンズのほうが時間がなくて怖かった(たしか65分で60問?)
ブロンズを71点でギリギリ取って3日後にシルバー97点だった。
0866デフォルトの名無しさん2016/10/29(土) 09:40:34.45ID:JrxI+Gxs
>>865
変態か、簡単な問題セットに当たったんだろうな。
0867デフォルトの名無しさん2016/10/29(土) 17:56:15.23ID:ePGlEX2J
>>859
話の繋がりがわからない。
なんでプログラムを複数のパッケージに分ける話からネット環境の話に飛ぶ?
パッケージに分けるのにネット関係なかろう。
08688592016/10/29(土) 20:30:31.50ID:TXDQcz+f
>>867
上で、実際にやってみたら、と提案されたので、ネット環境が無いのでそれは出来ないんです、と伝えたわけです…。
0869デフォルトの名無しさん2016/10/29(土) 21:25:41.35ID:tec52ry+
Javaを勉強し始めて2ヶ月ほどの初心者です
気になることがあったので質問させていただきます

参考書には親クラスの型を使って子クラスのインスタンスを参照する参照変数を宣言できると
書いてあったのですが、それをするメリットって何なんでしょう?

例えばHumanクラスを親とするChildクラスがあるとして、
Child child = new Child();
ではなく
Human human = new Child();
とするメリットです

文法上そういうことができるのは理解しましたが、それをすることが何に役立つのかがわからなくて…

まだ自分はそこを気にかけれるレベルではないのだと思いますが、回答いただけるとありがたいです
0870デフォルトの名無しさん2016/10/29(土) 21:33:58.43ID:Xtl4N18Y
2ヶ月もかけてポリモーフィズムにも届いてないんか
サンデープログラミング?
0871デフォルトの名無しさん2016/10/29(土) 21:38:47.67ID:tec52ry+
>>870
仕事終わって帰宅してからと休日に細々と勉強してます
元々頭の出来も良くなかったので面白い反面パンクしそうです
0872デフォルトの名無しさん2016/10/29(土) 22:07:22.05ID:P6pOx9h1
>>869
抽象化を上げることができて嬉しい
ボンヤリさせとくメリットってのがあるじゃん?
細かいとこまで興味がないっつうか
細かいとこまで感心持ちたくないっつうか

抽象化を一番下げた状態が
Child child = new Child();
の形だよね
interface I {}
class A implements I {}
class B extends A {}
class C extends B {}
class D extends C {}
のとき、
C c = new C();より
B b = new C();より
A a = new C();より
I i = new C();のほうが抽象化されてるよね

こうやって、好きなだけ抽象度を上げていくことができる
そしてこれの何がうれしいのか、については自分で考えてほしいw
0873デフォルトの名無しさん2016/10/29(土) 22:09:15.81ID:P6pOx9h1
一行目修正:
抽象度を上げることができて嬉しい

これ削除:
class D extends C {}
0874デフォルトの名無しさん2016/10/29(土) 22:31:47.93ID:i+DlxK4w
関数の引数とかクラスのメンバしたときに意味がある
ローカル変数を抽象化するメリットはあんまりないぞ
0875デフォルトの名無しさん2016/10/29(土) 22:33:50.82ID:i+DlxK4w
>自分で考えてほしいw

自分もわからんっていうならともかく
長々と説教たれてしまいにこんな答えが返ってきたら
もう二度と聞きにいきたくない…
0876デフォルトの名無しさん2016/10/29(土) 22:48:42.45ID:tec52ry+
>>872
ありがとうございます
とりあえず今の自分の知識だと理解できないレベルの話だということはわかりました
一旦脇に置いて別の部分を進めていくことにします

>>874
ありがとうございます
応用が出来るようになればメリットが出てくるのですね、スッキリしました
使いこなせるように精進します
いえ、分不相応な質問だったことがわかっただけでも収穫でした
また何かあったら質問させていただきます
0877デフォルトの名無しさん2016/10/30(日) 00:12:25.83ID:ekX97W9d
>>869
例えば、配列作りたいとき、
Human[]にしとけば、
ChildもHumanも、他の何かしらのHumanの子クラスも入れとけるじゃん。
実際の処理はChildやら他の子クラス側に書けば、子クラスの追加とか削除とか修正だけで、他の部分に影響を与える事なく機能追加や修正できるっしょ。
同じ道理で、new Childするのをやめて、
static Human createInstance(なんやらかんやら)
と、HumanとかHumanFactortなんかに子クラス作って返すメソッド書けば、どのインスタンスが妥当かも考え無くて済むじゃん。
って事。
0878デフォルトの名無しさん2016/10/30(日) 00:20:54.82ID:3d0adPIb
その理屈だと全部Object[]にしとけで終わってしまう
なんていうかな、あの手の本はほんとにロクなことを教えないよね
0879デフォルトの名無しさん2016/10/30(日) 00:54:27.06ID:rQxX2zI2
まず「スッキリわかる Java入門 第2版、2014」を読んで、オブジェクト指向をきっちりと勉強する

継承は、ゲームで使う。
例えば、怪物クラスの子クラスに、毒マタンゴ・ゾンビドラゴンがある時

怪物配列に、毒マタンゴA・B、ゾンビドラゴンA を入れる

for (怪物 monster: 怪物配列){
怪物.攻撃
}

こういうように、個々の種別ではなく、抽象化して怪物として扱った方が、
簡単に書けるし、また仕様変更にも強い

例えば、骸骨剣士A を追加しても、ソースコードを変更する必要がない。
DB内の怪物マスタを、修正すればよいだけ

つまり、オブジェクト指向を使うと、型による分岐が無くなり、ソースコードの変更に強くなる。
もしソースコード内に、型による分岐があれば、抽象化してそれを消すべき
0880デフォルトの名無しさん2016/10/30(日) 01:07:46.99ID:t4ilsIoO
先輩の険悪な人間関係を取り持ち
別のところから答えも引き出す

新人にしては恐ろしい子…
08818682016/10/30(日) 02:58:58.22ID:tifMCILv
そして出来たら>>868にも触れてやって下さい。
0882デフォルトの名無しさん2016/10/30(日) 09:27:55.22ID:uCf20103
>>881
アロハー

オフラインでも試せるんじゃ?
0883デフォルトの名無しさん2016/10/30(日) 14:41:04.36ID:7WMxM/JH
抽象クラスのインスタンスは作れないって思ってたんですが、明示的に作る事が出来ないだけで、実際は作られてるんすか?
こうやって抽象クラスのサブクラスをインスタンス化した時、"AbClass"は出力されます。
public class Main extends AbClass{
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
new Main();
}
}

abstract class AbClass{
public AbClass(){
System.out.println("AbClass");
}
}

javapしてみても、
abstract class main.AbClass
minor version: 0
major version: 52
flags: ACC_SUPER, ACC_ABSTRACT
っていう、ACC_ABSTRACTフラグがついてます。
0884デフォルトの名無しさん2016/10/30(日) 15:35:58.53ID:fTcBbX+E
>>883
その AbClass ってメソッドに一つも abstract がないよな。
だから Main クラスに継承した段階で全てのメソッドが定義された(元からそうだけど、これで完全にabstractクラスではなくなる)ということだと思うが。
0885デフォルトの名無しさん2016/10/30(日) 15:37:31.85ID:fTcBbX+E
>>868
なんで実際にやるのにネット環境が必要なんだよ。
複数のパッケージに分けるだけならネットに繋がってなくてもできる、てかネット関係ないだろう。
0886デフォルトの名無しさん2016/10/30(日) 15:48:29.79ID:zpgPT2nV
>>885
だったら回線切ってやってみろや
結果を書け、それで解決するだろ
0887デフォルトの名無しさん2016/10/30(日) 15:49:41.97ID:zpgPT2nV
ネット関係ないと言い切った御仁がおられるのでやってもらいましょう
いったい何の作業をするのか見ものですね
0888デフォルトの名無しさん2016/10/30(日) 16:13:14.82ID:asmRMmwq
>>885
887が言っている複数の「パッケージに分ける」というフレーズは
我々の知っている作業とは違う作業を指していると思われる

そうでないとここまで自信満々な理由が分からん
俺だったら1週間はこのスレ開かないわ
0889デフォルトの名無しさん2016/10/30(日) 16:13:21.76ID:qgjs7ee5
やばい、第五章で頭こんがらがってきた…
0890881(868)2016/10/30(日) 18:37:40.53ID:tifMCILv
>>882 >>885
ネットに繋がってないのでJDKやエクリプスをダウンロード出来ないんです…。
0891デフォルトの名無しさん2016/10/30(日) 19:53:13.17ID:uaaD1pSq
実行できもしないのになぜJavaスレにいる…
それならパッケージを分ける分けないなんて気にする必要ないだろ
教えたところで実行できないんだから

学校や職場に行けば実行環境があるってんなら、そこで試せ
0892デフォルトの名無しさん2016/10/30(日) 19:59:47.72ID:zpgPT2nV
>>891
偉そうなくせに大したこといってなくて草
わからないなら黙ってろよ雑魚
0893デフォルトの名無しさん2016/10/30(日) 20:00:27.65ID:zpgPT2nV
>>890
俺は応援してるぞ、ここに巣くうサルレベルの知能の雑魚どもに負けるな
0894デフォルトの名無しさん2016/10/30(日) 20:15:47.63ID:OuHrL0RN
>>891みたいなの一番いらんよなw
0895デフォルトの名無しさん2016/10/30(日) 20:50:51.91ID:asmRMmwq
応援するだけで答えませんけどね:)
0896デフォルトの名無しさん2016/10/30(日) 20:53:31.00ID:zpgPT2nV
>>895
はい雑魚2匹目
0897デフォルトの名無しさん2016/10/30(日) 20:54:11.88ID:zpgPT2nV
俺が餌になる、頑張れ
0898デフォルトの名無しさん2016/10/30(日) 20:59:43.05ID:Z+Cepnas
>>886
複数のパッケージに分けるだけなら簡単だろうがよ。
先頭に packge とパッケージ名入れるだけ。使う側はそのまま指定するか import するだけ。

てか、なんでネット必要なんだ?お前は何を想像しながら「複数のパッケージに分ける」と言っている?
0899デフォルトの名無しさん2016/10/30(日) 21:06:46.67ID:zpgPT2nV
>>898
簡単ならさっさとやれよ、結果をレポートしろ
簡単なんだろできるよな
0900デフォルトの名無しさん2016/10/30(日) 21:07:32.67ID:Z+Cepnas
>>890
あ、JDKのダウンロードができないって話か。

どこかダウンロードできる環境でダウンロードしてUSBメモリにでも入れて持ち帰れば?

まあでもネット環境は何とかして用意した方がいいと思うよ。
携帯をテザリングもできるスマホに変えて無線LAN接続とか、回線増やさずにネットに繋げる方法もあるよ。
契約内容に気を付けないと高くなるかも知れないけど。(あとPCに無線LANないとダメだな。有線でテザリングできるならなんとかなるかも知れないけど)
0901デフォルトの名無しさん2016/10/30(日) 21:09:05.12ID:zpgPT2nV
>>900
お前が自分でやれば済む話だろうが、横着すんな
0902デフォルトの名無しさん2016/10/30(日) 21:10:03.72ID:Z+Cepnas
>>899
あたりまえだろ。おまえバカか?てか大丈夫か?
0903デフォルトの名無しさん2016/10/30(日) 21:11:20.23ID:Z+Cepnas
>>901
お大事に。
0904デフォルトの名無しさん2016/10/30(日) 21:14:51.93ID:zpgPT2nV
なんだ結局できないのか
0905デフォルトの名無しさん2016/10/30(日) 21:25:06.45ID:+8NL+Ds1
>>891
0906デフォルトの名無しさん2016/10/30(日) 21:28:24.47ID:+8NL+Ds1
あ、途中で押しちゃった
0907デフォルトの名無しさん2016/10/30(日) 22:04:29.62ID:asmRMmwq
なんか怒りを買ってしまったみたいですね
草
09088902016/10/31(月) 00:47:32.32ID:G6HLyhYb
アドバイスをして頂いた方ありがとうございました。

ネットが繋がるまで本(スッキリJava)で独習しています。
前述のパッケージの分割コンパイルの項目が読んでて理解できなかったので質問させて貰いました。
0909デフォルトの名無しさん2016/10/31(月) 02:15:35.73ID:sJgNRili
MVCのWebアプリについて教えて下さい。
リクエスト毎にインスタンスを生成するControllerクラスがあります。
ControllerクラスにServiceクラスをインスタンス変数として、DIコンテナでインジェクトします。
この際に、DIのライフサイクルをシングルトンにします。

1回目のリクエストのControllerクラスでは indexメソッド内でserviceのメソッドがメソッド内で呼ばれるとします。
2回目にリクエストでもController.indexメソッドが呼ばれます。
この時、serviceクラスはnullでしょうか?
それとも1回目のControllerクラスでDIしたインスタンスが2回目も使われるのでしょうか?
09109082016/10/31(月) 02:18:51.56ID:G6HLyhYb
何か俺が争いの火種になってしまっているのかな?
そうだとしたら不快な思いをした方すいません。

持っているパソコンのOSがXPなんでネットに繋げないんです。新しいOSを入れる容量も無いんで新しく買おうと思っています。
0911デフォルトの名無しさん2016/10/31(月) 07:34:49.69ID:sEDt+ZDb
>>909
同じインスタンスがDIされる
0912デフォルトの名無しさん2016/10/31(月) 08:38:04.45ID:r/gQTNbf
>>910
恒例の「外野が勝手に騒いでるだけ」だから気にしなくていいよ
0913デフォルトの名無しさん2016/10/31(月) 08:52:18.47ID:X5kXOLud
せやな
0914デフォルトの名無しさん2016/10/31(月) 10:01:24.16ID:3MWuUQcB
>>910
Linux 入れればいいのでは?
Ubuntu とか本屋でDVD付きで売ってたりするからインストール自体はネットなしでもできる。
09159092016/10/31(月) 12:01:32.93ID:sJgNRili
>>911
ありがとうございます。もう1つ質問させてください。
ではServletとDIコンテナを併用して使う場合のケースです。
サーブレットクラスのインスタンス変数にserviceクラスを持つとします。
通常だとServletはシングルトンなのでクラスのインスタンス変数はスレッドセーフではないですが、
DIコンテナの設定をリクエスト毎にした場合は、
1回目、2回目、3回目・・・と
アクセスされるたび、serviceにインスタンスがDIされますか?
それとも呼び出し元のクラスが新たにインスタンス生成されないので同じインスタンスが共有されますか?
0916デフォルトの名無しさん2016/10/31(月) 20:08:38.55ID:RYpBavAY
int resurt

assertThat(resurt, is(not(0));

resurtの値には0以上の値がランダムに代入される時、0以外をtrueで返す式は上記であってますか?
0917デフォルトの名無しさん2016/10/31(月) 20:53:46.43ID:p7TPitCz
>>915
よくわかんねーけど、どのインスタンスがDIされるかなんて制御できないよ。
根本から理解が間違ってる
0918デフォルトの名無しさん2016/10/31(月) 21:34:08.02ID:sJgNRili
>>917
どういうことですか?
09199102016/11/01(火) 00:50:00.31ID:68tlbbHF
>>912 >>914
ありがとうございます。

Linuxは大学の時にやって苦戦したので、Windowsでいきたいんです…。
0920デフォルトの名無しさん2016/11/01(火) 00:56:10.41ID:FUOnuiX2
ネカフェでインストーラだけダウンロードすればいいんでないの?
09219192016/11/01(火) 01:41:24.27ID:68tlbbHF
>>920
地方在住なので近くにネカフェ無いです。
まあもうじき新しいパソコン買うので…。
09229192016/11/01(火) 01:41:53.51ID:68tlbbHF
>>920
地方在住なので近くにネカフェ無いです。
まあもうじき新しいパソコン買うので…。
0923デフォルトの名無しさん2016/11/01(火) 01:43:14.40ID:68tlbbHF
連続書き込み失礼しました。
0924デフォルトの名無しさん2016/11/01(火) 02:50:43.94ID:lWEkG1Wt
>>916
合っている。実行して確かめろ

それに、resurtは、result だろ
0925デフォルトの名無しさん2016/11/01(火) 07:21:55.41ID:YKGFAfzS
>>918
そもそも、どういう事がしたくてそうしてるの?
あと、そこまでいくとDIコンテナにもよるでしょ。
0926デフォルトの名無しさん2016/11/01(火) 09:11:02.25ID:8QttcA43
>>919
一応インストールしなくてもCDかDVDでブートして動くようなのあるけどね。インストーラでそういう起動させるかどうか選べる(確かUbuntuもそういう風になってた)。
なので、Windows用の何かをダウンロードしたいだけだとしてもそうやって起動後にUSBメモリ挿してそこにダウンロードするという方法がある。
するとLinuxインストールせずに使えてネカフェに行く必要もなくなる。

まあ、XPでもセキュリティリスク無視するならそのままできるだろうけどね。(Oracleとか、特定のサイトにしか行かないなら多分大丈夫だとは思うが)
09279192016/11/02(水) 00:33:40.21ID:T1qBuIQL
>>926
忙しくてレスが遅くなってしまいすいません。

丁寧にありがとうございました。

技術評論社とかの本はCD-ROMが付いてますね。
俺が買った本はダウンロードを推奨するものでした。
0928デフォルトの名無しさん2016/11/02(水) 08:12:21.70ID:JaTBDkBi
今日日こんな質問があるとはな
0929デフォルトの名無しさん2016/11/02(水) 16:46:07.89ID:KtthnrOq
Windows2000全盛期の質問だよね。
0930デフォルトの名無しさん2016/11/02(水) 18:02:47.63ID:WL73ssGd
超貧困JKって奴だろ
0931デフォルトの名無しさん2016/11/02(水) 19:04:14.21ID:6QvosKf/
キーボードだけ買ってタイピング練習ってか?
0932デフォルトの名無しさん2016/11/02(水) 22:16:59.49ID:QrC60bZw
俺のキーボード。
http://i.imgur.com/RuyhzEA.jpg
なんとこれだけで計算もできる。
0933デフォルトの名無しさん2016/11/03(木) 01:58:29.25ID:8VAyqA8t
ObjectクラスのhashCode()ですが、どういう判定方法をしているのでしょうか?
equals()でfalseとなるインスタンス同士(パラメータは一緒でインスタンスが違う)でも、同じ値が返ってきます。
0934デフォルトの名無しさん2016/11/03(木) 02:52:13.45ID:9qfKx4O0
>>933
ObjectクラスのhashCode()はメモリのアドレスだよ

> equals()でfalseとなるインスタンス同士(パラメータは一緒でインスタンスが違う)

これはObjectクラスではないのじゃないかな
パラメータからハッシュ値を計算するようにオーバライドしてるんでしょ
0935デフォルトの名無しさん2016/11/03(木) 03:23:17.42ID:0y7uoQTe
ジャパニーズオールドアナログコンピューターキーボード
0936デフォルトの名無しさん2016/11/03(木) 03:54:34.50ID:QFrf3CuS
mainクラスをコンパイルすると全パッケージコンパイルに成功して実行できるのに
個別にコンパイルするとサブパッケージが因数の受け渡しで別クラスを認識できずシンボルを見つけられませんエラーが出るのは何が考えられるでしょうか
構成は
main→パッケージ→a
       └→b
でmainがabの内容を表示しbが再びaの内容を表示するものです
bを個別にコンパイルするとaのメソッドを参照できず、指定したクラス名を変数名と勘違いしてる感じです
0937デフォルトの名無しさん2016/11/03(木) 05:16:28.40ID:TDi/4+oI
bファイル内で、import a
と、していないから

mainファイル内では、
import a
import b

の順番で読み込まれているから、bファイル内で、aのクラスを使えていたとか?
まあ、import宣言する順番に、依存しないかも知れないけど。
漏れは、知らない
0938デフォルトの名無しさん2016/11/03(木) 14:20:39.76ID:QFrf3CuS
>>936
ですが解決したかもしれないです
環境変数をHPを参考にしてPATHと設定したのですがCLASSPATHとすべきだったのかもしれないと
環境変数の違いなんて全くわからないけど試してみます
0939デフォルトの名無しさん2016/11/03(木) 20:13:39.41ID:QFrf3CuS
駄目だどうしても別のプログラムにしても別パッケージを参照しようとするとをパッケージ〜は存在しませんもう泣けるつらい
0940デフォルトの名無しさん2016/11/03(木) 21:21:18.02ID:QFrf3CuS
どなたか助けてください、すいません…
スッキリの例題出申し訳ないですがこのプログラムに限らずパッケージをまたごうとするとパッケージやクラスが発見できないエラーが出ます
CLASSPATHを WORK や Calc や calcapp.main に設定しても駄目
PATHは設定してjavaもjavacも通ります


http://i.imgur.com/HIH7mVF.jpg
0941デフォルトの名無しさん2016/11/03(木) 22:08:01.44ID:CtrzsuW8
例題にはnotepad.exeとコマンドプロンプトを使えって書いてあるのか?
書いてあるなら、そこまでに説明されていることの何かが欠けてるんだろうよ
書いてないなら、書いてある方法で問題は解けよ
0942デフォルトの名無しさん2016/11/03(木) 22:08:26.76ID:kVn2ZEfC
質問させてください。
これまでC言語を学んで趣味としてプログラミングをやっていましたが、
ひょんなことからJAVA Black bookを入手することになり、いい機会なので新しい風を入れるつもりで
この本でJAVAを学びはじめました。
しかしながら、この本が2000年9月出版で、もしかしたら今と大きく変わった部分があるのではと
心配しています。
そのあたり、ご存知の方にご教示いただけたら幸いです。
0943デフォルトの名無しさん2016/11/03(木) 22:17:14.22ID:CtrzsuW8
1.3時代の本か
少なくとも1.6以降じゃないと、予約語を覚える以外の役には立たない
0944デフォルトの名無しさん2016/11/03(木) 22:21:30.80ID:QFrf3CuS
>>941
メモ帳とコマンドプロントを使うって書いてたんでそれが一般的かと思ってたんですが違うんですか?
どっちにしてもこれが通らないのが納得行かないですが
0945デフォルトの名無しさん2016/11/03(木) 22:36:56.93ID:g7gHuu9b
>>940
https://docs.oracle.com/javase/jp/6/technotes/tools/windows/javac.html

CalcLogicを先にコンパイルして、クラスパスにCalclogic.classファイルの場所を設定するか、
いっこ上のフォルダに上がって、クラスを2つ同時に指定するかで行けんか
0946デフォルトの名無しさん2016/11/03(木) 22:37:38.25ID:g7gHuu9b
あと、PATHとCLASSPATH混同しとるな
0947デフォルトの名無しさん2016/11/03(木) 22:47:12.50ID:kVn2ZEfC
>>943
あちゃ〜そんなに変わってますか
JAVAがC言語学習者にとって学びやすい言語であることは今の本のさわりでわかったので、
改めて別の本を買ってみることにします。
09489472016/11/03(木) 22:47:37.54ID:kVn2ZEfC
ありがとうございました。
0949デフォルトの名無しさん2016/11/03(木) 23:32:50.63ID:QFrf3CuS
>>945
PATHはjavaの定義のため、CLASSPATHはクラス指定のためと分かったんですが一つ目の方法では駄目でした
二つ目のクラスを二つ同時に指定するというのが分からないのですが試しにcalcapp.mainとcalcapp.logicsにクラスパスを設定してCalcディレクトリでjavac Calc.java
→Calcファイルが見つからない
calcapp.mainディレクトリでjavac Calc.java
calcapp.logicsが存在しない
複雑な構成のプログラムではないし、何らかの設定でつまづいてる気がするんですが暗中模索がこんなにしんどいとはと実感してます
0950デフォルトの名無しさん2016/11/03(木) 23:37:47.60ID:x/s1yBiE
パッケージとディレクトリの対応は「calcapp.main」という名前よディレクトリじゃなく「clacapp¥main」だぞ

calcappディレクトリの下にmainディレクトリ作らないと
0951デフォルトの名無しさん2016/11/03(木) 23:39:47.53ID:x/s1yBiE
calcapp¥mainとcalcapp¥logicsの二つのディレクトリを作れば解決するはず
0952デフォルトの名無しさん2016/11/03(木) 23:58:11.81ID:g7gHuu9b
あw
0953デフォルトの名無しさん2016/11/04(金) 00:10:29.41ID:9L4bsxNE
皆さんにアドバイス頂いていろいろやるも通らず…
その外こんなのも駄目で
javaのバージョンが良くないのか自分を疑うべきなのか

http://i.imgur.com/Ehiljd7.jpg
0954デフォルトの名無しさん2016/11/04(金) 00:12:46.15ID:tO492IJ7
と思ったけど
おい普通にいけたぞ

xxx\Calc> C:\Program Files\Java\jdk1.8.0_92\bin\javac" calcapp.main\Calc.java calcapp.logics\CalcLogics.java
レス数が950を超えています。1000を超えると書き込みができなくなります。