トップページ⇒tech
1001コメント323KB

【初心者・ネタ】Java質問・相談スレ【大歓迎】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
さーじゃんじゃん質問しよう。
お前らとりあえずがんがってください
そして誰か教えてください。

関連スレ
初心者無視! Java相談室 その9
http://pc.2ch.net/test/read.cgi/tech/1021555964/
調べようとする優秀な奴は↑へどうぞ。

0052デフォルトの名無しさんNGNG
>>49
そう「呼び出し規約」だけを定義したクラス (?)。
005347NGNG
>>51
そう。TextAreaと断言はできないよね。
0054デフォルトの名無しさんNGNG
>>50
setEnabled() ?
コレで何か変わるんですか?
マジです。煽りじゃないです。
0055デフォルトの名無しさんNGNG
18 はダブルバッファをぐぐってます。しばらくお待ちください。
0056デフォルトの名無しさんNGNG
ある程度C++を覚えたのでJAVAを始めようかと思っているのですが、
C++で使えてJAVAで使えないもの、逆にJAVAで使えてC++に無いものがあったら
教えて頂けませんか?
0057デフォルトの名無しさんNGNG
>>56
多すぎる。
0058デフォルトの名無しさんNGNG
>>49
abstractなクラスはどうなるんだろう・・・
0059デフォルトの名無しさんNGNG
>>56
具体的に聞いてくれ
これは出来ないんですか?とか
これは出来ますか?とか
0060デフォルトの名無しさんNGNG
インターフェースはクラスじゃねーよ。
0061デフォルトの名無しさんNGNG
>>49
インターフェイスってのは、クラスの型だけを定義した物と考えるべし。
型ってのは、外身と言い換えてもいいよ。

0062デフォルトの名無しさんNGNG
【C++ で使えて Java で使えないもの】
多重継承、inline 関数、プリプロセッサディレクティブ (マクロ)、
演算子オーバーロード、インラインアセンブリ、デストラクタ起動の
明示的なタイミング、テンプレート機能 (JDK1.5で対応?)、明示的な
ヒープの割り当てと開放

【Java で使えて C++ で使えないもの】(最近使ってないから間違ってるかも)
synchronized 構文、finally ブロック、クラス名からインスタンスの生成、
安全なダウンキャスト、オブジェクトシリアライゼイション、ラベル付き
ブロック抜け、notify/wait のシグナル

こんな感じ? ライブラリレベルになるとたくさんある。
ちなみに friend クラスや多重継承と同じことは inner クラス使えば
大抵出来る。
0063デフォルトの名無しさんNGNG
>>62
>明示的なヒープの割り当てと開放

使えないって言うとまるで欠点みたいに聞こえるが。

逆にC++で使えないものにGCが入ってないな。
0064デフォルトの名無しさんNGNG
祭りの予感ワショーイ
0065デフォルトの名無しさんNGNG
>>63
そうだな。思いついたままに書いたから。
0066デフォルトの名無しさんNGNG
C++に無いthread関係ってsynchronized, wait, notifyだけ?
そもそもC++に標準のthread機能ってあったっけ?
0067デフォルトの名無しさんNGNG
レスありがとうございます。
今、思いつくところでは
ポインタが無い代わりに参照みたいなものを使うのか?
テンプレートはあるのか?多重定義はあるのか?
メモリの割り当て、解放はどうするのか?
ストリング型はあるのか?
ってところです。
JAVAは知識もろくにないので、かなり馬鹿げた質問かもしれませんが
皆さん、よろしくお願いします。
0068デフォルトの名無しさんNGNG
>>66
ANSI C++ レベルの標準でスレッドという概念は無い。
POSIX とかあるけど、printf 等の標準関数はスレッドセーフでは
なかった (今のは知らん)。
0069初心者 ◆3UmwhFqY NGNG
>>61
なるほど。インターフェイスって
おかなくてもできるような気がするのは
漏れだけですか?別のクラスに
詰め込んじゃえば・・いってることDQNですか?
0070デフォルトの名無しさんNGNG
Javaでポインタを数値として演算することはできないし、
配列の型がポインタだったりもしないが、
Javaの参照はC++の「インスタンスへのポインタ」とほぼ
同じだと思って良い。
0071デフォルトの名無しさんNGNG
>>69
まぁ Java やってればいずれポリモーフィズムの概念を理解しなきゃ
いけない時がやってくる。そんときになんないとインターフェースの
存在価値なんて分からないかも。

# 類似で未実装部分をでっち上げる時にも使うが。
0072デフォルトの名無しさんNGNG
>>69
インターフェースはクラスより重要な概念だ。
ある程度大きなプログラムを設計したら、まずインターフェースが決まる。
クラスの内部表現はその後。

実装の継承は、最後にやる一種の最適化だと思ってよい。
あんまり重視しない方が良い。
0073デフォルトの名無しさんNGNG
>>69
利点その1:
大規模開発になると、クラスやメソッドの機能は決まっているけど、実装は
まだ出来ていない開発フェーズっていうのはあるのよ。そういうときに、
インターフェイスだけ定義しておいて実装を別の人に投げたりできるのよ。

利点その2:
ポリモルフィズムの基本概念です。こっちはOOPを勉強してくれ。
0074デフォルトの名無しさんNGNG
POSIX pthreadはC++じゃ使えないんじゃないかな…
だって、tryやthrowがどうなるか、どこにも定義ないでしょ。
処理系作成者も考慮してないと思う。
0075デフォルトの名無しさんNGNG
むしろ本読んだだけでインターフェースの利点を理解できるのは
よっぽどの C++ の経験者か、宗教関係者かのどっちか。
0076デフォルトの名無しさんNGNG
>>74
別に、使うだけならできるんじゃないの。
綺麗にラップしてあげないと管理が大変そうだけど。
0077初心者 ◆3UmwhFqY NGNG
>71-73
レスありがとうございます。
つまり初心者でも作れるようなプログラムなら
インタフェイスを使わなくても強引にできるけど
大きなプログラムになれば重要になってくるって
ことっすね。ゆっくり勉強していきます

ホンと勉強になるYO!
0078デフォルトの名無しさんNGNG
C++と一番違うのはライブラリだろ。
GUI, マルチメディア, セキュリティなどがJavaだと標準で入っている。
0079デフォルトの名無しさんNGNG
>>78
「Java」と言う言葉が
Java言語仕様、Java実行環境、APIライブラリ
の全てを指すのに対して、C++っていうのは
C++の言語仕様(とコンパイラ)だけだからねえ。
0080デフォルトの名無しさんNGNG
>>76
いやー難しいんじゃねえか?
例えば、STLってちゃんと同時アクセスをロックしてくれる?
スレッドの中でcatchしてない例外投げたら何が起る?
0081デフォルトの名無しさんNGNG
で正直
JavaとC++将来があるのはどっちよ?
0082デフォルトの名無しさんNGNG
>>79
で、ストリームは言語仕様?コンパイラ?
0083デフォルトの名無しさんNGNG
>>79
STLはANSI/ISO規格だぞ。
0084デフォルトの名無しさんNGNG
>>81
学校でどっち教えてるところが多いか見れば明らか。
授業でC++教えてるところは正直いってしらん。
0085 NGNG
【google 先生曰く】
授業 課題 Java ⇒ 5,720 件
授業 課題 C++ ⇒ 495 件
0086デフォルトの名無しさんNGNG
まあ学校で教えてるからってのは必ずしも将来に直結しないが、
現時点での需要としてはJavaということだろうね。
0087デフォルトの名無しさんNGNG
Java覚えとけば、とりあえず画面回りで困ることはないな。
0088デフォルトの名無しさんNGNG
画面のキャプチャーソフトJavaで書きたいんですが
どうすれば良いですか?
0089 NGNG
JNI しかない。
0090デフォルトの名無しさんNGNG
さっそく画面回りで困った(w
0091 NGNG
>>87-91 ジサクジエン (・∀・) デシタ!!
0092デフォルトの名無しさんNGNG
>>90
きみ、屁理屈ばっかりだね
0093デフォルトの名無しさんNGNG
画面回りで困ることは無いって事はなかろーが、少なくとも MFC や
Motif なんかに振り回される事は少なくなるな。
0094デフォルトの名無しさんNGNG
AWTのレイアウタは最悪でしょう。振り回され度No1。
0095デフォルトの名無しさんNGNG
>>92
やり込められて負け惜しんでる人ハケーン!
0096デフォルトの名無しさんNGNG
> レイアウタ
あんたどこの人?
0097デフォルトの名無しさんNGNG
俺的振り回され度
MFC >>>>>>>>>>>>>>>>>>>>>>>>>>> Motif >> AWT
0098デフォルトの名無しさんNGNG
>>94
そうか?コーディングでレイアウトを決定できるのは便利だと思うが。
へんな仕様のリソースファイル書かせられるよりまし。
0099デフォルトの名無しさんNGNG
>>98
今はGUIビルダでやるでしょ。
いずれにせよ、layoutManagerはマニュアルちょっと読めば使える。

VBみたいに、リサイズ全く考慮しない固定レイアウトしか知らないと
使いにくいと思うのかも。
0100デフォルトの名無しさんNGNG
>>88
http://amacre.site.ne.jp/Tuyano/Software/Capture.html
0101デフォルトの名無しさんNGNG
>>27 これはどういうことでしょうか?
コンストラクタの詳細
JPanel

public JPanel(LayoutManager layout,
boolean isDoubleBuffered)

指定されたレイアウトマネージャおよびバッファリング方式で新しい JPanel を作成します。

パラメータ:
layout - 使用する LayoutManagerisDoubleBuffered - boolean 値。true の場合、ダブルバッファリング方式で、追加メモリ空間を使用した高速でちらつきのない変更を行う
__^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0102デフォルトの名無しさんNGNG
>>101
(゚д゚) ハァ?
AWT でダブルバッファも使えない ヘタレ の登場ですか。
0103デフォルトの名無しさんNGNG
>>101
恐ろしいまでの墓穴だな。
0104103NGNG
書きかけで送っちまった。
ダブルバッファリングのやり方くらい Java の入門書にも載ってるだろーが。
0105デフォルトの名無しさんNGNG
最近「【foo】○○スレ【bar】 」なスレタイ多いよね...
0106デフォルトの名無しさんNGNG
>>105
ニュー速のマネと思われ
0107デフォルトの名無しさんNGNG
最近聞きかじりの知識で書き込む痛い識者、多くね?
なんだろね。そろそろ VB ⇒ Java 移行組が知恵付け始めたのかな。
0108デフォルトの名無しさんNGNG
>>100
ハラショー!!
0109101NGNG
>>102-104
ソツレイスマスタ
「高速でちらつきのない」しか
読んだなかった
0110デフォルトの名無しさんNGNG
アプレットなんですけどお願いします。
classファイルと画像ファイルを同じディレクトリに入れたのに画像だけが表示されません。
ソースは<APPLET CODEBASE="/applet" CODE="xxx.class" WIDTH=200 HEIGHT=160></applet>です。
原因がさっぱりわからないのでどんな原因が考えられるか教えて下さい。
ちなみにローカルで実行すると画像も表示されます。
0111デフォルトの名無しさんNGNG
アプレットの灰色の部分は
色を変えることが出来ないのですか?
0112デフォルトの名無しさんNGNG
>>110
DOCUMENTBASEも同じディレクトリにしたら?
0113デフォルトの名無しさんNGNG
>>111
setBackground(color);
0114 NGNG
ジャバスクリプトについて質問です。
会社のLANにつながってる社内文書を見ようとネットスケープで開いたところ
リンク先がopen window〜とジャバスクリプトで書かれて?おり、
illegal URL method〜とエラーが出てしまいました。ネスケのバージョンは
4.05で同僚の4.7で見たところ見ることが出来ました。バージョンによって
見れないということがあるのでしょうか?わかりにくいですけどお願いします。
0115デフォルトの名無しさんNGNG
>111さん
やってみました。ダメみたいです。他に原因となりそうなもの
ありますか?
0116デフォルトの名無しさんNGNG
>>114
板違い。おまけに、JavaとJavaScriptは名前が似てるだけで別物。
0117114NGNG
よくスレ確認してませんでした。放置という事でお願いします。
0118デフォルトの名無しさんNGNG
117は放置プレイ好き
0119デフォルトの名無しさんNGNG
サーバサイドの開発でJNIを使う場面ってありますか?
0120デフォルトの名無しさんNGNG
>>119
やりたきゃやればよい。
普通に考えればJNIなんぞ使わなくても足りるだけのものはあると思うが。
0121デフォルトの名無しさんNGNG
>>120
NIS+使ってユーザ認証しなきゃならないんですが
JNI使わなくてもできますか?
0122デフォルトの名無しさんNGNG
javax.servlet.*以下の〜.classファイルを
逆コンパイルしたいんですけど、MOHCAを
使っても逆コンパイルできません。なにか良い
ツールはあるでしょうか?
0123デフォルトの名無しさんNGNG
>>121
RADIUSのクライアント用ライブラリとかあった気がする...
0124デフォルトの名無しさんNGNG
>>122
最近のclassファイルだと、JODEあたりじゃないの?
0125デフォルトの名無しさんNGNG

0126デフォルトの名無しさんNGNG
JAVAを始めたけど・・・・
まず、メソッドからわからん。
メソッドの呼び出し??

なにか、超初心者でもわかりやすい
サイトかなにかありますか?
0127デフォルトの名無しさんNGNG
>>126
好きなの選び〜や
http://www.google.com/search?num=100&hl=ja&safe=active&q=java+%93%FC%96%E5+%8A%EE%91b&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0128デフォルトの名無しさんNGNG
http://www.mars.dti.ne.jp/~torao/program/
0129デフォルトの名無しさんNGNG
ソース
import java.io.*;

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

double x=7.5;
double y=5.4;
double z;

z=x+y;
System.out.println("x+yは"+z+"です。");

z=x-y;
System.out.println("x-yは"+z+"です。");
}
}

実行結果
x+yは12.9です。
x-yは2.0999999999999996です。

x-yが2.0999999999999996になる理由と
x-yを2.1と表示する方法をおしえてください。

x-yが 2.0999999999999996になるのなら
x+yも12.9000000000000004になると思うのですが。
もしかして有効桁数17桁で18桁目の4が丸められてるのかな。
0130デフォルトの名無しさんNGNG
あちこちで同じこと聞くなヴォケ
0131デフォルトの名無しさんNGNG
>>130
あっちでスレ違いと言われたからです。
0132デフォルトの名無しさんNGNG
>>130
それってJAVA Fuck(www.hatena.org)にかいてなかったっけ?
0133デフォルトの名無しさんNGNG
>>131
根に持つなよ…
http://pc.2ch.net/test/read.cgi/tech/1021555964/96-113
みんなマジレスしてるじゃないか。
これ以上の答はどこで聞いても出てこないよ。
いったい何がわからんのかわからん。
0134デフォルトの名無しさんNGNG
>>129
もういっぺん説明を試みる。
> x+yは12.9です。
違う。「x+yを丸めた結果が12.9」だ。計算機の内部ではぴったり12.9じゃない。
> x-yは2.0999999999999996です。
>
> x-yが2.0999999999999996になる理由と
これを説明するのはもう秋田。
> x-yを2.1と表示する方法をおしえてください。
好きな桁で丸めるか、BigDecimalを使え。
> x-yが 2.0999999999999996になるのなら
> x+yも12.9000000000000004になると思うのですが。
> もしかして有効桁数17桁で18桁目の4が丸められてるのかな。
…まあ、そんなとこだ。10進17桁じゃなくて2進53桁だけどな。
0135デフォルトの名無しさんNGNG
Forte3.0CE使ってるですが、まちがえてCENTERに配置してあるjScrollPane1に
入れてしまったjPanel1を、NORTHに配置しなおす操作方法がわかりません。
教えてください。
0136デフォルトの名無しさんNGNG
消せばいいじゃん。
0137デフォルトの名無しさんNGNG
>>134
どうもありがとう御座います。
doubleがどのように数を扱っているかが
分かっていなかったから駄目だったんですね。

doubleのヘルプ
BigDecimalのヘルプ
頑張って読みます。

かなり数値演算の真理に近づいた気がする。

>>132
ナイスなページをありがとう!


0138デフォルトの名無しさんNGNG
今日、スレッドの勉強を始めました。
API仕様見てるのですが、
Timer クラスにおける例外、
IllegalStateException
というのを発生させてみたいのですが、どうやればいいのでしょうか。
タスクがすでにスケジュールされたか取り消された場合、またはタイマー が取り消された場合に発生すると書かれてあるのですが、
「タスクがすでにスケジュールされたか取り消された場合」、「タイマー が取り消された場合」
の両方の意味が分かりません。
再現の方法など教えていただきたいのですが。
よろしくお願いします。
0139135NGNG
>>136
コンポーネントを置いてしまってて、めんどくさい場合はどうしましょ?

そもそも、CENTERにJScrollPaneを置いた後でSOUTHとかNORTHとかにコンポーネント
配置する方法ってある?
0140138NGNG
改行失敗しますた。
すんません
0141138NGNG
ここで言う Timer クラスは、 java.util.Timer です。
たしか、他のパッケージにも同じ名前のがあったと書いてあったので、
念のため。
0142デフォルトの名無しさんNGNG
1.4から導尿されたPreference APIって実は使いにくくない?
0143デフォルトの名無しさんNGNG
携帯電話に保存した画像をPCにつないだ
ケーブルを使って保存し直すプログラムを
J-PHONEのJavaアプリで作りたいんですが
できるんでしょうか?板違い??
0144デフォルトの名無しさんNGNG
ウインドウズVSサンマイクロシステムズの係争の結果、XPから
Javaをサポートしなくなったって本当?
これからの主流は、C#ですか?
Javaはじめたばかりなんですが。。。。いまさらやってもなのかな〜(泣
マジレスおねがいします。
0145デフォルトの名無しさんNGNG
>>144
自社の独自拡張VMを搭載しなくなっただけでしょ?
VBとかだってランタイム必要なんだからそれと同じ感じで
使う人に落としてもらえばいいわけで。
使いたい人は使う、関係ない人はさっぱり知らない。
今までと対して変わらないような・・・
0146デフォルトの名無しさんNGNG
アプレットで書いた図形をプリントアウトしたいのですが
やり方がわかりません。とりあえずスクリーンショットで
ごまかしてます。ブラウザの印刷機能だと真っ黒で・・・
正しい方法をどうか教えてくださいよろしくお願いします。
0147デフォルトの名無しさんNGNG
>144さっそくありがとう。かわらないんだね・・
0148デフォルトの名無しさんNGNG
質問いいですか?
入力した英文字の大文字は小文字に、小文字は大文字に変換して
表示しようとしているのですがわからなくて詰まっています。
toLowerCase,toUpperCaseを使うとすべて小文字、大文字に
なってしまっています。うまい方法があれば教えて下さい。よろしく
お願いします。
0149デフォルトの名無しさんNGNG
初心者です。お願いします。
最近、「Java言語規定」というページを見つけて喜んでいたのですが、
このページは古いというようなことを言われました。1997年だし。
まあ、文法そのものはそんなに古くないと思うのですが、言葉遣いが
気になります。プリミティブ型なんて、周りで言ってる人いないし。
Sunの英語の標準訳のページってないでしょうか?
たとえば、inner classは、内部クラスというのがよいか
インナークラスがよいか、などです。
0150デフォルトの名無しさんNGNG
プリミティブのインナーも内部も言う。
0151デフォルトの名無しさんNGNG
プリミティブの
プリミティブも
■ このスレッドは過去ログ倉庫に格納されています