知りたいこと
なぜAndroidの「データベースヘルパーオブジェクトのwritableDatabaseプロパティにアクセスする」記述をするだけで、getWritableDatabase()メソッドの実行結果を得ることが出来るのかを知りたい。
前提
「基礎&応用力をしっかり育成! Androidアプリ開発の教科書第3版 Kotlin対応」を読みながらアプリ開発を学習している初学者です。本書257pに、以下の記述が出てきます。(本質問に関連しない部分は省いています)
class MainActivity : AppCompatActivity() { private val _helper = DatabaseHelper(this@MainActivity) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) ~中略~ fun onSaveButtonClick(view: View) { // 感想欄を取得。 val etNote = findViewById<EditText>(R.id.etNote) // 入力された感想を取得。 val note = etNote.text.toString() // データベースヘルパーオブジェクトからデータベース接続オブジェクトを取得。 //このコードでSQLiteOpenHelperクラス内で定義されているgetWritableDatabase()の実行結果にアクセスしていることはわかるが、なぜこのような記法で書けるのかが分からない。 val db = _helper.writableDatabase ~以下省略~ } }
発生している問題・エラーメッセージ
エラーは発生していないが、なぜ「メソッドの実行結果」に「プロパティにアクセスする記述」でアクセスできるのかが分からずもやもやしている。
試したこと
androidの公式リファレンスを読むも、それらしい情報を見つけ出すことはできなかった。
自分の過去のコードを探したところ、buttonに対して
button.setEnabled(true)
と記述した部分を、AndroidStudioからの提案で
button.isEnabled = true
に書き直していた部分がありました。
これのコードにも本質問と同じ趣旨の疑問を持っています。
環境(FW/ツールのバージョンなど)
Android Studio Electric Eel

回答2件
あなたの回答
tips
プレビュー