初心者向け Kotlin チュートリアル (例)

コトリンとは何ですか?

コトリン は、Java 仮想マシン (JVM) 上で実行されるオープンソースの静的型付けプログラミング言語です。 これは、オブジェクト指向プログラミング (OOP) と関数型プログラミングを、制限のない自己完結型の独自のプラットフォームで組み合わせたものです。 また、小型コードによる機能のツイン化も可能になります。 Kotlin は、JetBrains によって設計された汎用プログラミング言語です。

Kotlin の歴史

Kotlin の歴史の重要なランドマークを以下に示します。

イベント
2016 Kotlin v1.0 がリリースされました
2017 Android での kotlin のファーストクラスサポートに関する Google の発表
2018 Kotlin v1.2 には、JVM と JavaScript の間でコードを配布するためのアドオンが付属しています
2019 Google、Android アプリケーション開発者向けの優先プログラミング言語として Kotlin を発表
2021 20 年 2021 月 1.5.31 日に、Kotlin vXNUMX がリリースされました。

Kotlin を使用する理由

Kotlin が広く使用されている重要な理由をいくつか示します。

  • Kotlin は、読み書きが非常に簡単な静的型付け言語です。
  • Kotlin プログラムでは、プログラム内にセミコロンは必要ありません。 これにより、コードが簡単になり、読みやすくなります。
  • この言語を使用すると、さまざまな方法で Java からの情報を交換および使用できます。 さらに、Java コードと Kotlin コードは同じプロジェクト内に共存できます。
  • Kotlin の型システムは、コードから NullPointerException を排除することを目的としています。
  • Kotlin で新しいコードを作成する時間が短縮されます。 kotlin コードのデプロイと大規模な維持がさらに簡単になります。

コトリンの特徴

ここでは、プログラミング言語の進歩の道筋を確実にする Kotlin の機能をいくつか紹介します。

トリミングされたコーディング:

Kotlin は OOPs ベースのプログラミング言語で、コード行を最大 40 % トリミングできるため、ソフトウェアまたは Web 開発に理想的な選択肢となります。

オープンソース:

Android 用 Kotlin は JVM を利用し、OOP の機能と関数指向プログラミングを組み合わせます。

高速コンパイル:

Kotlin を使用するとコードのコンパイルが簡単になり、Android 開発のパフォーマンスが向上します。また、コード全体でどのタイプのデータ関数を使用できるかについても説明します。

拡張機能:

Kotlin は、コードを変更せずにさまざまな拡張機能をサポートできます。 開発者にとって既存のコードをより魅力的で素晴らしいものにするのに役立ちます。

例:

Fun String.removeFirstLastChar():
String = this.substring(1, this.length -1)

このコードは、文字列の最初と最後の文字をトリミングするのに役立ちます。次のように適用できます。

Val string1 = "Today is cloudy."
Val string2 = string1.removeFirstLastChar()

ヌルセーフティ:

Kotlin では、以下の Kotlin の例に示すように、システムは null 参照と非 null 参照を区別します。

たとえば、文字列変数は null を保持できません。

Var string1: String = "Today is Sunday"
String1 = null  // compilation error
To permit null, we can adjoin the nullable variable :
Var string2: String? = "Today is Sunday"
String2 = null
print(string2)

相互運用可能:

Kotlin コードは Java で使用でき、Java コードは Kotlin で使用できます。 ですので、もし知識があれば、 おっとっと プログラミングが得意な場合は、Kotlin の開発に簡単に切り替えることができます。 また、Java で書かれたアプリケーションがあれば、Kotlin 環境でも使用できます。

堅牢なツール:

Java と同様に、Kotlin コードも IDE またはコマンドライン インターフェイスを使用して作成できます。 IDE での作業が容易で、構文エラーも大幅に減少します。 同時に、コマンドライン インターフェイスを使用する場合は、最初にコードをコンパイルする必要があります。

スマートキャスト:

スマート キャストは基本的に、アプリケーションのコストを削減し、速度やパフォーマンスを向上させるのに役立ちます。 型キャストまたは不変値を使用してコードの効率を管理します。

たとえば、文字列が識別された場合、その長さと数はスマート キャスト機能を使用して見つけることができます。

Val string1: Any = "Today is Monday"
when(string1)
{
is String  -> string1.length
Is Int -> string1.inc()
}

低導入コスト:

Kotlin は、導入コストが削減されるため、企業に好まれています。 最も重要なことは、開発者、特にプログラミングのバックグラウンドを持つ開発者にとって、学習が簡単であることです。

Kotlin 環境のセットアップ

Following これらの手順は、Kotlin をインストールして作業環境をセットアップするのに役立ちます。

ステップ 1) Java をインストールする

前に説明したように、Kotlin は Java に基づいているため、Kotlin の導入を計画する場合は、最初に Java をインストールする必要があります。 参照してください Java インストールのチュートリアル.

ステップ 2) Java IDE をインストールする

幸いなことに、複数あります Java IDE から選択します。 ここでは、作業を少し簡単にするためにダウンロードリンクを提供しています。

この Kotlin チュートリアルでは、 Eclipse.

ステップ 3) Kotlin をインストールする

Kotlin をインストールする場合 Eclipseのヘルプセクションに移動します。 Eclipse をクリックして Eclipse マーケットプレイスのオプション。

Kotlin 環境のセットアップ

次に、Kotlin キーワードを検索に入力します。 box。 「Go」オプションをクリックしてプラグインをリストします。 Kotlin プラグインのリンクが表示されるので、指定されたリンクからプラグインをインストールする必要があります。

Kotlin 環境のセットアップ

を再起動してください Eclipse IDE, インストールが完了したら。右上隅にショートカットアイコンがあります。 Eclipse IDE。素早いアクセス方法です。

Kotlin 環境のセットアップ

Kotlin にアクセスする別の方法 Eclipse IDE は、 Windows、パースペクティブ、「パースペクティブ」を開き、「その他」オプションを選択します。ここで、インストールされているプラ​​グインのリストを確認できます later、以下に示すように。

Kotlin 環境のセットアップ

Kotlin のインストールを確認したら、次のステップで最初の Kotlin プログラムを作成しましょう。

ステップ 4) 最初の Kotlin プログラム

最初の Kotlin プロジェクトから始めます。 [ファイル] メニューから [新規] オプションを選択し、その他を選択して、リストから新しい Kotlin プロジェクトを開始します。

Kotlin 環境のセットアップ

次に、プロジェクトの名前を定義する必要があります。これで、Kotlin を使用する準備が整いました。

Kotlin 環境のセットアップ

これらの簡単な手順で、簡単にダウンロードできます Eclipse システム上に Kotlin をインストールして、すぐに最初の Kotlin プログラムを作成します。

ArchiKotlin の構造

しっかりした造り archiアプリケーションがその機能をスケールアップし、エンドユーザーベースの期待に応えるためには、この構造が重要です。 Kotlin には独自の独特の特徴があります archiメモリを割り当て、開発者とエンドユーザーに高品質の結果をもたらすための構造。

Kotlin のコルーチンとクラス archi定型コードの生成を減らし、パフォーマンスを増幅し、効率を強化するような方法でコアを保護します。特に、さまざまな種類の言語を割り当てている場合には、kotlin コンパイラーが異なる反応を示すさまざまなシナリオが存在します。

ArchiKotlin の構造
ArchiKotlin の構造

archi構造図を見ると、コードの実行が 3 つの簡単なステップで行われることがわかります。

  1. 最初のステップでは、「.kt」または kotlin ファイルがコンパイラーに追加されます。
  2. XNUMX 番目のステップでは、Kotlin コンパイラーがコードをバイトコードに変換します。
  3. XNUMX 番目のステップでは、バイトコードが Java仮想マシン そしてJVMによって実行されます。

いくつかのバイトコード化されたファイルが JVM 上で動作すると、ファイル間の相互通信が活発になります。これが、Java の相互運用性と呼ばれる Kotlin の機能が誕生した理由です。

Kotlin から JavaScript への変換は、Kotlin が JavaScript をターゲットとするときに発生します。

JavaScript のターゲットが選択されると、Kotlin と連携するライブラリの一部である Kotlin のコードはすべて JavaScript であふれます。 ただし、Java Development Kit(JDK)や使用されるJavaライブラリは除きます。

このような操作では、Kotlin 以外のファイルは考慮されません。 JavaScript をターゲットにしている間、.kt ファイルは Kotlin コンパイラーによって ES5.1 に変換され、JavaScript 用の一貫したコードが生成されます。 Kotlin コンパイラーは、最適なサイズの出力、既存のモジュールとの相互運用性、標準ライブラリと同じ機能、JavaScript で読み取り可能な出力を目指します。

この議論から、Kotlin コンパイラーはより効率的で有能な独立したコードを作成でき、その結果、さらに高パフォーマンスのソフトウェア製品が得られることは明らかです。

Kotlin 変数

変数は、プログラム内で操作・参照するデータを格納するために使用されます。 これは基本的に、データを保存し、説明的なエイリアスを待つラベルを付けるユニットであり、プログラムが読みやすく、理解しやすいものになります。 つまり、変数は情報を収集するための入れ物であると言えます。

Kotlin では、すべての変数を宣言する必要があります。 ただし、変数が宣言されていない場合は、構文エラーが表示されます。 また、変数の宣言によって、割り当てられるデータのタイプが決まります。wing 変数に格納します。 Kotlin では、val キーワードと var キーワードを使用して変数を定義できます。 Kotlin で変数を宣言する構文は次のとおりです。

Var day = "Monday"
Var number = 3

ここでは、値が「」であるローカル変数 day を宣言しました。Monday' 型が String で、値が 3 で型が Int の別のローカル変数番号です。これは、ここではリテラルの型が整数 3 であるためです。

ローカル変数は慣例的に宣言され、同時に初期化されます。neo普通に。 Kotlin 変数の初期化中に特定の操作を実行することもできます。

同じデータ型の変数に対して演算を実行できます。ここでは、num1 と num2 は両方とも同じデータ型 (Int) ですが、day は文字列データ型です。 したがって、エラーが表示されます。 ここでは、Kotlin で変数を定義する方法をもう XNUMX つ紹介します。

var day : String = "GURU99"
var num : Int = 100

var キーワードと val キーワードが互いにどのように異なるかを見てみましょう。

変数:

Var は、任意のプログラミング言語で使用される汎用変数のようなもので、XNUMX つのプログラム内で複数回利用できます。 さらに、プログラム内でいつでもその値を変更できます。 したがって、それは可変変数として知られています。

Kotlin の可変変数の例を次に示します。

var num1 = 10
Var num2 = 20
Num1 = 20
print(num1 + num2) // output : 40

ここで、num1 の値 20 は、num1 の以前の値 10 によって上書きされます。したがって、num1 + num2 の出力は 40 ではなく 30 になります。

価値:

Val は定数変数のようなもので、その値を変更することはできません later どちらも 1 つのプログラム内で複数回割り当てることはできず、特定のプログラム内で 1 回だけ使用できます。したがって、これは不変変数として知られています。

Kotlin の不変変数の Kotlin プログラムの例を次に示します。

Val num1 = 10
Var num2 = 20

ここで、num1 の値 10 は定数 val 型であるため、新しい num1 の値 20 で上書きすることはできません。 したがって、出力は 30 ではなく 40 になります。

Note: Kotlin では、可変変数よりも不変変数が優先されます。

Kotlin のデータ型

データ型は関連付け可能な値のセットであり、それらに対して実行できる操作を記述します。他のプログラミング言語と同様に、Kotlin にも、Int、Boolean、Char、 Double, etc.

Kotlin では、すべてのデータ型がオブジェクトとして考慮されます。

この Kotlin 基本チュートリアルでは、Kotlin で使用される事前定義されたデータ型について詳しく見ていきましょう。

数字:

Kotlin は、整数と浮動小数点数としてサブカテゴリに分類される、数値として知られる一連の組み込みデータ型を提供します。

整数 :

整数は、次の XNUMX つのタイプがある数値のカテゴリです。

サイズ (ビット) 最小値 最大値
バイト 8 -128 127
ショート 16 -32768 32767
int型 32 -2,147,483,648(-231) 2,147,483,647(231 – 1)
長い 64 -9,223,372,036,854,775,808(-263) 9,223,372,036,854,775,807(263 – 1)

浮動小数点数:

浮動小数点数は、一部の XNUMX 進数値を保持する非整数です。

Float: Float は 32 ビットの単精度浮動小数点値です。

例: var: Float x = 3.25600

Double: Double 64ビットです double – 精度の浮動小数点値。

例: 変数: Double y = 2456.345587

ブール値:

Kotlin のブール値データ型は、論理値を表すために重要です。 ブール値には true または false の XNUMX つの値しかありません。

例: 有効日 = true

有効日 2 = false

キャラクター :

Kotlin の文字は、char と呼ばれるキーワードを使用して表現されます。 Kotlin では、一重引用符は char の宣言を表します。 Java では、kotlin では使用できない数値として char が使用されることがあります。

例:

val onechar = 'x'
print(onechar) //  output : x
Val onedigit = '7'
print(onedigit) // output : 7

Kotlin 型変換または Kotlin 型キャスト

型変換は、ある型のデータ変数を別のデータ型変数に変換する手順です。 それは非常に、タイプ キャストとしても知られています。

特に、Java では、暗黙的な型変換、または小さいデータ型から大きいデータ型への暗黙的な型キャストがサポートされています。

For Example : int abc = 15;
Long bcd = abc; // compiles successfully

ただし、kotlin では、小さいデータ型から大きいデータ型への暗黙的な変換はまったくサポートされておらず、int データ型を暗黙的に long データ型に変換することはできません。

For Example : var abc = 15
Val bcd : Long = abc // error

ただし、Kotlin では型変換は明示的に行われます。 ここでは、あるデータ型変数から別のデータ型変数への変換をガイドするヘルパー関数について説明します。

あるデータ型を別のデータ型に変換するためにあらかじめ所有されている特定のヘルパー関数があります。

toInt()

toByte()

toShort()

toChar()

toLong()

toFloat()

〜へDouble()

For Example : var abc = 15
Val bcd : Long = abc.toLong() // compiles successfully

Kotlin オペレーター

演算子は、変数と値を持つオペランドの演算を保証する重要な特殊文字または記号です。 Kotlin には、算術演算、代入演算、比較演算などのさまざまな演算で使用される一連の演算子があります。

算術演算子:

算術演算子は、加算、減算、乗算、除算、および剰余に使用されます。

演算子 意味
+ 加算 (文字列の連結にも使用)
減算演算子
* 乗算演算子
/ ディビジョンオペレーター
% モジュラス演算子

例:

var x = 10
var y = 20
var z = ( ( x + y ) * ( x + y ) ) / 2     

ここに次の出力がありますwing コードは 45 です。

比較演算子:

比較演算子は、XNUMX つの値、XNUMX つの変数、または XNUMX つの数値を比較するために使用されます。 これは、大なり記号 ( > )、小なり記号 ( < )、および等しい記号 ( ==)、不等号記号 ( != )、大なり記号 ( >= )、小なり記号とともに使用されます。記号(<= )。 結果は常に true または false になります。

例:

var x = 10
Var y =20
Var z = x < y // Output : true
Var w = x > y // Output : false
Var m = x == y // Output : false

代入演算子:

代入演算子は、算術演算された値を割り当てるために使用されます。 +=、-=、*=、/=、%= などの記号と一緒に使用されます。

例:

var x = 10
var y = 20
var x + = y // Output : 30
Var y - = x // Output : 10
Var x * = y // Output : 200

インクリメント演算子とデクリメント演算子:

インクリメント演算子とデクリメント演算子は、変数または数値の値を増減するために使用されます。 ++ や — などの記号を使用して使用されます。

インクリメントとデクリメントには、プレインクリメント++a、ポストインクリメントa++、プレデクリメント-b、ポストデクリメントb-のXNUMX種類があります。

例:

var a = 10
var b = 20
var c = a++ // Output: 11
var d = b— //Output : 19     

Kotlin 配列

配列は同種のデータ型のセットであり、連続したメモリ位置に同じ型のデータを格納するために使用される最も基本的なデータ型の XNUMX つです。 配列は、単一の場所に格納されている複数のデータを簡単に検索または並べ替えできるように、あらゆるプログラミング言語でのデータの編成にとって重要です。

Kotlin では、配列はネイティブ データ型ではなく、同じデータ型の変更可能なコラボレーションです。

Kotlin の配列の特定のプロパティを次に示します。

  • 配列のサイズは、一度宣言すると変更できません。
  • Kotlin の配列は変更可能です。
  • 配列は連続したメモリ位置に格納されます。
  • 配列には、a[1]、a[2] などのインデックスを使用してアクセスできます。
  • 配列のインデックスはゼロ、つまり a[0] から始まります。

Kotlin では、XNUMX つの異なる方法で配列を定義できます

arrayOf() 関数を使用する場合:

Kotlin では、ライブラリ関数が主に使用されます。 このようなライブラリ関数の XNUMX つは、arrayOf() 関数です。これは、変数の値を関数に渡すことによって配列を定義するために使用されます。

例: arrayOf() 関数を使用した配列の暗黙的な型宣言

val x = arrayOf(1,2,3,4,5,6,7,8,9)

例: arrayOf() 関数を使用して配列の宣言を明示的に型指定します。

Val y = arrayOf<Int>(1,2,3,4,5,6,7,8,9)

配列コンストラクターを使用する場合:

Kotlin には Array という名前のクラスがあります。 したがって、コンストラクターの配列を使用して配列を作成することが可能です。 コンストラクターの配列は XNUMX つの主要なパラメーターを保持します。

Kotlin の配列のインデックスとは何ですか?

配列インデックスを受け入れてインデックスの初期値を返す関数。

例:

val abc = Array(7 , { i -> i*1})

ここでは、配列の値は 7 で、要素の値を初期化するためにラムダ式が使用されます。

特定の関数を使用して配列にアクセスし、変更するさまざまな方法もあります。 したがって、クラス配列のオブジェクトにアクセスするために使用される XNUMX つのメンバー関数 get() と set() があります。

例:

val x = arrayOf(10,20,30,40,50,60,70,80,90)
val y = x.get(0) // Output 10

ここでは、配列のインデックス 10 の値が 0 であるため、出力は 10 になります。

注: get() は単一の値のみを受け取ります

例:

val x = arrayOf(10,20,30,40,50,60,70.80.90)
val y = x.set(2, 3) //

出力 : 30 40

ここでは、配列のインデックス 30 の値が 40、インデックス 2 の値が 30 であるため、出力は 3 と 40 になります。

注: set() は配列の複数の値を受け取ります。

Kotlin 文字列

文字列は、どのプログラミング言語でも基本的なデータ型です。 文字列は単なる文字のシーケンスです。 String クラスは文字列を表します。 Kotlin では、すべての文字列は String クラスのオブジェクトです。つまり、文字列リテラルはクラスのインスタンスとして実装されます。

構文:

 Val myString = "Hey there!"

Kotlin コレクション

コレクションには同様のタイプのオブジェクトがいくつか含まれており、コレクション内のこれらのオブジェクトは要素または項目と呼ばれます。 コレクションは、データの保存、取得、操作、集計に役立ちます。

コレクションの種類:

不変のコレクション

このタイプのコレクションは読み取り専用機能をサポートします。 その要素を変更することはできません。

方法には次のようなものがあります。

  • リスト – listOf() と listOf ()
  • セット – setOf()
  • マップ – mapOf()

可変コレクション

読み取り機能と書き込み機能の両方をサポートします。

方法は次のとおりです

  • リスト – mutableListOf()、arrayListOf()、および ArrayList
  • セット – mutableSetOf()、hashSetOf()
  • マップ – mutableMapOf()、hashMapOf()、および HashMap

Kotlin 関数

プログラミング言語の関数は、特定のタスクを実行するように指定された同様のステートメントのグループです。 関数を使用すると、プログラムをさまざまな小さなコード ブロックに分割できます。 このコードの分割により、コードの可読性と再利用性が向上し、プログラムの管理が容易になります。

Kotlin は静的型付け言語として知られています。 ここでは、「fun」キーワードを使用して関数を宣言しています。 Kotlin には、標準ライブラリまたはユーザー定義での利用可能性にのみ依存する XNUMX 種類の関数があります。 彼らです:

  • 標準ライブラリ関数
  • ユーザー定義関数

Kotlin関数

Kotlin 関数

ここで、Kotlin コード例を使用して詳しく説明します。

標準ライブラリ関数

これらは、暗黙的に定義して使用できる組み込みライブラリ関数です。

例 2 の場合:

fun main(args: Array<String>){  
var number = 9  
var result = Math.sqrt(number.toDouble())  
print("$result")  
}  

出力:

3.0

sqrt() は、数値の平方根を返すライブラリで定義された関数です。

print() 関数はメッセージを標準出力ストリームに出力します。

ユーザー定義関数

名前が示すように、これらの関数は通常ユーザーによって作成され、高度なプログラミングに使用できます。

ここでは、関数は「fun」キーワードを使用して宣言されています。

例 3 の場合:

fun functionName(){
//body of the code
}

ここでは、本体内のコードを実行する関数を呼び出します functionName()

Kotlin 関数の例:

fun main(args: Array<String>){  
    sum()  
    print("code after sum")  
}  
fun sum(){  
    var num1 =8  
    var num2 = 9  
    println("sum = "+(num1+num2))  
}  

出力:

合計= 17

合計後のコード

Kotlin での例外処理

プログラミングにおける例外は、プログラム内で発生し、プログラムの終了につながる実行時の問題として定義されます。 この問題は、メモリ容量が少ない、配列が結合されていない、ゼロによる除算などの条件が原因で発生する可能性があります。 コード実行におけるこの種の問題を抑制するには、例外処理が使用されます。

例外処理は、実行時の問題を処理し、実行中のプログラム フローを維持する技術として定義されます。

Kotlin は、「throw」式を使用して例外オブジェクトをスローします。 ここで、すべての例外クラスは Throwable クラスの子孫です。

Throw MyException(“例外をスローする”)

例外処理には XNUMX 種類の例外があります。 彼らです:

  • try – このブロックには、例外を作成する可能性のあるステートメントが含まれています。 その後には、常に catch またはfinally、あるいはその両方が続きます。
  • catch – try ブロックからスローされた例外をキャッチします。
  • finally – 例外が処理されたかどうかを常にチェックします。
  • throw – 例外を明示的にスローするために使用されます。

キャッチしてみてください:

例外処理の try-catch ブロックでは、try ブロックで例外をスローする可能性のあるコードを囲み、catch ブロックで式をキャッチして処理します。

try catch ブロックの構文:

try{    
//code with exception    
}catch(e: SomeException){  
//code handling exception  
}    

finally ブロックを使用した try の構文

try{    
//code with exception    
}finally{  
// code finally block  
}   

最後に:

Kolin では、finally ブロックは例外が処理されるかどうかを常にチェックするため、例外処理の非常に重要なステートメントになります。

例 4 の場合:

このコード スニペットでは、例外が発生し、処理されます。

fun main (args: Array<String>){  
    try {  	
        val data =  9/ 0  
        println(data)  
    } catch (e: ArithmeticException) {  
        println(e)  
    } finally {  
        println("finally block executes")  
    }  
    println("write next code")  
}  

出力:

java.lang.ArithmeticException: / by zero
finally block executes
write next code

スロー:

Throw ブロックは明示的な例外をスローします。 さらに、カスタム例外をスローするためにも使用されます。

構文:

Throw SomeException()

Throw SomeException()

例:

fun main(args: Array<String>) {
    try{
        println("Exception is not thrown yet")
        throw Exception("Everything is not well")
        println("Exception is thrown")
    }
    catch(e: Exception){
        println(e)

    }
    finally{
        println("You can't ignore me")
    }
}

出力:

Kotlin の例

Kotlin のヌル安全性

Kotlin をサポートするシステムの種類は、null 許容参照を伝送できる参照と、null 許容参照を伝送できない参照を主に区別します。 Kotlin は、コードから null ポインター例外または null 参照を排除することを目的とした null 安全言語であり、意図的に A として知られています。 Billイオンドルの間違い。

多くの障害の中で最も伝統的な障害 プログラミング言語 null 参照のメンバーにアクセスすると、結果として NullPointerException が発生します。これは、!! が原因である可能性があります。 演算子またはこのコンストラクターは別の場所で使用され、コードの別のポイントで渡されます。 null 許容プロパティでは、使用前に毎回 null チェックの確認が必要です。

Kotlin では、システムは null 参照と非 null 参照を区別します。

たとえば、文字列変数は null を保持できません。

例 5 の場合:

fun main(args: Array<String>){
    var x: String = "GURU99 is the only place where you will get maximum technical content!" // Not Null by default
    println("x is : $x")
    // You cannot assign null variable to not-nullable variables 
    // a=null // it will give compilation error
    var y: String? = "Thanks for visiting GURU99" 
// Nullable Variable
    println("y is : $y")
    y = null
    println("y is : $y")
}

出力:

Kotlin のヌル安全性

Kotlin OOP

オブジェクト指向プログラミングのアプローチにより、complex コード スニペットを使用して、オブジェクトを作成して小さなコード ブロックに分割します。 これらのオブジェクトは、状態と動作という XNUMX つの特性を相互に共有します。

Kotlin コード例で説明する OOP 要素の一部を次に示します。

  • クラスとオブジェクト
  • コンストラクター
  • 継承
  • 抽象クラス

Kotlin OOP

Kotlin のクラス

まず、オブジェクトを作成する前に、オブジェクトのブループリントとも呼ばれるクラスを定義する必要があります。

構文:

class ClassName {
    // property
    // member function
    ... .. ...
}

Kotlin のオブジェクト

クラスを定義する際には、オブジェクトの仕様のみを定義し、メモリやストレージなどの他のパラメータは割り当てられません。

構文:

var obj1 = ClassName()

Kotlin のコンストラクター

コンストラクターは、クラスのプロパティを初期化する方法です。 これは、オブジェクトがインスタンス化されるときに呼び出されるメンバー関数です。 しかし、Kotlin では動作が異なります。

Kotlin には XNUMX 種類のコンストラクターがあります。

Kotlin のコンストラクター

Kotlin のコンストラクター

プライマリ コンストラクター: クラスを初期化する最適化された方法

構文:

class myClass(valname: String,varid: Int) {  
    // class body  
}  

セカンダリ コンストラクター: 初期化ロジックの追加に役立ちます

Kotlin の継承

継承は、親クラスの一部のプロパティが子クラスによって取得されるときに発生します。 XNUMX つ以上のクラスが同じプロパティを持つ場合、継承が許可されます。

構文:

open class ParentClass(primary_construct){
    // common code
  }class ChildClass(primary_construct): ParentClass(primary_construct_initializ){
    // ChildClass specific behaviours
  }

Kotlin の抽象クラス

抽象クラスはインスタンス化できないクラスですが、そこからサブクラスを継承できます。 「abstract」キーワードは、抽象クラスを宣言するために使用されます。

例 6 の場合:

  open class humanbeings { 
    open fun Eat() { 
        println("All Human being Eat") 
    } 
} 
abstract class Animal : humanbeings() { 
    override abstract fun Eat() 
} 
class Cat: Animal(){ 
    override fun Eat() { 
        println("Cats also loves eating") 
    } 
} 
fun main(args: Array<String>){ 
    val lt = humanbeings() 
    lt.Eat() 
    val d = Cat() 
    d.Eat() 
} 

出力:

Kotlin の抽象クラス

Kotlin の現在と未来

現在:

  • 多くの企業が好き Netflix、Pinterest、Corda は Kotlin を使用して強力な Android アプリを作成しています。
  • 2016 年から 2017 年の XNUMX 年間という短期間で、Kotlin は素晴らしいプログラミング機能を備えて非常に人気が高まりました。
  • 2017 年、Google は Android 開発用の公式プログラミング言語として Kotlin を発表しました。
  • Kotlin は Java および Android と 100% 相互運用できるため、Java コードをすぐに置き換えることができます。

未来:

  • クロスプラットフォームのゲーム開発
  • クロスプラットフォームのモバイルアプリ開発
  • サービス側のスクリプティングとマイクロサービス
  • 機械学習 & データ分析

まとめ

  • Kotlin は、Apache 2010 ライセンスに基づいてマルチプラットフォーム アプリ向けに JetBrains によって 2.0 年に提案されたプログラミング言語です。
  • Kotlin という名前は、Java と同じように、Java という島の名前にちなんで Kotlin Island の名前に由来しています。
  • 2016 年に Kotlin の最初のバージョン v1.0 がリリースされました
  • Kotlin プログラムでは、プログラム内にセミコロンは必要ありません。 これにより、コードが簡単になり、読みやすくなります。
  • Android 開発者向けの Kotlin は OOPs ベースのプログラミング言語で、コード行を最大 40 % トリミングできるため、Kotlin はソフトウェア開発や Web 開発に理想的な選択肢となります。
  • Kotlin では、すべての変数は var および val キーワードを使用して宣言する必要があります。
  • 他のプログラミング言語と同様に、Kotlin にも、Int、Boolean、Char、 Double, etc.
  • Kotlin には、算術演算、代入演算、比較演算などのさまざまな演算で使用される一連の演算子があります。
  • Kotlin では、配列はネイティブ データ型ではなく、同じデータ型の変更可能なコラボレーションです。
  • Kotlin では、配列は ArrayOF () と Constructors という XNUMX つのメソッドを使用して定義されます。
  • Kotlin は、コードから null ポインター例外または null 参照を削除するのに役立つ null 安全言語であり、意図的に A と呼ばれています。 Billイオンドルの間違い。