約 1,825,363 件
https://w.atwiki.jp/nozick/pages/6.html
Javaを用いた開発手法。 ソフト Eclipseショートカットキー アクティビティーサイクル 画面に関する設定 getSystemServiceに関して ActivityとContext メディアプレイヤ ログ ダイアログ バイブレータ ソフト Eclipse(SDK・ADT) JDK ver6(現在は7でも可と思われる) Android SDK Eclipseショートカットキー +... [Ctrl]+[Space] →候補を出す。 [Ctrl]+[Shift]+[O] →インポートの編成。足りないものを追加し、使用してないものを削除する。 [Alt]+[Shift]+[S] →ソースタブの一部を参照可。使いどころとしては、この後[F]でフォーマットを掛ける位か。 →フォーマットの設定はウィンドウタブから設定を開き、Javaの欄の中にあるコード・スタイル欄の中にあるフォーマッタ―を弄る。 アクティビティーサイクル Androidアプリのライフサイクル BGMなどを流したりすると処理を切らねばならないので重要となる基本的な知識。 +... onCreate() →アプリ起動時に通る処理。ビューのセットなどを行う。 onRestart() →後記するonStopから復帰した際に通る処理。 onStart() →onCreate()かonRestart()の後に通る処理。 onResume() →onStart()か後記するonPause()のからの復帰時に通る処理 onPause() →ツイッター機能などで他のActivityが起動した際に通る処理。 onStop() →ホームボタンを押すなどしてActivityが表示されない際に通る処理。 onDestroy() →使用しなくなった際に通る処理。 画面に関する設定 onCreateで指定するのが定石。 +... // バックライトを保持する(常時点灯)getWindow().addFlags( WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON );// ステイタスバーの表示をクリアgetWindow().clearFlags( WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN ); // フルスクリーン処理を追加getWindow().addFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN ); // タイトルバーを消す requestWindowFeature( Window.FEATURE_NO_TITLE ); getSystemServiceに関して 画面解像度取得やバイブレータの所得等で使いますが、 context.を使うことでonCreate以外でも取得可能です。 +... バイブレータの場合 // これでエラー吹く場合vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE);// Contextで解決vibrator = (Vibrator)contex.getSystemService(context.VIBRATOR_SERVICE); ActivityとContext よく、Contextを引数として指定してくるメソッドがあるが、 場合によっては、Contextと書いているにもかかわらずActivityが必要な場合があるので注意。 (Activityの情報を持ったContextが必要というべきか?) メディアプレイヤ BGMなどを流すのに用いる機能。SEなどには向かない。 SEならSoundPoolが良い。 +... 流れ →new/create/setlooping/seekTo/start/stop/release/null →prepareも使ったほうが良いと思われる。 →stopだと、再利用不能かと思われる。再利用にはpauseが良いと思われる。 ログ ログを出力することでデバッグがしやすくなる。 +... ログの種類は複数存在する →ERROR エラー →WARN 警告 →INFO 情報 →DEBUG デバック →VERBOSE すべて 使い方は →Log.e("タグ","メッセージ"); →eがERROR、wが警告…となっている。 ダイアログ ここではアラートダイアログとプログレスダイアログを紹介する。 「アラートダイアログは便利だが、プログラム側から処理を切るのは不可能かと思われる。(Activity再生成ならどうにか?)」 「なので、プログラム側から一定段階で処理を切りたい場合はプログレスダイアログが良い。」 アラートダイアログ +... メソッドチェーンが可能。 処理の中断は不可能かと思われる。 AlertDialog.Builder aleartDlg = null;// 生成aleartDlg = new AlertDialog.Builder(getContext());// ボタンでのみダイアログに影響を与えるaleartDlg.setCancelable(false)// タイトル設定.setTitle("タイトル")// メッセージ設定.setMessage("メッセージ")// ボタン設定(YesNo時は追加で.setNegativeButtonで対処).setPositiveButton("OK", new DialogInterface.OnClickListener(){ // ボタンがタッチされたら public void onClick(DialogInterface dialog, int whichButton){}})// 表示.show; プログレスダイアログ +... クルクルと回るものが表示されるダイアログを紹介。 ProgressDialog progressDlg = null;// 生成progressDlg = new ProgressDialog(getContext());// タイトル設定progressDlg.setTitle("タイトル");// メッセージ設定progressDlg.setMessage("メッセージ");// スタイル設定(クルクル回る)progressDlg.setProgressStyle(ProgressDialog.STYLE_SPINNER);// 表示progressDlg.show();// 表示終了progressDlg.dismiss(); バイブレータ バイブレータの搭載は至極簡単です。 .Java +... バイブレータを使う Vibrator vibrator;// バイブレータ取得vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE);// バイブレータ指定時間(ミリ秒)始動vibrator.vibrate( 100 );// バイブレータ停止vibrator.cancel(); Manifest +... バイブレータの権限を得る uses-permission android name="android.permission.VIBRATE" /uses-permission
https://w.atwiki.jp/tamorintech/pages/15.html
log4jで実装してみた。(2012/2/4 旧wikiから移行)参考サイト log4jとは(2012/2/4 旧wikiから移行) log4jで実装してみた。(2012/2/4 旧wikiから移行) 今までに学んだ内容でログ出力を行うサンプルコードを書いた。 Log4jSample.java package sandbox.log4j.sample1; import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; public class Log4jSample { public static void main(String[] args) { Log4jSample mainApp = new Log4jSample(); mainApp.execute(); } public void execute() { // Loggerインスタンスの生成. Logger logger = Logger.getLogger(Log4jSample.class); // log4j.propertiesを読み込む PropertyConfigurator.configure("bin/sandbox/log4j/sample1/log4j.properties"); // 各レベルでログを出力 logger.trace("TRACEログ"); logger.debug("DEBUGログ"); logger.info("INFOログ"); logger.warn("WARNログ"); logger.error("ERRORログ"); logger.fatal("FATALログ"); } } log4j.propertes # Appenderの定義. log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %5p %c{1} - %m%n log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=C \\Log4JTest\\Log4jSample.log log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d %5p %c{1} - %m%n # ルートカテゴリーの定義. log4j.rootCategory=INFO,stdout,file 実行するとコンソールには以下のとおりログが出力される。 2011-09-22 12 07 28,144 INFO Log4jSample - INFOログ 2011-09-22 12 07 28,144 WARN Log4jSample - WARNログ 2011-09-22 12 07 28,144 ERROR Log4jSample - ERRORログ 2011-09-22 12 07 28,144 FATAL Log4jSample - FATALログ また、C \\Log4JTest\\Log4jSample.logのファイルに上記と同じ内容のログが出力される。 サンプルコードを書いて rootCategory?rootLogger?という感じ。カテゴリ、ロガー、階層、log4j.propertiesの書き方などがまだよくわからん。 以下のように明示的にlog4j.propertiesの読み込みを記述しないと上手くいかなかった。(Webアプリケーションの場合クラスパスが通った場所にlog4j.propertiesを書いておけばこのようなコードは不要だったような気がしたが・・・) // log4j.propertiesを読み込む PropertyConfigurator.configure("bin/sandbox/log4j/sample1/log4j.properties"); 参考サイト TECHSCORE - Log4J Log4Jをいじる log4jとは(2012/2/4 旧wikiから移行) Jakartaプロジェクトで開発が進められているJavaプログラム用のログAPIである。 ログの出力先を様々に設定できる。ファイル、OutputStream、java.io.Writer、リモートlog4jサーバ、リモートUnix Syslogデーモン、NTイベントログなど log4jには以下の3つの主要コンポーネントがある。Logger - ロギングを行う部分をグループ化し必要なグループのログだけを出力することを可能にする。カテゴリーに優先順位を付けることにより様々な出力方法を指定できる。 Appender - ログの出力先を指定する。 Layout - ログの出力フォーマットを指定する。 log4Jは以下のログレベルを標準提供している(レベルが高い順)。利用者が任意のログレベルを追加することも可能。FATAL - 致命的なエラー。プログラムの異常終了を伴うようなもの。 ERROR - 予期しないその他の実行エラー。 WARN - 警告。廃要素のAPIの使用やAPIの不適切な使用、エラーに近い事象など。 INFO - 情報。実行時の何らかの注目すべき事象(開始や終了など)。 DEBUG - デバッグ用の情報。システムの動作状況に関する詳細な情報。 TRACE - デバッグ情報よりも更に詳細な情報。 使うときのざっくりした流れは以下な感じ。1.Loggerを作成する 2.Appenderを作成してLoggerにぶら下げる 3.Layoutを作成して、Appenderにぶら下げる 4.ログ出力をする。 上記手順の1~3(2~3?)は設定ファイル(log4j.properties)で外部ファイル化できる。
https://w.atwiki.jp/drip122/pages/34.html
暗号化後のバイト配列が16進数だとわからずにStringにして、ファイル出力しててはまった。 そもそも、ファイルに文字化けした暗号文が保存された時点で対策を打つべきだった。 文字化けしてる時点で、非可逆になることは想定できたはず。 *Java暗号・復号プログラム Blowfish方式の暗号・復号サンプルを示す。 import javax.crypto.spec.*; import java.security.*; import java.io.*; import org.apache.commons.codec.binary.Hex; public class Blowfish { /** * 暗号化するメソッドです。 * @param key 鍵です * @param text 暗号化したい文字列です */ public static String encrypt(String key, String text) throws IllegalBlockSizeException,InvalidKeyException,NoSuchAlgorithmException, UnsupportedEncodingException,BadPaddingException,NoSuchPaddingException { SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), "Blowfish"); Cipher cipher = Cipher.getInstance("Blowfish"); cipher.init(Cipher.ENCRYPT_MODE, sksSpec); byte[] encrypted = cipher.doFinal(text.getBytes()); return new String(Hex.encodeHex(encrypted)); } /** * 複合化するメソッドです。 * @param key 鍵です * @param text 複合化したい文字列です */ public static String decrypt(String key, String text) throws IllegalBlockSizeException,InvalidKeyException,NoSuchAlgorithmException, UnsupportedEncodingException,BadPaddingException,NoSuchPaddingException { byte[] encrypted = null; try { encrypted=Hex.decodeHex(text.toCharArray()); }catch(Exception e){ e.printStackTrace(); } SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), "Blowfish"); Cipher cipher = Cipher.getInstance("Blowfish"); cipher.init(Cipher.DECRYPT_MODE, sksSpec); byte[] decrypted = cipher.doFinal(encrypted); return new String(decrypted); } } -参考URL --http //pinoki.la.coocan.jp/wiki/?cmd=read page=Java%2F%B0%C5%B9%E6%B2%BD%2FBlowfish%CA%FD%BC%B0
https://w.atwiki.jp/programmerassistant/pages/15.html
//練習 コンストラクタの設計 //Pet2.java //Nekoクラスの設計 // namae フィールド:String型 // nakigoe フィールド:String型 //コンストラクタ /*引数 String型 s String型 k 処理 sをnamaeに代入 kをnakigoeに代入 ------------------------------------------------------------------ nakeメソッド 戻り値 なし void 引数:なし 処理:画面にnamaeとnakigoeを出力する ------------------------------------------------------------------ Pet2クラスの設計 mainメソッド 処理: ①Nekoクラスでmikeを作成し コンストラクタの引数は"ミケ"と"ミャウミャウ" ②Nekoクラスでtamaを作成し コンストラクタの引数は"タマ"と"ニャア" ③mikeのnakeメソッドを用いて実行結果のように出力する ④tamaのnakeメソッドを用いて実行結果のように出力する [実行結果] ミケの鳴き声はミャウミャウ タマの鳴き声はミャア */ class Neko{ String namae; String nakigoe; //コンストラクタの定義 Neko(String s,String k){ namae=s; nakigoe=k; } //nakeメソッド void nake(){ System.out.println(namae+"の鳴き声は"+nakigoe); } } public class Pet2{ public static void main(String args[]){ Neko mike = new Neko("ミケ","ミャウミャウ"); mike.nake(); Neko tama = new Neko("タマ","ミャア"); tama.nake(); } }
https://w.atwiki.jp/funf/pages/8.html
javac java -Xmx150M -Xms150M ヒープ容量の初期値と最大値を変更する。Xmxが最大のほう -client -server サーバー用、クライアント用のVMで起動する。クライアントのほうが起動時間がみじかい。サーバーのほうが処理時間が短いみたい。 -Xcomp すべてコンパイルしながら実行する。リアルタイム処理やサーバーみたいな同じ処理をず~っと動かしてるシステムだとあったほうが有効?(未実験) ガベージコレクションをすると遅くなる
https://w.atwiki.jp/ompmemo/pages/14.html
exc-tool-java
https://w.atwiki.jp/ce00582/pages/3846.html
import com.sun.j3d.utils.geometry.*; import com.sun.j3d.utils.universe.*; import javax.media.j3d.*; import javax.vecmath.*; public class game0821{ game0821(){ SimpleUniverse univ = new SimpleUniverse(); BranchGroup group = new BranchGroup(); group.addChild(new ColorCube(0.3)); Color3f lightc = new Color3f(1.8f, 0.1f, 0.1f); BoundingSphere bounds = new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0); Vector3f lightd = new Vector3f(4.0f, -7.0f, -12.0f); DirectionalLight light= new DirectionalLight(lightc, lightd); light.setInfluencingBounds(bounds); group.addChild(light); univ.getViewingPlatform().setNominalViewingTransform(); univ.addBranchGraph(group); } public static void main( String[] args ) { new game0821(); } }
https://w.atwiki.jp/to2015javacfirst/pages/14.html
まだ内容を掲載していません。
https://w.atwiki.jp/sevenlives/pages/550.html
クラス【class】(Java) 読み:くらす 英語:class 別名: 意味: クラスとはオブジェクト指向においての基本単位となる原型部品のことです。 このクラスからオブジェクトを生成【インスタンス化】し使うことになります。 Javaにおいてはプリミティブ?変数やインターフェースを除くすべてがこのクラス単位で書かなければなりません。 クラスには変数であるフィールド?と関数であるメソッドがあり、それらをメンバ?といいます。 Javaはメモリの有効活用によりクラス自身もオブジェクトとして扱えます。 クラスのまとまりを含めたものをパッケージ?といいます。 Javaのクラスには直接インスタンス化できない抽象クラスやインターフェースといった特殊な部品も存在します。 Javaのクラスはソースファイル?に記述します。 オブジェクト インスタンス ソースファイル(Java) クラスファイル(Java) メンバー フィールド? メソッド インターフェース 無名クラス 内部クラス 完全限定名(Java) 単純名(Java) クラス・リテラル? 2007年11月06日
https://w.atwiki.jp/shiryu_technical/pages/8.html
DBのDate型とJavaのDate型に代表されるように同一の内容を持つような型同士で保持する情報が異なる場合がある。 このページでは、Javaの型とDBの型のマッピング情報をまとめる。