2019年05月25日

演算の対象となる値を「オペランド(operand)」と言い演算の種類を表すものを「演算子(operator)」/classはインスタンスを作る機能を持ったオブジェクトでそれ自体の変数(フィールド)や関数(メソッド)を持てる

それでわかったことがある。

・変数の宣言時に、データ型を省略することはできない。
これは判る。

・int 型と double 型の変数の演算結果は、double 型になる。
これはちょっと「なぜ?」となって調べた。
どうやら整数と整数に対する演算を行った場合は得られる結果も整数となるが、演算子の対象の値がどちらか一つでも浮動小数点数の場合には演算の結果得られる値も浮動小数点数となる算術演算子 - 演算子 - Java入門)らしい。

リテラルは値のことhttps://qiita.com/koukonko/items/3331f6abe8db18d55bcc)ってのもわかった。リテラル「10」はint型だし、「3.33」はdouble型だ。


のサイトが判りやすい。byte 型→8ビット整数(-128〜127)、short 型→16ビット整数(-32768〜32767)、int 型→32ビット整数(-2147483648〜2147483647)、long 型→64ビット整数(-9223372036854775808〜9223372036854775807)ってのがわかる。
少数は、float 型→32ビット(単精度)実数,約6桁精度,範囲 ±3.40282×1038、double 型→64ビット(倍精度)実数,約15桁精度,範囲 ±1.79769×10308か。

・3E2というのは300.0。のことで、double型の数値リテラル。
これがどういうことかというと、浮動小数点リテラルの末尾に「E」を書き、さらに整数値を書くと、その整数値が「10の乗数」になるらしい「E」とは : JavaA2Z)から。だから3.0を10の2乗倍したら、300.0ってこと。
次は、

class devine {
public statcic void main(String[] args) {
int sum = 0;
fot(int i = 1; i < 10; i++){
sum += 0.1;
}
System.out.println(sum == 1);
}
}

の実行結果について。
このコードの実行結果…まず、"+="という演算子がよくわからん。
複合代入演算子(https://wa3.i-3-i.info/word13674.html)というらしいが。
つまり、int型の変数sumは、for文で整数の1から10までを足してるから、これでまず55。
こいつに0.1を足すと、55.1で、sumには55.1が代入されるわな。
そんで最後のプリントラインメソッド、についてはここが詳しくて。


== 演算子(比較演算子)は、exp1 が exp2 と等しければ true(真)、さもなくば false(偽) を返すhttp://www.tohoho-web.com/js/operator.htm#eq
らしいんで、一致しないから答えはfalseだな。

今日はこれぐらいでいいや。
「staticはメソッドのこと?staticメソッドって?」っていう疑問がJavaのデータ型を読んで湧いてきたから、また調べよう。
posted by DJしかばね at 13:04 | Comment(0) | Java学習 | このブログの読者になる | 更新情報をチェックする

2019年05月19日

親クラス(スーパークラス)を継承したい時はextends〜を使う/属性≒アトリビュートやプロパティ、オブジェクト≒インスタンス、 メソッド≒関数やファンクション

一カ月ぐらいJavaの勉強してない。
ちょっと気合入れてやるか〜って気分になった。
で、過去問を解くことに。

・Javaアプリケーションには、mainメソッドが必要である。
・Javaのクラスファイルは、JVM(Java Virtual Machine)上で実行される。
・Javaでは、ガベージコレクション機能によって、メモリの解放が自動的に行われる。
・コメント「//」はそれ以降で改行までをコメントにする場合、また「/* 〜*/」は複数行をコメントにする場合に使用する。

上記はJavaの事実として覚えておこう。
ガベージコレクション、って何?って感じだけど…調べる気力がない。
ガレージ、じゃなくてガベージなのか、覚えにくいな。

ガレージが欲しいよほんと、所ジョージ的なよ。


で紹介されてる豪邸でなくてもいい、狭くてもいいから好きな物いっぱいおけるガレージ。
理想は、

TENDRE - SIGN

のPV出てきてるような、中庭とプールがあって、日がいっぱい差し込んでくる感じね。
ちょっとセキュリティ的に弱そうではあるが。
Tevaのサンダルも出てきてる、歩きやすそうだな。

んで次の問題は〜穴埋め的な感じだった。
例えば、

class Summertune extends Hitomitoi {}

っていうコード、SummertuneクラスはHitomitoiクラスを継承して、Summertuneクラスをサブクラス(子クラス)、Hitomitoiクラスをスーパークラス(親クラス)というらしい。


も読んでおくかな。
そんで継承によってコードの再利用ができるんだと。
クラス名はこの動画、

Dorian / summer rich feat. hitomitoi

を観て適当に付けた。いい曲だ〜。
夏が近づくとこういうの聴きたくなる。

山下達郎 - RIDE ON TIMEに収録されている「いつか」って曲、いい曲だな。
RIDE ON RIMEよりいいかもしれない。

class Yamatatsu {
String name;
int id;
void itsuka() {}
}

こんな風にYamatatsuクラスが定義されている場合、このクラスはメンバ変数name、idのようにオブジェクトを特徴付ける属性と、itsukaメソッドのようにオブジェクトの機能を表す操作をもっている。また、属性と操作をまとめることをカプセル化という

属性・操作についてはこのサイトが判りやすそうではある。

カプセル化により、属性を保護することが可能になる。これを情報隠蔽という。クラスを基に、具体的な情報を当てはめて、オブジェクトを生成することをインスタンス化という。その際には通常newキーワードが使われる

でたよ、インスタンス。
何か覚えにくいんだよなぁ、インスタンスって。
でも、


だと、インスタンス≒オブジェクトみたいに説明しているっぽいし。インスタンス化してオブジェクト作る、って覚えとくか。
そんでインスタンスって言われたら、オブジェクトのことだって考えるか。
この記事を読むと、クラスを使うためにインスタンス化してるっぽいが…クラスを使うにはインスタンス化しないといけない?のか…ちょっと裏を取るか。
属性はわかった。「String型とかint型とかの後に来る変数」「Stringとかintとかの型で性質を指定された変数」みたいなもんか。

コンストラクタはクラス名と同じ名前で、インスタンスを初期化…じゃあクラスを使う前に、インスタンス化とコンストラクタが必要ってことか?
"特別なメソッド”ってサイトに書いてるが、コンストラクタはメソッドと同じで機能の操作的なことやってんのか。

あっでも、


に「コンストラクタは、クラス名と同じ名前を持つメソッドのことで、インスタンス化したときに一度だけ実行されます。」って書いてるから、認識としてはそんなに間違ってないか。

ふぅ〜かなり頭使ったから、今日はこの辺にしとくか( ´Д`)=3 
posted by DJしかばね at 13:17 | Comment(0) | Java学習 | このブログの読者になる | 更新情報をチェックする

2019年04月13日

Javaの例外処理を簡単なコードで学ぼうと「System.in.close();」を入れたり入れなかったり

今日はちゃんと勉強すっか、と思って。
こんな記事を読んでみたり。


tryブロックで発生する例外、catchブロックで処理内容を書く感じらしい。


は、「System.in.close();」を入れて、無理矢理エラー(例外)を出したもの。

-----------------------------------------------------------
文字を入力してください。
例外java.io.IOException: Stream closedが発生しました
-----------------------------------------------------------

が出てくる。
通常は「System.in.close();」いらない、


で、いいみたいなんだけどね。

はっきりいって、try〜catchをわざわざ書く理由がいまいち判らない。これは本当にまともに仕事で実装したり、まともなプログラム作ったことがないからだろうな〜ああ〜。
クラス名はTravelTheWorld、変数にvladmircetkarって書いてみたのは、名曲だったからな。

Vladimir Cetkar - Travel The World

忘れないように。ヴラディミール・チェトカー、言いにくいアーティスト名だけど。
ゴールデンウィークとかも行きたいけど、何でもない時にも急に行きたくなるよ〜日常からどっかへ。


そんなことする時間もお金ないんで、とりあえず古い漫画を読んで気分転換よ。
「月刊ベアーズクラブ」とかいう、クッソ古い漫画。
とりあえず全部読んでいく。

全くよく判らん?総集編みたいな感じにまとめられてた。ボクシングにラブロマンス加えた感じ。

●山科けいすけ 青春の門前ばらい
面白い。浦安鉄筋家族みていなピタゴラスイッチ的な展開の4コマ漫画で笑わせてくれる。水飴のプールでトレーニングするとかも滑稽。

漫画の合間に女のコ白書とかいう、SEVENTEEN特別編集とかの広告が入ってた。

フルヤヒロム ざけんじゃねェ!
漫画で「神戸高塚高校校門圧死事件」に言及してた。この雑誌が1990年のだから、ちょうど事件が起きた年なのか。漫画のキャラに「あの先生 絶対××にするべきスね」とか言わせたり、結構きわどいこと書いちゃってる。当時の漫画はそういう過激発言を漫画に混ぜても許される寛容さあったのかもな。
内容は何か、ちょいエロのラブコメみたいな。

レスリング漫画?

原作は船戸与一の小説か。この漫画は…かなり面白い、続きが気になる。南米が舞台でゲリラ同士の争い?みたいのが描かれてたか、何か描写がリアル。「血が騒いできたぜ…」なんて台詞、日常生活で言う事ないよなー。
浦沢直樹「MONSTER」とか好きな人は好むんじゃないか。
漫画に乗ってたのはSCENE3(第3話)だが、これは普通に買いたいな。この二人のコンビで「猛き箱舟」っていう漫画もあるらしい。

表紙に「超時空オカルト時代劇巨編」って書いてるが、すごいキャッチコピーだわ。色々詰め込んでる感じ。
今、上映中の名探偵コナンの紺青の拳も「真実vs奇術vs蹴撃 雌雄を決する三位一体(トリニティ)バトルミステリー」とかだよな。去年のゼロの執行人は「真実を暴く者vs.正義を貫く者 魂がぶつかり合う極秘任務“シークレットミッション”ミステリー」だったっけ。何か誇大広告みたいに感じるんだよな…。
そんで内容は川中島の戦いに妖怪ファンタジー加えたみたいな。「歴史に残る川中島の戦いは人馬の炸裂する轟音がゴングであったという」って書いてるけど、ほんとかいな…。
武田信玄が魔空とつながる?だの黄金城だの発犬士だの…とりあえず最初から読んでないから全然、判らん…南総里見八犬伝とかも混じってる感じか。

読み切り。「仕事祭」に収録されてるらしい。ビッグ錠は「包丁人味平」が面白いんだよな。といっても他の漫画読んでないから知らんが。3人の詐欺師の話みたいな。

バトミントンにラブロマンス混じってる感じの漫画。「アップタウンボーイズ」も面白そうな。

春日光広 - ギャググラスノスチ ブレインマン
ファジィコンピュータを搭載したロボットが何かコンテストに出て戦うみたいな。それなりに面白かった。

途中までしか読まんかったが、まあそれなりに楽しめたな。「山猫の夏」はちゃんと読みたい作品だ。

posted by DJしかばね at 21:53 | Comment(0) | Java学習 | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。