ゆきみずさんの日記

現弐寺SP中伝によるINFINITASプレー日記です。

MENU

【Kotlin】#1 オーバーライドってどういう意味?

今回はプログラミング初心者である私が独学で半年ほど(週1回2〜3時間ペース)AndroidStudioを触った中での一つの気づきを備忘録として残したいと思います。

 

※この記事はKotlinやJavaなんて全く理解できていないド素人が書いています。

主は一応VBAだけお遊び程度に触っているレベルです。

 

そもそも文法や用語が分からない

ExcelVBA(以下VBA)は仕事効率化のためにこちらも独学である程度触ってきたので、理解は出来るだろうと簡単な気持ちで触り始めたKotlinですが、新規プロジェクトの中に最初から書いてあるコードが既に意味不明でした。

 

funとは?

funというのがVBAでいうところのsubにあたる、一般的な関数の接頭語になるということは分かるのですが、何を楽しむんだ?という感じでした。

まず、funというのはfunctionの略称なのだと思います。

そもそもの間違いだったのはVBAでいう functionはユーザー定義関数の接頭語であり、function=subjectと結びついていなかったことですね。

 

overrideとは?

私がKotlinを触り出して一番分からなかったのがここです。

新規プロジェクトを立ち上げると一番最初に出てくるコードから既にoverride funとなっており、まず意味不明でした。

 

色々サイトを見漁っても、説明文が既に高度すぎて何の意味も分からなかったのですが、最近になって分かり始めたことがあります。

 

それは、画面を表示させるために既に何らかのコードが見えないところで実行されているということ、さらに自分が書くコードはその汎用コードの上に成り立っているということです。

 

クラスの継承という単語がよく出てきますが、その本質はそういうところにあったわけですね。

つまり、そもそも汎用コード(仮称)が書かれたクラスを継承して、その上でやりたいことを書いていくわけです。

だから、一番最初からoverride funとなっていたわけですね。

 

他のブログ等で書かれているサンプルコードでoverrideの文字列が多用されているのは、既にGoogleが用意してくれているクラスを継承して

効率よくコードを書いているからなんですね。

 

注記

さて、ここまで色々書いてきたわけではありますが、正直なところこれが正解なのかは分かっていません

色々なサイトでのサンプルコードを用いた解説ではこういった説明は完全に省略されていると思いますし、答え合わせができる媒体を私は知らないのです。

 

なので、今までチマチマ触ってきて考察した結果でしかないので、どなたかお詳しい方がいればこの解釈が合っているのか教えて頂きたいです。

よろしくお願いします。

プライバシーポリシー