aburtang@lemmy.world to Programmer Humor@lemmy.ml · 2 days agoEvil Oneslemmy.worldimagemessage-square74fedilinkarrow-up1970arrow-down130
arrow-up1940arrow-down1imageEvil Oneslemmy.worldaburtang@lemmy.world to Programmer Humor@lemmy.ml · 2 days agomessage-square74fedilink
minus-squaremasterspacelinkfedilinkEnglisharrow-up1·edit-210 hours agoBecause that object is of a type where that member may or may not exist. That is literally the exact same behaviour as Java or C#. If I cast or type check it to make sure it’s of type Bar rather than checking for the member explicitly it still works: And when I cast it to Foo it throws a compile time error, not a runtime error:
Because that object is of a type where that member may or may not exist. That is literally the exact same behaviour as Java or C#.
If I cast or type check it to make sure it’s of type Bar rather than checking for the member explicitly it still works:
And when I cast it to Foo it throws a compile time error, not a runtime error: