package Ġme . z ti any . oop Ċ Ċ /** Ċ Ġ* æķ°æį® ç±» Ċ Ġ* Ġ@ author ĠZ ti any Ċ Ġ* ĠĠĠĠĠĠĠĠĠ ĠEmail Ġz ti any 3 @ gmail . com Ċ Ġ* ĠĠĠĠĠĠĠĠĠ ĠDate Ġ 1 7 . 5 . 3 0 Ġ 1 6 : 2 2 Ċ Ġ*/ Ċ Ċ /** Ċ Ġ* Ġæķ°æį® ç±» ï¼ļ åĪĽå»º ä¸ĢäºĽ åıª ä¿ĿåŃĺ æķ°æį®çļĦ ç±» ãĢĤ åľ¨ è¿ĻäºĽ ç±» ä¸Ń ï¼Į ä¸ĢäºĽ æłĩåĩĨ åĩ½æķ° å¾Ģ å¾Ģ æĺ¯ ä»İ Ġæķ°æį® æľº æ¢ ° æİ¨ å¯¼ èĢĮ æĿ¥çļĦ ãĢĤ åľ¨ ĠKotlin Ġä¸Ń ï¼Į è¿Ļ åı« åģļ Ġæķ°æį® ç±» Ġ å¹¶ æłĩè®° ä¸º Ġdata Ċ Ġ* Ċ Ġ* Ġ ç¼ĸè¯ĳ åĻ¨ èĩªåĬ¨ ä»İ ä¸» æŀĦéĢł åĩ½æķ° ä¸Ń å£°æĺİ çļĦæīĢæľī å±ŀæĢ§ å¯¼åĩº ä»¥ä¸ĭ æĪĲåĳĺ ï¼ļ Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġequals ()/ hashCode () Ġå¯¹ Ċ Ġ* ĠĠĠĠĠ ĠtoString () Ġ æł¼å¼ı æĺ¯ Ġ" User Model ( name = John , Ġage = 4 2 )" Ċ Ġ* ĠĠĠĠĠ Ġcomponent N () Ġåĩ½æķ° Ġ æĮī å£°æĺİ é¡ºåºı å¯¹åºĶ äºİ æīĢæľī å±ŀæĢ§ Ċ Ġ* ĠĠĠĠĠ Ġcopy () Ġåĩ½æķ° Ċ Ġ* Ċ Ġ* å¦Ĥæŀľ è¿ĻäºĽ åĩ½æķ° ä¸ŃçļĦ ä»»ä½ķ ä¸Ģä¸ª åľ¨ ç±» ä½ĵ ä¸Ń æĺ¾ å¼ı å®ļä¹ī æĪĸ ç»§æī¿ èĩª åħ¶ åŁº ç±»åŀĭ ï¼Į åĪĻ ä¸įä¼ļ çĶŁæĪĲ è¯¥ åĩ½æķ° Ċ Ġ* Ċ Ġ* ä¸ºäºĨ ç¡® ä¿Ŀ çĶŁæĪĲ çļĦä»£çłģ çļĦ ä¸Ģèĩ´ æĢ§ åĴĮ æľī æĦı ä¹ī çļĦ è¡Įä¸º ï¼Į æķ°æį® ç±» å¿ħé¡» æ»¡è¶³ ä»¥ä¸ĭ è¦ģæ±Ĥ ï¼ļ Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġ ä¸» æŀĦéĢł åĩ½æķ° éľĢè¦ģ èĩ³ å°ĳ æľīä¸Ģä¸ª åıĤæķ° ï¼Ľ Ċ Ġ* ĠĠĠĠĠ Ġ ä¸» æŀĦéĢł åĩ½æķ° çļĦæīĢæľī åıĤæķ° éľĢè¦ģ æłĩè®° ä¸º Ġval ĠæĪĸ Ġvar ï¼Ľ Ċ Ġ* ĠĠĠĠĠ Ġæķ°æį® ç±» ä¸įèĥ½ æĺ¯ æĬ½ è±¡ ãĢģ å¼Ģ æĶ¾ ãĢģ å¯Ĩ å°ģ æĪĸèĢħ åĨħéĥ¨ çļĦ ï¼Ľ Ċ Ġ* ĠĠĠĠĠ Ġæķ°æį® ç±» åıªèĥ½ å®ŀçİ° æİ¥åı£ ( åľ¨ 1 . 1 ä¹ĭåīį )ãĢĤ Ċ Ġ* Ċ Ġ* Ġåľ¨ ĠJVM Ġä¸Ń ï¼Į å¦Ĥæŀľ çĶŁæĪĲ çļĦ ç±» éľĢè¦ģ åĲ« æľīä¸Ģä¸ª æĹł åıĤ çļĦ æŀĦéĢł åĩ½æķ° ï¼Į åĪĻ æīĢæľīçļĦ å±ŀæĢ§ å¿ħé¡» æĮĩå®ļ é»ĺè®¤ åĢ¼ Ċ Ġ*/ Ċ private Ġdata Ġclass ĠUser Model ( val Ġname : ĠString Ġ= Ġ" XO ", Ġval Ġage : ĠInt Ġ= Ġ 1 9 ) Ċ Ċ private Ġclass ĠUser Entity ( val Ġname : ĠString , Ġval Ġage : ĠInt ) Ċ Ċ private Ġfun Ġtest User Model () Ġ{ ĊĊĠĠĠ Ġ// æķ°æį® ç±» ä¸İ éĿŀ æķ°æį® ç±»çļĦ åĮº åĪ« ĊĠĠĠ Ġval Ġuser Model Ġ= ĠUser Model () ĊĠĠĠ Ġval Ġuser Entity Ġ= ĠUser Entity (" XY ", Ġ 1 0 ) ĊĠĠĠ Ġprintln ( user Model ) ĊĠĠĠ Ġprintln ( user Entity ) ĊĊĠĠĠ Ġ// kotlin æıĲä¾Ľ çļĦ copy æĸ¹æ³ķ ĊĠĠĠ Ġval Ġnew User Model Ġ= Ġuser Model . copy ( name Ġ= Ġ" XY ") // copy æĸ¹æ³ķ ĊĠĠĠ Ġprintln ( new User Model ) ĊĊĠĠĠ Ġ// Kotlin æıĲä¾Ľ çļĦ æłĩåĩĨ æķ°æį® ç±» ĊĠĠĠ Ġvar Ġpair Ġ= ĠPair (" Z ti any ", Ġ 2 9 )// ä¸¤ä¸ª ä¸Ģ ç»Ħ ĊĠĠĠ Ġvar Ġtriple Ġ= ĠTrip le ( 1 , Ġ 2 , Ġ 3 )// ä¸īä¸ª ä¸Ģ ç»Ħ Ċ } ĊĊ