package Ġcom . kotlin . in action . blog . delegate ._ 0 2 _ builtin _ deleg ates Ċ Ċ import Ġkotlin . properties . Deleg ates Ċ import Ġkotlin . reflect . K Property Ċ Ċ /** Ċ Ġ* Ċ Ġ* Ġ@ author Ġw ang zh ich ao Ċ Ġ* Ġ@ since Ġ 2 0 2 1 / 3 / 7 Ċ Ġ*/ Ċ class ĠPerson 1 Ġ{ ĊĠĠĠ Ġvar Ġaddress : ĠString Ġby ĠDeleg ates . observable (" not Ġentered Ġyet !") Ġ{ ĊĠĠĠĠĠĠĠ Ġproperty : ĠK Property <* >, ĠoldValue : ĠString , ĠnewValue : ĠString Ġ-> ĊĠĠĠĠĠĠĠ Ġprintln ("${ property . name } Ġchanged Ġfrom Ġ$ oldValue Ġto Ġ$ newValue ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġval Ġperson 1 Ġ= ĠPerson 1 () ĊĠĠĠ Ġperson 1 . address Ġ= Ġ" Sh ang hai " ĊĠĠĠ Ġperson 1 . address Ġ= Ġ" Be ij ing " Ċ }