メソットとカプセル化の操作@ノートに書くの面倒なのでココに。
アクセス制御(メンバ編)
・何も書かない(package private)
→自分と同じパッケージ
・protected
→自分と同じパッケージに属するか自分を継承した子クラス
アクセス制御(クラス編)
・何も書かない(package private)
→自分と同じパッケージ
・public
→すべて
性的フィールドへのアクセス
→クラス名.静的フィールド名
・無名パッケージに属するクラスは同じ無名パッケージに属するクラスからしかアクセスできない
・voidメソッドで戻り値を設定するるとコンパイルエラー
・void以外のメソッドの場合、戻り値を受け取ることは必須ではない
・メソッドの戻り値は同じ型か互換性のある型。
→ex)doubleとfloatは、互換性がある
・可変長引数は配列として扱われる
→void sample(int...num{
for(int i=0; i<num.lenght;i++){
system.out.println(num[i]):
}
}
→可変長引数は最後の引数にすること
→型の後ろにつけること(変数名の後ろにつけるとコンパイルエラー)
・staticなメソッドはstaticで修飾されたものしかアクセスできない
ループ構造の使用@ノートに書くのが面倒なのでココにメモ
・while文の条件式は必ず真偽値を戻す
・while文の条件式は1つしか記述できない
do-while文のポイント①doの後ろに()はつかない②while文の後ろに条件式を書く③; で終了する
・while文で{}を省略する場合、次の1文だけを実行する
・do-while文で{}を省略する場合、doの後ろには1つしか文をかけない、複数記述するとコンパイルエラーになる
・for文の初期化式で複数の変数を宣言する場合、同じ型でなくてはならない。(異なる型の場合はコンパイルエラー)
・for文で「, 」を複数記述できるのは初期化文と更新文
・条件式に複数の条件を記述したい場合は、論理演算子を使う
・for文の更新分にはメソッドも使用できる
・for文で条件式を省略すると無限ループになる「for(int i=0; ; i++)」また次の文でも無限ループになる「for(int i=0; true; i++)」
・for文の条件式と更新式は省略できる
・拡張for文は配列の他にjava.lang.lterableを実装するクラスが使える。試験としては、java.util.ArrayLIstを覚えておく
・二重ループの中で使われてるbreakによって中断されるのは直近にあるループだけ
・ラベルをつけられるもの、コードブロック、すべてのループ文と分岐、式、代入、return文、try文、throw文
・if文、if(true)は動くが、if("true"),if(0),if(-1),if(1),if(555)はコンパイルエラー
・メソッドでvoidの場合、return文がないとコンパイルエラー
配列の作成と使用@ノートに書くのが面倒なのでココにメモ
・配列は複数の値の集合を1つにまとめて扱うためのインスタンス
・配列の特徴①同じ型もしくは互換性のある値だけ②扱えるインスタンスは生成時に決定
・配列型変数の宣言時に、要素数は指定できない(要素数は配列インスタンスの生成時)
・配列の生成時のコンパイルエラー①要素数を指定しなかった場合 int array = new int; ②要素数に浮動小数点を記述した場合 int array = new int[2,3]; (long型も☓)
・Item items = new Item[3]; →3つのItemしか扱わない配列インスタンスを生成している
・配列要素のデフォルト値:整数型(0)、浮動小数点型(0,0)、真偽型(false)、文字数型(¥u0000)、オブジェクト型(null)
・配列インスタンスと要素の値は異なる
・要素の値が変わっても配列そのものが影響を受けることはない
・newと初期化演算子の両方を使った場合、の中に要素数を指定してはいけない。ex)☓:int array = new int[2]{2,3};(コンパイルエラーになる) ○:int array = new int{2,3};
・要素数ゼロの配列インスタンスの生成例①int array = {}; ②int array = new int[0];
・初期化演算子は「変数宣言と同時にしか使えない」が、明示的に次元数を記述した場合は別 int array; array = new{};
・nullにlengthは存在しない。そのため、nullにlengthを使用すると「nullPointerException」が発生する
・StringクラスはObjectクラスを継承している。継承関係にある型同士であれば配列として扱える
・すべての配列型変数はObject型変数に暗黙的に型変換できる(すべてのクラスはObject型を暗黙的に継承しているから)
・cloneメソッドは配列の内容をそのままコピーする
・int arrayA={1,2,3,4}; int = arrayB = arrayA.clone(); →arrayA == arrayB (false)
・System.arraycopy(arrayA,1,arrayB,0,4) →引数2と4は、どこからコピーを始めるか
。引数5はコピー数をする数
演算子と判定構造の使用@ノートに書くのが〜
・int a=3; int b=a+=5; (a=8,b=8)
・「-」は2項と単項がある。単項は正負反転(-と変数の間に空白があってもOK)
・浮動小数点数はdoubleがデフォルト
・Javaではbyte型とboolean型の互換性はない
・a-- + ++a - a++ のような計算は一時変数を使う
・関係演算子:a instanceof b :aがbと同じクラスかbのサブクラスのインスタンスであればtrue
・>, >=, <, <= は数値でしか使えない
・&&と||はショートサーキット演算子、条件式をすべて評価したいなら&と|を使う。(インクリメント使用時に以後の値が変わってくる)
・同じインスタンスは同一性(==演算子で判定)、同じ値は同値性(equalsメソッドで判定)
・equalsメソッドはオーバーライド前提
・Object型のequalsメソッドをオーバーライドする場合、メソッドのシグニチャを変更してはいけない。変更した場合はオーバーロードであり、最初から定義されているequalsメソッドが実行される(同一性判定)
・equalsメソッドをオーバーライドして使う時、5条件あるが大切なのは「null以外の参照値xについて、 x.equals(null)はfalseを返す」
・文字リテラルは同じStringインスタンスへの参照が使いまわされる(コンスタントプール)ので、==演算子での同一性判定はture
・コンスタントプールは文字列リテラルを使った時にだけ有効。new演算子をつかった場合はその都度、インスタンスが作られる。
・else if文は「else」と「if」の間で改行できない
・switchで条件式が戻せる値の型には制限がある。①int型以下の整数型とそのラッパークラス②文字と文字列③列挙型 「char byte short int Character Byte Short Integer String enum」
・Switchのcase値の条件は①条件式が戻す値と同じ型か互換性があること②定数かコンパイル時に値がきまっていること③nullでないこと
Javaのデータ型@ノートに書くのが面倒なのでココにメモ
・プリミティブ型:boolean,char,byte,short,int.long.float,double
・Javaには「bool」型はない
・数値は10進数、2進数(0b)、8進数(0)、16進数(0x)が使える
※()内は接頭辞
・整数リテラル表記の「_」 は、先頭と末尾は☓、記号の前後は☓
・char型は0〜65535まで数値を代入できる
・char型は「¥u」から始まるUnicode番号を代入できる
・識別子に使える記号は「_」「$」
・識別子に使える数値は2文字目から
・識別子に!@#%^&()’;:{[/¥は使えない
・nullは「NULL」とは表現できない
・ 実行すべきメソッドを探す為に使う3つの方法、参照(どのインスタンスメソッドか)、クラス名(どのstaticなメソッドか)、シグニチャ
・コンパクションとは、細切れメモリをまとめ大きな空間を確保すること
Javaの基本@ノートに書くのが面倒なのでココにメモ
・クラスは必ず何かしらのパッケージに属する
・パッケージの宣言を省略したクラスは無名パッケージに属するものと解釈される
・パッケージの宣言は必ずソースコードの先頭行に記述
・パッケージの宣言より前に記述できるのはコメントだけ
・Java.langパッケージは基本的なクラスが纏められ、インポート宣言が省略可能
・パッケージの目的は、名前空間提供・アクセス制御・クラスの分類
・無名パッケージに属するクラスは、同じ無名パッケージに属するクラスからしかアクセスできない
・パッケージ宣言したクラスから無名パッケージに属するクラスにアクセスするとコンパイルエラー
・staticメソッドのインポート宣言はメソッド名だけ
・エントリポイントとなるメソッドの5つの定義、public、static、void、main、String配列型(可変長引数String型でもOK)を1つ受け取ること
・Javaコマンドの実行時:クラス名の後に続ける引数は、起動パラメータ、コマンドライン引数
エリアノートGOに埼玉県の公園情報を追加しましたm(_ _)m
以下は抜粋ですm(_ _)m
エリアノートGOに北海道の公園情報を追加しました!!!
エリアノートGOに北海道の公園情報を追加しました。
下記は抜粋です。
フランス発祥の現実を歩き回り宝探しを行うシスト(Ciste)を作成できるアプリをiTunesとGooglePlayにてリリースしました!
Ciste(シスト)とはフランス発祥の「リアルを歩き回って宝探しをするゲーム」です。
本来はリアル世界に小さなタッパ等を用意してその中に「宝物やメモ、次の宝への地図」等を入れ次の参加者へ繋ぐゲームですが、このアプリでは小さなタッパのかわりにサーバを利用しています。
参加者が獲得する宝は「文字列 、画像、音や音声、動画」になりますが、宝を設定する参加者の工夫次第では「物」への設定も可能です。
また、スタンプラリーとしての利用やパスワードを設定し参加者を限定する事もできます。
シストで得られる本来の宝は「宝探しをする体験や発見した達成感」みたいなものらしいので、宝は価値があるものでなくても良いようです。
URL
使い方について
https://ciste.biz/howto.php
YouTubeに説明動画をアップしています。
アプリの起動 01
www.youtube.com
現在の緯度経度を確認 02
www.youtube.com
現在の位置を地図で確認する。03
マップの尺度の変更 04
マップの移動 05
ログイン 06
ユーザー登録 07
ユーザーがシストを登録する 08
シストリスト 09
インデックス 10
アイコン 11
Q&A 12
お問い合わせ 13
位置情報の更新頻度の変更 14
青アイコンをタップ 15
黄色アイコンのタップ 16
エリアノートに追加したバス事業者情報「2」
エリアノートに追加したバス事業者情報「2」
古平町
おたる散策バスC:
札浜線
幕別町
弘南バス
県南タクシー
JRバス東北
下北交通
車力タクシー
岩手県北自動車
中里交通
川内病院ルート
十和田観光電鉄
南高校
国際興業
京浜急行バス
東北町
七戸町
今別町
南部バス
青森市
田子町
市内循環線
八戸市
八戸市内エリア
外ケ浜町
十和田タクシー
第一観光バス
階上町
南部町
おいらせ町
ながわ里バス(鳥谷
六戸町
柳平
中泊町
町巡回バス
藤崎町
蓬田村
平内町
三沢市
黒石市
宮城交通
小柳団地線(古川
ワンコインバスいさば号
ワンコインバスうみねこ号
岩手県交通
遠野市
野田村
久慈市
一関市
二戸市
雫石町
あねっこバス
紫波町
宮古市
花巻市
北上市
飯豊立花黒岩線
東日本急行
八幡平市
奥州市
山屋線
佐比内線
水分線
矢巾町
日詰深夜線
住田町
金ケ崎町
藤沢町
早池峰バス
大槌町
岩泉町
軽米町
洋野町
盛岡釜石線
盛岡大船渡線
雫石
川尻、沢内、山伏線
みちのく号
盛岡バスセンター
滝沢深夜線
松園深夜線
厨川深夜線
営業所ターミナル線
雫石網張線
北上深夜線
盛岡⇔沼宮内
石鳥谷線
東磐交通
岩手急行バス
大迫
長崎線
須川温泉線
高田線
栗原市
さわやか号
普代町
千厩盛岡線
盛岡バスセンター⇔イオン盛岡南SC
盛岡バスセンター⇔盛岡大学
湯本温泉線、北上駅
盛岡バスセンター⇔県立大学
二戸⇔奥中山⇔いわて子どもの森
ヒノヤタクシー
秋北バス
秋田中央交通
塩竈市
石巻市
ミヤコーバス
ジャパン交通
白石市
丸森町
七ヶ宿町
名取市
登米市
相互台線
高舘線
岩沼市
岩ケ崎観光タクシー
大崎市
山元町
大和町
大郷町
大衡村
美里町
仙台市
仙台~古川線
石巻
西部循環線
松島町
色麻町
加美町
川崎町
亘理町
利府町
吉田線
鶴巣線
粕川大松沢線
富谷町
南部循環線
北部黒川病院線
駒場線
桶谷町
南三陸町
志津川
山交バス
愛子観光バス
大谷交通
三陸タクシー
真野
唐桑汽船タクシー
下原湯坪線
碁石支倉線
西部路線
安達線
仙台~加美線
仙台~大衡線
大河原線
東北急行バス
羽後交通
新潟交通・JRバス東北
北陸鉄道
大仙市
横手市
湯沢市
潟上市
秋田市
丸宮タクシー
能代市
秋北タクシー
男鹿市
大館市
鹿角市
由利本荘市
にかほ市
仙北市
キングタクシー
高尾ハイヤー
五城目町
井川町
湯沢
小坂町
三種町
八峰町
由利本荘市循環バス
庄内交通
最上町
谷地-山形駅
中央市街円循環バス
米沢市
米沢
蔵王高原橋線
天童市
休石線
東根市
河北町
遊佐町
金山町