約 2,878,705 件
https://w.atwiki.jp/dotcom/pages/89.html
VBだとdim。 使う変数はちゃんと宣言しましょう。 Javaはコンパイルエラーになっちゃうよ? 宣言は事前に。 VBでは適当に変数をつくってもとりあえずどうにかなっちゃったけど、Javaでは最初にしっかり変数の宣言をしておかないといけないのね。 これまで自分がいかにいい加減な作り方でやってたかがばればれー。 Int形。ちゃんと初期値も入れてあげてね。 Int cnt; VBならこう書くね! Dim cnt as Integer 使う時。 ・・・println(cnt + "個でしたよ"); VBならこう書くね! ・・・ cnt "個でしたよ" 違いのわかるヤツになりたいです。comでした。
https://w.atwiki.jp/installmaniax3/pages/110.html
Androidでのページ遷移とデータの引き継ぎ ?xml version="1.0" encoding="utf-8"? manifest xmlns android="http //schemas.android.com/apk/res/android" package="dentaku.com.sendaoi" android versionCode="1" android versionName="1.0" application android icon="@drawable/icon" android label="@string/app_name" activity android name=".dentaku" android label="@string/app_name" intent-filter action android name="android.intent.action.MAIN" / category android name="android.intent.category.LAUNCHER" / /intent-filter /activity activity android name=".subform" android label="@string/app_name" /activity /application /manifest /pre 呼び元 // Button01 onClickイベント private void Button01_onClick() { // インテントへのインスタンス生成 Intent intent = new Intent(Main.this,Sub_form.class); // メイン画面 EditText01 テキストを取得 CharSequence text = edittext.getText(); // サブ画面(インテント)にメイン画面 EditText01 テキストを送信 intent.putExtra("MAIN_FORM_TEXT", text); // サブ画面(インテント)の起動 startActivityForResult(intent,SHOW_SUB_FORM); } // メイン画面から呼び出した画面から戻る際に呼び出しされるメソッド @Override protected void onActivityResult(int requestCode, int resultCode,Intent data){ if (requestCode == SHOW_SUB_FORM) { if (resultCode == RESULT_OK){ edittext.setText(data.getCharSequenceExtra("SUB_FORM_TEXT")); } } } 呼び先 public void onCreate(Bundle savedInstanceState) { // ~ 省略 ~ // メイン画面から渡されたインテントオブジェクトを取得 Bundle extras = getIntent().getExtras(); if (extras != null){ // サブ画面 TextView01 へのインスタンス生成 TextView textView = (TextView) findViewById(R.id.TextView02); // メイン画面から送信された EditText01 に入力された文字列をサブ画面 TextView02 に設定 textView.setText(extras.getCharSequence("MAIN_FORM_TEXT")); } } // Button02 onClickイベント private void Button02_onClick(){ // インテントのインスタンスを生成 Intent intent = new Intent(); // メイン画面に送る文字列設定 CharSequence text = edittext.getText(); // メイン画面(インテント)に text に設定したテキストを送信 intent.putExtra("SUB_FORM_TEXT", text); // メイン画面(インテント)に返却コードを送信 setResult(RESULT_OK, intent); // サブ画面の終了 finish(); }
https://w.atwiki.jp/kimikage/pages/52.html
Javascriptメモ 数字のみ入力可能なText js DropDownList js submit js string formatのようなもの js string builderのようなもの js getter setter js 3桁フォーマット HTML5に関するメモ Canvas Web Storage Geolocation
https://w.atwiki.jp/n-3104/pages/14.html
JUnit4 Mockオブジェクトの利用 ソースの配置フォルダとパッケージ JUnit4 4からはアノテーションが使えてすっきりする。 POJOとして作成できる(TestCaseの継承が不要)。 テストメソッド名に「test」プレフィックスが不要。その代わり@Testアノテーションを付ける。 assertはorg.junit.Assertをstaticインポート。Eclipseのウィザードでクラスを作ると入れておいてくれる。 @Ignoreを利用すると、そのメソッドについてはテストしないように出来る。作成中のテストメソッドに使うと便利。 3までは junit.framework.- パッケージを利用したが、4からは org.junit.- を利用する。 @Parametersを使うことで、テストデータとテストデータの組み合わせの数だけテストを実行することが出来る。 @Test(timeout = 1000)とすることで、テストに掛かる時間にタイムアウトを設けられる。パフォーマンスが重要な処理などで利用できそう。 参考サイト |http //www.okisoft.co.jp/esc/testing/JUnit4-TestNG.html|4の使い方について丁寧に説明しているサイト。 |http //www.devx.com/Java/Article/31983+codeitemarea|JUnitのサイトで紹介されている4の解説サイト。英語だがサンプルコードもあり、概要がよく整理されている。@Parametersの例もある。 |http //www.junit.org/taxonomy/term/12|JUnitのホームページのArticlesのページ。他にも色々リンクがあり、例えばMockオブジェクトの利用法に関するリンクなどもある。 Mockオブジェクトの利用 バグがないプログラムのつくり方|http //www.amazon.co.jp/gp/product/479810714X/に記述があったが、Mockオブジェクトはテストクラスのインナークラスとすると管理がしやすいし、Mockオブジェクト内でassertを行ったり、クラスが呼ばれたかどうかを調べることも出来る。 具体的には、以下のようにHogeとFugaがあった際に、FugaのMockを作ることで以下のテストが出来る。 Hogeが追加された全てのFugaのfugafugaメソッドを実行しているか。HogeTestのcountフィールドを利用して確認している。 HogeがFugaのfugafugaメソッドを呼び出す際に正しくプレフィックスやサフィックスを追加しているか。HogeMock内のassertEqualsで確認している。 しかし、インナークラスにこんな使い方があるとは、勉強になる。 import java.util.ArrayList; import java.util.List; public class Hoge { List Fuga list = new ArrayList Fuga (); public void hogehoge(String message) { for (int i = 0; i list.size(); i++) { Fuga fuga = list.get(i); fuga.fugafuga("+++" + message + "+++"); } } public void addFuga(Fuga fuga) { list.add(fuga); } } public interface Fuga { void fugafuga(String message); } import static org.junit.Assert.assertEquals; import org.junit.Test; public class HogeTest { // HogeによってFugaのfugafugaメソッドが呼ばれた回数 private int count; private class FugaMock implements Fuga { public void fugafuga(String message) { // HogeがFugaのfugafugaを呼び出す際に、プレフィックスとサフィックスを // 正しく追加できているかを確認 assertEquals("+++Hello*+++", message); // HogeがFugaのfugafugaメソッドを実行した回数を確認するためインクリメント count++; } } protected void setUp() { this.count = 0; } @Test public void testHogehoge() { Hoge hoge = new Hoge(); hoge.addFuga(new FugaMock()); hoge.addFuga(new FugaMock()); hoge.hogehoge("Hello*"); assertEquals(2, this.count); } } ソースの配置フォルダとパッケージ バグがないプログラムのつくり方|http //www.amazon.co.jp/gp/product/479810714X/によると、テスト対象のソースと同一パッケージの同一フォルダが良いらしい。理由としては、別フォルダにするとテストクラスの作り忘れが起きやすいからだそうだ。確かにそんな気もするので、今後は同一フォルダに入れるようにしよう。 個人的には、パッケージは同じでもソースフォルダは別にした方が、テストクラス用のユーティリティクラスを作った際などに分かりやすくてよい気もするんだけど。この辺はプロジェクトの規模とメンバーのレベルによるのかな。
https://w.atwiki.jp/ochamemo/pages/12.html
オチャメモ TODO 基礎 javascriptの型 未定義オブジェクト 数値かどうかのチェック 空のオブジェクト 配列とハッシュ すべてはハッシュ JavaScriptにおけるメンバの定義 JavaScriptにおけるメンバの削除 for in 可変引数 コンストラクタ プロトタイプとは? プロトタイプの仕組み(プロトタイプチェーン) クラス定義 クラス継承 関数について NullとUndefined 配列 関数 apply()メソッドとcall()メソッド 演算子 等値演算子と同値演算子 thisとprototypeどっちで定義すればよいか? 参考リンク 非常に参考になる 読み物系 TODO javaのアクセス指定子の勉強 js.jarのjnlpの指定方法 js.jarのmavenの指定方法 基礎 javascriptの型 プリミティブ系 number--string--boolean-オブジェクト系--object---Number---String---Boolean---Array---[] null function 未定義オブジェクト 未定義オブジェクトかどうかを判定するには以下の方法がある。 // 以下は全部同義(undefined, !, null) var hoge; if (hoge == undefined) { alert("未定義(undefined)"); } if (!hoge) { alert("未定義(!hoge)"); } if (hoge==null) { alert("未定義(null)"); } 連想配列の未定義のチェック var hoges = new Array(); var hoge = hoges["hoge"]; if (hoge == undefined) { document.write("未定義"); } 数値かどうかのチェック if(!isNaN(value)){ document.write("数字"); } 空のオブジェクト var Object = {}; 配列とハッシュ var hash = { java 0, script 1}; var array = [ java , script ]; すべてはハッシュ var hello = {}; hello.world = function() { return "hello, world!" }; hello.hoge = hoge ; alert(hello.hoge); alert(hello[ hoge ]); alert(hello.world()); alert(hello[ world ]()); JavaScriptにおけるメンバの定義 var obj = new Object(); alert(obj.field); // 未定義。未定義の場合 undefined と評価される。 obj.field = 10; // 代入により field というメンバが定義された。 alert(obj.field); // 10 と評価される。 JavaScriptにおけるメンバの削除 var obj = new Object(); obj.field = 10; alert(obj.field); // 10 と評価される。 delete obj.field; // delete 演算子により fieldプロパティが削除される。 alert(obj.field); // 削除され未定義となったため undefined となる。 for in 連想配列からキーを取得できる var info = new Array(); info["name"] = "hoge"; info["type"] = "cat"; info[0] = "A"; info[1] = "B"; for( key in info ){ alert( key + " " + info[key]); } for in でオブジェクトのプロパティを列挙できる var obj = new Object(); obj.foo = value1 ; obj.bar = value2 for (var key in obj) { alert(key + " " + obj[key]); // keyにハッシュのキーが入る(プロパティ名) } 可変引数 argumentsオブジェクトを使うことにより動的にアクセス可能 function hoge(arg1, arg2) { alert(arg1 == arguments[0]); // true alert(arguments[3]); // 4 } hoge(1, 2, 3, 4); コンストラクタ // コンストラクタとは関数定義のこと。 var Hoge = function(){}; // だからこれもコンストラクタ。 function Hoge(){}; // で、これをnewしたらHogeオブジェクトのできあがり var hoge = new Hoge(); // フィールドを定義したい場合は以下のようにthisをつけて代入すればよい var Hoge = function(){ this.field1 = 0; this.field2 = hoge ; }; プロトタイプとは? プロトタイプとはjavaでいうインスタンス。-プロトタイプベースオブジェクト指向とはつまりインスタンスベースクラス指向のこと。-javaのようにクラスの雛形をもとに静的にクラスを生成するのではなく、インスタンスをベースにクラスを量産するというイメージ。**プロトタイプの仕組み(プロトタイプチェーン) コンストラクトした時点では、prototypeは通常、ただの空オブジェクト。 まずオブジェクト自身のプロパティから、該当のプロパティ名を探索 なかった場合、オブジェクトのprototypeオブジェクトのプロパティの中から該当する名前のプロパティを探す。 それでもなければ、そのプロトタイプオブジェクトのprototypeから探索する。 最終的になにもプロパティを持たないprototypeになるまでこれを繰り返す。 見つからなければ、そこで代入になる。参照だったらundefinedのエラーになる これがプロトタイプチェーン。 クラス定義 this,prototypeに定義したメンバは、newしないと参照できない。 定義した変数に直接メンバを設定するとクラス変数、クラスメソッドとなる。 var Hoge = function() { this.thisField = 10; this.thisMethod = function() { return hoge ; }; }; Hoge.prototype.protoMethod = function() { return hogehoge ; }; Hoge.prototype.protoField = 20; Hoge.FIELD = 30; // クラス変数 Hoge.METHOD = function() { return hogehogehoge ; }; // クラスメソッド var hoge = new Hoge(); // prototypeとthisはnewしないと参照できない alert( hoge.thisMethod() +hoge.thisMethod()); // = hoge alert( hoge.protoMethod() +hoge.protoMethod()); // = hogehoge //alert( hoge.METHOD() +hoge.METHOD()); // = エラー not a function alert( hoge.thisField +hoge.thisField); // = 10 alert( hoge.protoField +hoge.protoField); // = 20 //alert( Hoge.thisMethod() +Hoge.thisMethod()); // = エラー not a function //alert( Hoge.protoMethod() +Hoge.protoMethod()); // = 同上 alert( Hoge.FIELD +Hoge.FIELD); // = 30 alert( Hoge.METHOD() +Hoge.METHOD()); // = hogehogehoge クラス継承 prototypeにスーパクラスのインスタンスを設定すればよい。 // スーパクラス var Hoge = function() { this.thisField = 10; this.thisMethod = function() { return hoge ; }; }; Hoge.prototype.protoMethod = function() { return hoge ; }; Hoge.prototype.protoField = 10; Hoge.FIELD = 10; // クラス変数 Hoge.METHOD = function() { return hoge ; }; // クラスメソッド // 継承クラス var Fuga = function() {}; // これでFugaのプロトタイプがHogeになる。つまり継承したことになる Fuga.prototype = new Hoge(); var fuga = new Fuga(); alert( fuga.thisMethod() +fuga.thisMethod()); // = hoge alert( fuga.thisField +fuga.thisField); // = 10 alert( fuga.protoMethod() +fuga.protoMethod()); // = hoge alert( fuga.protoField +fuga.protoField); // = 10 // クラス変数へはアクセスできない alert( Fuga.FIELD +Fuga.FIELD); // = undefined fuga.thisField = 20; alert( fuga.thisField +fuga.thisField); // = 20 書き換わる fuga.protoField = 20; alert( fuga.protoField +fuga.protoField); // = 20 書き換わる fuga.thisMethod = function() { return fuga ; }; alert( fuga.thisMethod() +fuga.thisMethod()); // = fuga 書き換わる fuga.protoMethod = function() { return fuga ; }; alert( fuga.protoMethod() +fuga.protoMethod()); // = fuga 書き換わる // コンストラクタで上書きしたらどうなるか? // てかこれが本来の継承 var Piyo = function() { this.thisField = 20; this.thisMethod = function() { return piyo ; }; }; Piyo.prototype = new Hoge(); var piyo = new Piyo(); alert( piyo.thisMethod() +piyo.thisMethod()); // = piyo 書き換わる alert( piyo.thisField +piyo.thisField); // = 20 書き換わる 関数について 関数内のthisはグローバルオブジェクトのプロパティを示す。 function add(x, y) { this.result = x + y; // これはグローバルのresultを示す。 } add(2, 5); alert(result); NullとUndefined 未定義変数 alert(sValue); // sValueが前もって宣言されていないため、エラーとなる → sValue is not defined null変数 var sValue; alert(sValue); // エラーは起こらないが、undefinedと表示される 配列 配列 var hoge = []; // var hoge = new Array(); とも記述できる。 var hoge2 = [1,2,3,4]; var hoge3 = [1.1, true, "a"]; // ひとつの配列にどんな型も入れられる。 push, pop var hoges = new Array(); hoges.push(0); // 配列の最後に追加 hoges.push(1); hoges.push(2); while (hoges.length != 0) { // 配列の最後を取り出す alert(hoges.pop()); // 2, 1, 0 の順番で表示 } unsift, shift var hoges = new Array(); hoges.unshift(0); // 配列の最初に追加 hoges.unshift(1); hoges.unshift(2); while (hoges.length != 0) { // 配列の最初を取り出す alert(hoges.shift()); // 2, 1, 0 の順番で表示 } 関数 関数宣言はコードの実行より前に解釈される。 c言語で言うstatic変数を関数内にもつ方法 uniqueInteger.counter = 0; // 関数自身にプロパティを設定する。 function uniqueInteger() { return uniqueInteger.counter++; // このプロパティは保持される。 } apply()メソッドとcall()メソッド f.call(o, 1, 2); これは次のように記述したのと同じ o.m = f; o.m(1,2); delete o.m; applyは引数部分を配列で渡す。 f.apply(o, [1,2]); 演算子 基本型をチェックする(typeof) // number, string , boolean , object, function のいずれかを返す var hoge = (typeof value == "string"? "moji" "sonota"; オブジェクトの型をチェックする var d = new Date(); d instanceof Date; // true d inscanceof Object; // true d inscanceof Number; // false 等値演算子と同値演算子 == は型変換してできるだけ等しくなるようにする。 === は型が違えばその時点で、偽になる。 ※== が浅い比較、===が深い比較ではないので注意 オブジェクト同士の比較 ==でも===でも、同じ参照をさしている場合のみ、等しいと判断される。 同じプロパティ、同じ要素を刺して言うことを判定するには個別にチェックしなくてはならない。 nullとundefined ==では、nullもundefindeもnull(false)と判定されるが、===ではより厳密になるため、両者は区別される。 thisとprototypeどっちで定義すればよいか? this--プロパティが上書きできてしまうので好ましくない インスタンスごとにメソッドを定義するのでメモリ効率がよくない prototype--prototyepのプロパティはそれを介したインスタンスで共通に参照される したがってメモリ効率がよい とくにメソッドはprototypeに定義したほうがよい。 var Class = function(){ this.hoge = 0; this.fuga = function() { alert( fuga ); }; }; // var Class = function(){ this.hoge = 0; this.prototype.fuga = function() { alert( fuga ); }; }; 参考リンク 非常に参考になる JavaScriptにおけるオブジェクトの基本的性質-JavaScriptの関数とメソッド-プロトタイプ(prototype)によるJavaScriptのオブジェクト指向 読み物系 javascriptを理解するためのたった2つの大切なこと--http //anond.hatelabo.jp/20070620200618--http //anond.hatelabo.jp/20070622101313-四則演算を JavaScript で実装する--http //d.hatena.ne.jp/nitoyon/20070629/four_operations_implementation_in_javascript-JavaScript 世界で最も誤解されたプログラミング言語--http //d.hatena.ne.jp/brazil/20050829/1125321936-私は如何にしてJavascriptのprototypeを身につけたか。--http //blog.xole.net/article.php?id=560-かつてサーバーサイドJavaScriptは実在した--http //neta.ywcafe.net/000573.html-Rhino on Rails--http //www.aoky.net/articles/steve_yegge/rhino-on-rails.htm
https://w.atwiki.jp/glicotan/pages/26.html
JavaのHttpUrlConnectionでBasic認証を利用する方法 Basic認証+JavaからTwitterにポスト Java, Twitter | 22 34 | OAuth認証その2を書こうと思ったけど、なんとなく気分でBasic認証での投稿を試みてみた。 さくっとできた。OAuthに比べてすごい楽。 Basic認証を通過するにはAuthenticatorクラスを利用すると良さそうです。 Authenticatorのサブクラスを作成し、getPasswordAuthentication()をオーバーライドします。 下のソースではBasicAuthenticatorというクラスを作成し、そのインスタンスを引数として Authenticator.setDefault(Authenticator)を呼出しています。 あとはTwitterのAPIを叩くのみ。 http //twitter.com/statuses/update.xmlに対し、URLエンコードしたstatusパラメータをPOSTで渡しています。 これで投稿完了です。 メインのクラスです。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.Authenticator; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; public class Basic { public static void main(String[] args) { String user = "user"; String password = "password"; try { URL url = new URL("http //twitter.com/statuses/update.xml?status=" + URLEncoder.encode("API+BASIC認証でテスト投稿", "UTF-8")); HttpURLConnection connection = (HttpURLConnection)url.openConnection(); Authenticator authenticator = new BasicAuthenticator(user, password); Authenticator.setDefault(authenticator); connection.setRequestMethod("POST"); connection.connect(); int responseCode = connection.getResponseCode(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ } } } Basic認証用のクラス(Authenticator)のサブクラスです。 import java.net.Authenticator; import java.net.PasswordAuthentication; public class BasicAuthenticator extends Authenticator { private String password; private String user; public BasicAuthenticator(String user, String password){ this.password = password; this.user = user; } protected PasswordAuthentication getPasswordAuthentication(){ return new PasswordAuthentication(user, password.toCharArray()); } }
https://w.atwiki.jp/hanmanu/pages/18.html
■Windows に JAVA_HOME を設定する手順 - 環境情報 ------------------- WindowsXP HomeEdition(SP2)のクラシックテーマでテスト - 導入手順 ------------------- ※管理権限を持たない場合、設定できないことがあります。 1.システムのプロパティ画面を開き、[環境変数]ボタンを押下します 2.環境変数画面を開き、システム環境変数の下にある[新規]ボタンを押下します 2.新しいシステム変数画面を開き、以下の値を設定したら[OK]ボタンを押下します 変数名:JAVA_HOME 変数値:インストールするフォルダを入力する (ex.C \Program files\Java\[対象となるJava環境]\bin))
https://w.atwiki.jp/nicepaper/pages/254.html
今日はOnclickについて勉強していこうと思います。 ボタン(htmlのINPUTタグ)がクリックされた時にJavaScriptを実行したい 場合があります。 INPUTタグのOnClick属性にJavaScriptを記述することで、ボタンクリック時にJavaScriptを実行する事が可能になります。 実際にコードを書いていきます。 コード head meta charset="utf-8" title onclick /title script language="javascript" type="text/javascript" function OnButtonClick() { target = document.getElementById("output"); target.innerHTML = "修行"; } /script /head body input type="button" value="男は" onclick="OnButtonClick();"/ br / br / div id="output" /div /body /html 実行結果 このボタンをクリックすると、 解説 上に書かれたコードを解説していきます。 "output"のIDを持つdivを作り、そのタグの内部のテキストに"修行"の文字列を挿入します。 INPUTのonclick属性に実行したいJavaScriptを記述します。 今回の場合、呼び出す関数名のみを記述したため、ボタンが押されるとOnButtonClick()関数が実行される動作となります。 そこで、functionにより関数を定義しています。 おまけ input type="button" value="サブウィンドウを閉じる" onClick="window.close()" あるいは a href="javascript ;" onclick="window.close();" このように記述する事でウィンドウを閉じる事が出来ます。 以上
https://w.atwiki.jp/java_pro/pages/61.html
public class CountTenA1 extends Thread{ public static void main(String[] args){ CountTenA1 ct = new CountTenA1(); ct.start(); while (true){ for (int i = 0; i 10; i++){ System.out.println("main " + i); } } } public void run(){ while (true){ for (int i = 0; i 10; i++){ System.out.println("run " + i); } } } }
https://w.atwiki.jp/m_shige1979/pages/554.html
基本 基本プログラム sample01.java import java.io.*; /* サンプルソース */class sample01{ public static void main(String args[]){ // hellow world test System.out.println("Hello Java World."); }} ソースファイルとクラス名は同一にすること? コメントは /* ~ */ の範囲、または //の行である コンパイル・実行 C \tools\java_src\sample01 javac sample01.java C \tools\java_src\sample01 java sample01 Hello Java World. C \tools\java_src\sample01 javacコマンドでコンパイルを行なう classpathを指定する場合は指定する必要あり