★★Java質問・相談スレッド139★★

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2010/07/18(日) 19:22:18
すみません、質問させてください

PHP、JavaScript、ActionScriptを習得している者なのですが、Web系は分かるのですがC/C++、Javaの区別が付きません
Apacheとかのように基本的には多くのソフトはC系で作られているのではないかと勝手に思っているのですが(WindowsはVC++が多いらしいですが)、
C系で作られたソフトとJavaで作られたソフトの具体例を教えていただけませんでしょうか?

どういうのがC系で、どういうのがJavaなのかが区別が付きません

自分が今分かっているのはC++とJavaがオブジェクト指向で、また、Javaの場合はソフト起動の為にJREのようなランタイム(?)が必要という事しか分かっていません
953デフォルトの名無しさん:2010/07/18(日) 19:32:29
>>941


public XY of(Double x, Double y){
954953:2010/07/18(日) 19:38:56
すまん。みすった。
ofメソッドをつくったらどうなるかな〜って試作してたら、ポチってしまった。

>>941
わざわざaddするたびにnewするのはよくない。
955デフォルトの名無しさん:2010/07/18(日) 19:40:06
なんで?
956デフォルトの名無しさん:2010/07/18(日) 19:43:31
>>952
C系で作られたソフト:いっぱいあるけどとりあえずlinuxとかでどうだい?
Javaで作られたソフト:jettyとか、Hudsonとか、どうだろう。
957デフォルトの名無しさん:2010/07/18(日) 19:44:36
>>955
addって普通、オブジェクトに引数を足すイメージだろ?
958デフォルトの名無しさん:2010/07/18(日) 19:54:53
BigIntegerとか、書き換え不可なインスタンスとか
演算のたびに新しいオブジェクト作って戻り値になるイメージ
959デフォルトの名無しさん:2010/07/18(日) 19:58:58
そしたらstaticにしたほうがよくないか?
{書き換え不可なインスタンス}.add(someObject)ってなんか奇妙じゃない?
960941:2010/07/18(日) 20:03:56
>>949
ありがとうございます。参考にしています。

>>953
>>941を書いた時には作っていなかったのですが
現在は + と += を分けて作っています。

// +
public XY add( XY val ){
 double x = this.x + val.x;
 double y = this.y + val.y;

 return new XY( x, y );
}

// +=
public void addAssign( XY val ){
 this.x += val.x;
 this.y += val.y;
}

961デフォルトの名無しさん:2010/07/18(日) 20:10:25
2元ベクトルぐらいでつべこべ言うな
複素数クラスなんか30分で作れるだろ
962デフォルトの名無しさん:2010/07/18(日) 20:42:40
夏だなあ
963デフォルトの名無しさん:2010/07/18(日) 20:57:43
じゃ、じゃ、じゃばで複素数ですか〜?
そんなことも出来ちゃうなんてじゃばって凄いですね!!
964デフォルトの名無しさん:2010/07/18(日) 21:00:29
Javaのフレームワークで、人気Top3を教えてください
965デフォルトの名無しさん:2010/07/18(日) 21:08:41
>>956
ask.comのあのおっちゃんの実の名前は「セバスチャン」だったんですか?
966デフォルトの名無しさん:2010/07/18(日) 21:37:09
>>963
普通にCommonsにあるよ
967デフォルトの名無しさん:2010/07/19(月) 02:54:04
Linux上で常時動かしているJavaプログラムがあるんですが、
GCのログを見るとだんだん最大ヒープサイズが小さくなってる。
FullGCの間隔はそれにつれて短くなってる。
なんで最大ヒープサイズが小さくなってるのか知ってる人いたら教えて。
Javaのverは1.5。
968デフォルトの名無しさん:2010/07/19(月) 11:14:20
try{
BufferedInputStream ois =
new BufferedInputStream(new FileInputStream("example.object"));
BufferedOutputStream oos =
new BufferedOutputStream(new FileOutputStream("example2.object"));

System.out.println("example.objectからexample2.objectにコピーします。");
int c;
while((c = ois.read()) != -1){
oos.write(c);
}
}
1Byteずつコピーする方法が分かりません。お教えください。
969デフォルトの名無しさん:2010/07/19(月) 11:18:37
>>968
oos.close() してないとか?
970デフォルトの名無しさん:2010/07/19(月) 11:34:00
>>969
全文は長いので問題のありそうな箇所のみ載せています。
ois,oosの宣言の仕方かread(),write()の使い方が悪いのか。
1Byte読み込んで1Byte書き込むにはどうすればいいでしょうか
課題には「ファイルをバイトストリームとしてコピー」とあるのですが
971デフォルトの名無しさん:2010/07/19(月) 11:38:35
>>970
>>968で問題があるの?
972デフォルトの名無しさん:2010/07/19(月) 11:41:23
1Byteずつ書き込みたいのにintでしかコピー出来ないことに疑問を持ってるの?

それともこれでやってもコンパイルができないから困ってるの?

それともコンパイルはできたけど実行時にエラーが出るの?

それとも実行時にエラーは出ないけどファイルがコピーされないの?

なんなの?
973デフォルトの名無しさん:2010/07/19(月) 11:45:17
へりくつ言ってないで早く回答してください
974デフォルトの名無しさん:2010/07/19(月) 11:45:34
>>972
実行時にエラーは出ないけどファイルがコピーされないの
975デフォルトの名無しさん:2010/07/19(月) 11:50:41
>>970
課題なら先生に聞けよ
976デフォルトの名無しさん:2010/07/19(月) 11:56:05
★★ Java の宿題ここで答えます Part 69 ★★
http://pc12.2ch.net/test/read.cgi/tech/1267796762/
977デフォルトの名無しさん:2010/07/19(月) 12:03:32
Javaのフレームワークとかでソースフォルダに作ってある
comってディレクトリってどういう意味があるの?

例えば

import com.(フレームワーク名).IO.*;

とか

慣例みたいなもん?
978デフォルトの名無しさん:2010/07/19(月) 12:10:46
     / ̄ ̄ ヽ,
    /      ',  おい、まずHPという言葉を使うのやめろ。
    {0}  /¨`ヽ {0}   HPといえばヒューレット・パッカードのことだ。
    l   ヽ._.ノ  i    それにウェブサイトのことをホームページとかHPと呼ぶな。
   ノ.   `ー'′  .', 
 _, ‐'´  \  / `ー、_
/ ' ̄`Y´ ̄`Y´ ̄`レ⌒ヽ
{ 、  ノ、    |  _,,ム,_ ノl
'い ヾ`ー〜'´ ̄__っ八 ノ
\ヽ、   ー / ー  〉
\ \`ヽ-‐'´ ̄`冖ー-く
|| \ \         \     ∧_∧
||   \ \         \  ( ´Д`)oO(オイ、なんか変なのがいるぞ)
||    \ \         \ /     ヽ
||      \ \         / |  | |
||       \ \∧_∧ (⌒\|__/ /
          ヽ(     )o(目合わせるなって)∧_∧
           /   く          \  (    )oO(うわー、なんかこっち見てるよ)
           |     \           \/    ヽ
           |    |ヽ、二⌒)       / |   | |
979デフォルトの名無しさん:2010/07/19(月) 12:21:37
>>977
慣例ではドメインネームの逆順。
sample.com ってドメイン持ってる場合は com.sample.io.ClassName みたいな名前になる。
980デフォルトの名無しさん:2010/07/19(月) 12:54:18
>>979
へーそうなんだ
勉強になった、ありがとう
981デフォルトの名無しさん:2010/07/19(月) 13:38:54
パッケージ名のcomはcommonに由来し
ドメイン名のcomはcommerceに由来する。
パッケージ名をjp.co.can○nとかjp.co.s○nyとかにしちゃってるのはバカ。
982デフォルトの名無しさん:2010/07/19(月) 13:50:28
さて埋めるか。

local.なんとかでいいじゃんとは思う。
983デフォルトの名無しさん:2010/07/19(月) 13:56:22
自分はJavaでソフト開発まではやったこと無いんで分からないんですけど、作ったソフトを間単にコピーとかできないように出来るんですか?
例えばWindowsでオープンソースのEclipseなんかは簡単にUSBなんかに入れて別のパソコンに移せますが(まぁオープンソースだから当然でしょうが)、
Javaで作られた商用とかの有料ソフトで上記のような不正にコピーされたり、転用されたりと言った点の対策が出来るのでしょうか?

C++では出来るような事は聞いたことはあるのですが
984デフォルトの名無しさん:2010/07/19(月) 14:06:30
何を言ってるんだこいつは
985デフォルトの名無しさん:2010/07/19(月) 14:13:53
商用のソフトをJavaで開発して、それが不正にコピーされないように出来ますか?って事だろ?

出来ないよ。
ネットを使ってサーバー側でソフト起動を管理出来るなら不正使用は抑えられるけど。
986デフォルトの名無しさん:2010/07/19(月) 14:25:38
クズなんかどでもいい
じすれどこ?
987デフォルトの名無しさん:2010/07/19(月) 16:08:50
>>983
プロダクトキーいれないと起動できなくすればいんじゃね?
988デフォルトの名無しさん:2010/07/19(月) 17:10:43
>>983
JavaはWebアプリが多いぞ
989デフォルトの名無しさん:2010/07/19(月) 19:02:12
そんなこと聞いてません
990デフォルトの名無しさん:2010/07/19(月) 21:48:06
基本的な質問になると思うのですが、とあるプログラムのコードを理解しないといけなく、何から手をつければいいのかあたふたしていました。
とりあえずJAVAの入門書を一通り読み、その後デバッガ?とかいうのを使ってプログラムを1行1行読み進めようと考えました。

いまはとりあえず入門的な内容のプログラムに対してデバッガを使ってデバッガの使い方を覚えています。
そこでプログラムを普通に実行はできるのですが、デバッガで1行1行ステップインで行ったところ途中で
[ローカル変数は使用不可]ととある行でなり、ステップイン、オーバー、リターン すべて選べなくなりました。

こういった時はどうやれば次の行へ進むのでしょうか?
実行てきたので致命的なミスというのは無い(初歩的プログラムなのでないはず・・・))ということだと思うのですが。
Eclipseのスレのないようなのでこちらでお聞き致します。お願いします。 環境:Eclipse
991デフォルトの名無しさん:2010/07/19(月) 21:49:08
>Eclipseのスレのないようなので
Eclipseのスレが無いようなので
992デフォルトの名無しさん:2010/07/19(月) 22:28:51
>>990
デバッグウィンドウに呼び出し履歴があるんで、自分の書いたコード部分をさがす。
その行をクリックすると該当ソースが出て、白い矢印で呼び出している位置が分かる。
その位置以降にブレークポイント仕掛けて再開(F8)する。
するとブレークポイントで止まる。

原因は多分、ソースコードの無い部分までステップインしていったことじゃないかな?
993デフォルトの名無しさん:2010/07/19(月) 22:36:30
>>992
回答頂き有難うございます。
完全に勘違いをしておりdouble java.util.Scanner.nextDouble()で単純に入力受付待機している為でした。
994デフォルトの名無しさん:2010/07/20(火) 00:13:06
エクリプス人気ないのねw

熟め。
995デフォルトの名無しさん:2010/07/20(火) 01:37:23
( ´・ω・`)だろ?
996デフォルトの名無しさん:2010/07/20(火) 03:56:43
じすれ?
997デフォルトの名無しさん:2010/07/20(火) 04:42:22
ランダムの確立で唐突に>>1-1000までのリモホが表示されたりする次世代スレッドの事
多数意見演出マッチポンプとかの大技繰り出してたりすると後で恥かしくなったりする
998デフォルトの名無しさん:2010/07/20(火) 10:48:42
そこは高度な世論誘導システムが展開されていると考えるべきだ。


ウメ。
999デフォルトの名無しさん:2010/07/20(火) 15:35:19
 V V
(´・ω・`) うさちゃんピース
1000デフォルトの名無しさん:2010/07/20(火) 15:36:17
 V V
(´・ω・`) うさちゃんピース
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。