クラス名の後に書く()が基本となるプライマリコンストラクター。 特に引数がなければ省略して以下のようにも書ける(引数なしコンストラクターが自動生成される?) プライマリーコンストラクターは必ず実行されなければならない。 別のコンストラクター(後述のセカンダリーコンストラクター)を書く場合は、その中でthisキーワードを使ってプライマリーコンストラクターを呼ぶ必要がある。 ※プライマリーコンストラクターを明示的に記載しない場合は、セカンダリーコンストラクターで呼び出す必要はない 引数をとる
クラス名の後に書く()が基本となるプライマリコンストラクター。 特に引数がなければ省略して以下のようにも書ける(引数なしコンストラクターが自動生成される?) プライマリーコンストラクターは必ず実行されなければならない。 別のコンストラクター(後述のセカンダリーコンストラクター)を書く場合は、その中でthisキーワードを使ってプライマリーコンストラクターを呼ぶ必要がある。 ※プライマリーコンストラクターを明示的に記載しない場合は、セカンダリーコンストラクターで呼び出す必要はない 引数をとる
今日も相変わらず 「Kotlinイン・アクション」 を読みながらの写経です。 Kotlinイン・アクション 作者: Dmitry Jemerov,Svetlana Isakova,長澤太郎,藤原聖,山本純平,yy_yank出版社/メーカー: マイナビ出版発売日: 2017/10/31メディア: 単行本(ソフトカバー)この商品を含むブログ (2件) を見る Java のクラスは1つ以上のコンストラクを持ちます。 Kotlin も似ていますが プライマリ(primary)コンストラクタとセカンダリ(secondary)コンストラクタを区別している点が異なります。 また、初期化ブロック(initializer block)に追加の初期化用ロジックを記述する事ができます。 プライマリコンストラクタ 以下はKotlinのクラス宣言になります。 class Person(val fullName: S
Android Studioを使い、Kotlin言語の特徴を解説する本連載「Android Studioで始めるKotlin入門」。これまでの連載では、Kotlinの基本的な構文からNull安全に関する機能までを説明しました。 連載第4回の今回から、Kotlinのクラス関連機能について扱っていきます。クラス関連の機能はKotlinプログラミングでも重要な位置付けとなるため、今回から次の第5回まで連続で扱っていく予定です。これまでの機能と同様、クラス関連機能にもJavaとの共通点と相違点の両方があります。基本的な概念を共通としながらも、Android開発を含めた実際の開発現場で便利な機能がサポートされています。 Kotlinにおける「クラス」の基本 Kotlinのクラスに関する基本的な概念はJavaと似通っています。リスト1は2つのメソッドを持つクラスの定義と、その使用例です。 //基本的な
Android Studioを使い、Kotlin言語の特徴を解説する本連載「Android Studioで始めるKotlin入門」。連載第5回目の今回は、前回に続き、「継承」など、「クラス」周りの機能を扱っていきます。また、継承に関連して「スマートキャスト」機能についても解説します。 クラスの継承 Kotlinのクラス継承は基本的にJavaの考え方を踏襲していますが、幾つか異なる点も存在します。 基底はObjectクラスではなくAnyクラス Kotlinのクラスは全て「Any」というクラスを継承しています。Kotlinのクラスは全て非Null型のため、Null許容型であるJavaのObjectのサブクラスとなることはできません。そのため、非Null型として定義されたAnyクラスがKotlinにおける全てのクラスのスーパークラスとなっています。AnyのさらにスーパークラスとしてNull許容型
目次 JavaのNullPointerException Null安全(Null Safety)とは nullableとnon-null まとめ JavaのNullPointerException Javaでプログラミングを行う際、最も多く発生するエラーの1つがNullPointerExceptionです。NullPointerExceptionは参照が無い値にアクセスしようとした時に発生するエラーです。 例えば以下のプログラムは問題なく動作します。 String message = "こんにちは!"; int i = message.length(); System.out.println("「" + message + "」は" + i + "文字です。"); ここで、messageに値を入れるのを忘れてnullにしたとします。 String message = null; int i
■環境Kotlin Playground(https://play.kotlinlang.org/) Kotlin 1.6.10 ■println()関数を用いて値/テキストの出力を行うでは、早速println()関数を用いて値/テキストの出力を行うスクリプトを書いていきます。 ■コードfun main() { println("こんにちは、世界") }funでmain()という関数を宣言し、main()関数を実行すると、println()関数が実行され、値/テキストが出力されます。今回はprintln()関数の括弧内に引数,パラメータとしてテキスト(日本語)を渡し、出力する形となります。 ■実行・検証スクリプトを書けたので、実行・検証を行います。Kotlin Playground(https://play.kotlinlang.org/)の右上にある「Run」ボタンをクリックします。 ク
関数を抽象化するメリット簡単に言ってしまうと、高階関数は通常の関数をより抽象化したものです。まず「関数を抽象化する」ことの意義を考えてみましょう。 こんな関数はダサすぎる例えば次のような処理を関数で表現するとします。 “鮭弁当”を作る“唐揚げ弁当”を作るこの2つを何も考えず、そのまま関数にするとこんな感じになります。 //鮭弁当を作る関数 fun makeSalmonBento(): String = "鮭弁当" //唐揚げ弁当を作る関数 fun makeFriedChickenBento(): String = "唐揚げ弁当"println(makeSalmonBento()) //鮭弁当 println(makeFriedChickenBento()) //唐揚げ弁当これで望んだ処理はできますが、はっきり言ってくそダサいですよね? 関数の形を固めすぎているために応用が効きません。そのた
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く