Java小学校ホームルーム

本を読んだだけではよく分からなかったことや、疑問などを、この掲示板でサポートします。本の内容と関係のない、Java関連の質問も受け付けます。(悪質投稿防止のため、画像認証にご協力ください。)

JAVAを直接教えていただけないでしょうか。

全て表示

  • 宮崎
  • 投稿日:2009/10/27 20:12

以前掲示板での質問に色々と回答を頂いて、先生のメアドを
教えていただいたものです。
有料で直接教えていただくことは出来ないでしょうか。
ある先生にも有料で個人指導である程度の基礎は分かっているつもりなのですが、その先生の事情で中止になりました。
掲示板等の質問などでは、どうしても限界があります。
疑問点だけを直接教えていただくというのは可能でしょうか。

  • 1.岩谷 宏
  • 投稿日:2009/10/29 10:18

コンピュータやプログラミングにかぎらず、また私にかぎらず誰でも、有料と無料で教える内容が違うことはありません。有料だから分かるようになる、というあなたの考え方は、間違ってます。

今のあなたの問題点は、本やインターネットなどの上のコードサンプルをたくさん見て、それを自分でも書いてみる、アレンジしてみる、動かしてみるという経験が、あまりにも少なすぎることです。プログラミングは、模範例にならいながら、自分で書いて動かしてみる経験を大量にしないと、上達しません。そうすれば、たとえば、「グラフィクスのプログラミングではほとんどの場合にrepaint()をよびだすんだなぁ」といったことが、分かるはずです。

小さなプログラミングを、たくさんたくさん経験してください。

タグ:

Try〜Catch構文について

全て表示

  • 宮崎
  • 投稿日:2009/08/31 19:44

 今晩は。
 Try〜Catch構文について質問致します。
 この構文は例外、エラーが出そうな箇所では事前にエラー回避するものですが、
このメソッドを使った場合には必ずTry〜Catch構文で処理してやらないとエラーになる
というものなのでしょうか。
 それとも、プログラマが単にユーザーの入力値によりエラーが出そうな箇所を事前に考えて
処理をしてやればよいというものなのでしょうか。

 宜しくお願いします。

  • 1.岩谷 宏
  • 投稿日:2009/09/02 21:14

try/catchまたはthrows文がないとコンパイラが文句を言ってコンパイルしてくれません。だからプログラマは、Javaのノンランタイム例外をごまかすことも、それから逃げることもできません。

  • 2.宮崎
  • 投稿日:2009/09/02 23:29

 今晩は、レス有り難うございます。

 >try/catchまたはthrows文がないとコンパイラが文句を言ってコンパイルしてくれません。

 ということは、このメソッドを使う場合には必ずtry/catchまたはthrows文で受けてやる、
或いはtry/catchで受けてやらないとエラーを吐くというメソッドはあるのでしょうか。

 色々と調べてもそのようなコメントをしている参考書も
見あたらないですし、このメソッドはtry/catch構文で受けるのが必須と書いている参考書等は見当たらないのですが。
 勿論、一部のメソッドについてはtry/catchが必須とかの書きぶりにはなっていますが。

 具体的にこのメソッドとこのメソッドという風に書いているものが見あたらないのですが。
 私の勉強が足りないのでしょうか。

  • 3.岩谷 宏
  • 投稿日:2009/09/06 13:29

> 私の勉強が足りないのでしょうか。
各メソッドが投げる例外は、APIドキュメンテーションに必ず明記されています。たとえば、java.io.OutputStreamクラスのwrite(int b)メソッドには、なんて書いてありますか?

  • 4.宮崎
  • 投稿日:2009/09/19 23:16

>>3

>>3

すみません、回答が遅くなりました。
「IOException - 入出力エラーが発生した場合。特に、出力ストリームが閉じられている場合に IOException がスローされることがある」

上記内容でしたが、今の私にはチンプンカンプンです。
他にも似たような項目、解説がありましたが。。。。
項目の違い、項目の意味さえ不明です。

一体どのような勉強をしたら、この内容が分かるのでしょうか。

市販されている本には、この解説を説明している本ははっきり言って皆無です。

単にこのサイトに行きなさいととはかいているものの。
情報として、このサイトの内容を理解することが大事であることは何となく理解は出来るのですが。

  • 5.岩谷 宏
  • 投稿日:2009/10/26 11:12

メソッドのドキュメンテーションにIOExceptionを投げると書いてあれば
try{
 そのメソッド();
}
catch(IOException ioe){
 // 何かをする
}

こんな部分が必要です。

JavaプログラミングではAPIのドキュメンテーションが非常に重要です。コンパイラが文句を言ったら、そのクラスやメソッドのドキュメンテーションをよく読んでください。事前に、例外を投げるメソッドを全部知っておくなんて、不可能です。

タグ:

paint とclear の使い方が分かりません

全て表示

  • 宮崎
  • 投稿日:2009/10/23 00:45

今晩は、下のようなプログラムを作成しました。

「clear(g);をコメント」にすると円が連続します。
paint()は呼び出されるときには、
必ず今windowにある絵を消して描くのではないでしょうか。
何故「clear(g);」が必要なのでしょうか。宜しくお願いします。

=========================================================================

public class ani_Moving_Ball extends Applet
{
int x;

public void paint(Graphics g)
{
for(x=0 ; x<180 ; ++x)
{
clear(g);
g.drawOval(x,90,19,19);
sleep();
}
}

public void clear(Graphics g)
{
g.setColor(Color.white);
g.fillRect(0,80,200,40);
g.setColor(Color.black);
}

public void sleep(Graphics g)
{
double s=0.0;
for (int j=1 ; j<100 ; ++j)
{
for (int k=1 ; k<100 ; ++k)
{
s =+ Math.sin((double)j);
}
}
}
}

  • 2.岩谷 宏
  • 投稿日:2009/10/25 18:30

> paint()は呼び出されるときには、
> 必ず今windowにある絵を消して描くのではないでしょうか。
どこにそんなことが書いてありましたか?

しかも現状のコードは、paint()はAppletのランタイムから一回呼び出されているだけですから、*仮に*あなたのおっしゃる仕様だったとしても、前回の描画が消される機会がありませんね。

ポーズのためには、Threadクラスのsleep()メソッドを使ってください。
そしてAppletのstart()メソッドの中に、sleep()呼び出しとxの値更新とrepaint()を呼び出すforループがあるとよいでしょう。

Javaのグラフィクスについて、ここでは詳細を書けません(とても長くなる)から、ぜひ、http://homepage1.nifty.com/algafield/paint.htmlをじっくり読んでください。連続描画と非連続描画の違いがよく分かります。とくにupdate()メソッドの説明に気をつけてください。

とにかくアニメでもゲームでもなんでも、ユーザロジックの部分からrepaint()を呼び出すことがJavaのグラフィクス制御の原則です。

タグ:

JAVAのパケットについて

全て表示

  • 宮崎 英夫
  • 投稿日:2009/08/22 21:59

 今晩は。
 JAVAのコードでパケット(クラス)をインポートしますが、そのいわゆるスーパクラス(例えばFrame、Applet etc)の
コードは見ることが出来るのでしょうか。

  • 1.岩谷 宏
  • 投稿日:2009/08/25 08:38

Frame, Appletなど、JavaのAPIに属するクラスのソースコードは、JDKをダウンロードしたときに含まれています。

  • 2.宮崎英夫
  • 投稿日:2009/08/28 01:34

 岩谷先生有り難うございます。

 実は、しばらく色々と事情があって、javaの勉強を中断していたのですが、このサイトに来てみると殆どカキコが無い状態で、寂しかったのですが、回答が頂けて本当に嬉しいです。

 ところで、Eclipse3.1をインストールしている場合なら、JDKのVerはどれをインストールしてやればよいのでしょうか。
 
 宜しくお願いします。

  • 3.岩谷 宏
  • 投稿日:2009/08/30 10:47

3.1ならJDK 1.5だと思うけど、最新バージョン(3.5)を使ったほうが、なにかと問題が少なくてよいでしょう。3.1は、ほぼ4〜5年前では?

  • 4.宮崎
  • 投稿日:2009/08/30 23:11


 ありがとう御座います。
 Ver3.1だとALL-IN‐ONEタイプがないとか、日本語のPluginを入れてやるとかのスキルがないので。。。。。

タグ:

将来性について

全て表示

  • おきら
  • 投稿日:2009/06/03 17:12

こんにちわ。

先生はjavaの将来性についてどうお考えですか?

是非お話を聞かせて頂きたいと存じます。

  • 1.岩谷 宏
  • 投稿日:2009/06/04 08:09

こういう問題は、ヒトの意見など参考にしないように。問題は、あなたがやりたいことのためのツールとして、Javaが最適かどうかです。自分の感性で判断してください。もちろん、ほかの言語についてもざっと勉強してください。

  • 3.おきら
  • 投稿日:2009/06/04 08:54

私個人の趣味で開発をしているのなら先生のおっしゃることはごもっともですが、ビジネスの観点でこれからどのくらい需要があって将来性がどの程度あるのか知りたかったのです。

ネット上で調べてもそれは「人の意見を聞く」ことになるので、人の意見を聞かないでどのようにしてjavaの将来性を見極めるのでしょうか?


申し上げたいことがございます。

SEやIT技術者は「人に聞かないで自分で調べろ」とよく言います。これは何の物事にも共通することですが、終始「自分で調べろ」の一点張りでは逆に無責任だと思います。
IT技術者は人にものを教えるのが下手だと言われていますが、完全な答えを教えなくても示唆するような内容を教えたりすることはできると思います。
新人や未経験者が円滑に「自分で調べる」ためのサブタスクを示唆することこそが上に立つものの責務ではないかと思います。

それに、具体的に「自分の感性」とはどういったことでしょうか?これからIT技術を学ぶ者が、大した知識もないのに「自分の感性」をあてにできるのでしょうか。「自分の感性」という表現があまりに抽象的で真意が理解できませんので、このことについて詳しくご説明願いますでしょうか。


話はそれましたが、先生からjavaの将来性についてお話をお伺いすることができないのであれば残念ですが諦めます。

どうもありがとうございます

  • 4.岩谷 宏
  • 投稿日:2009/06/04 21:20

個人の趣味の話はしていない。

ビジネスや仕事や勉強は何でも、その人の中に「これだ!」という強い前向きの直観がなければうまくいかないし、世の中が迷惑するような質の仕事しかできない。
(最近藪医者が多いのは、いやいや医者になった二世三世が多いのでは? 日本の政治家も世襲的になってから、愚劣で無能な人が増えたようです。)

まあ、Javaについて、そんなだるい質問をするようでは、Javaから見て、あなたという人間は将来性がないと言えるでしょう。

あなたの、一つしかない人生、本当のあなたの適性を掘り当ててください。Javaとか、今気になってるつまんないことをすべて、心から捨てなさい。Javaなんて、どうでもいいじゃん!

  • 5.おきら
  • 投稿日:2009/06/08 08:58

ありがとうございました

タグ:

おすすめサービス

InterPot(インターポット) ドメイン@nifty ニフティクリップ アプラグ