// ĠIG NORE _ BACKEND _ FI R : ĠJVM _ IR Ċ // ĠTARGET _ BACKEND : ĠJVM Ċ // ĠJVM _ TARGET : Ġ 1 . 8 Ċ // ĠWITH _ RUNTIME Ċ // ĠFULL _ JDK Ċ // ĠFILE : ĠA . java Ċ public Ġclass ĠA Ġ{ ĊĠĠĠ Ġpublic Ġstatic ĠA Ġnil () Ġ{ Ġreturn Ġnull ; Ġ} Ċ } Ċ Ċ // ĠFILE : Ġtest . kt Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġ// ĠThere Ġis Ġa Ġnull Ġcheck Ġon Ġboth Ġarguments Ġof ĠMutable Map . remove , Ġso Ġwe Ġexpect Ġthis Ġcode Ġto Ġthrow Ġan Ġexception . ĊĠĠĠ Ġ// ĠWhich Ġexception Ġthis Ġis Ġdepends Ġon Ġthe Ġlanguage Ġversion Ġ( it 's Ġa ĠNullPointerException Ġin ĠKotlin Ġ 1 . 4 ). ĊĠĠĠ Ġval Ġm Ġ= Ġmutable Map Of < A , ĠA >() ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġm . remove ( A . nil (), ĠA ()) ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm . remove ( A (), ĠA . nil ()) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" OK " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Fail Ġ 2 " ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġ" Fail Ġ 1 " Ċ } Ċ