In Javascript we can define an object like this 👇
let obj={ property1:67, func1: function (){ //Some code } }
Now if we want add a new property to obj
I can just add a new property like this
obj.property2=733; //some value or function
Now I want to do the same thing in Java also.
I have a class Test 👇
public class Test{ int property1=67; public void func1(){ //Some code } }
Now is it possible to do like the same thing like statement #2 in Java also?
Edit: From the answers I got to know that we can use a Map for properties. Now I want to know for methods. Thanks
Advertisement
Answer
So I did a research and as I can see this is not simple.
In java you can not do that, actually, you can if you provide your own custom class loading, which is really a bad idea because then even if you change the class you want you must reload all classes that interact with this class.
Check this article to understand more about class loaders.
Of course, there are some other ways as: