I have Util classes where i have many methods to be used in all over project. My question is - considering memory heap, performance what is best to use a static method by class reference or non static method called by object of that class. For example:
public class Utilities {
private static Utilities utils;
public static Utilities getInstance() {
if (utils == null)
utils = new Utilities();
return utils;
}
public static void someMethod() {
}
public void someMethod2() {
}
}
and
public static void main(String[] args) {
Utilities.someMethod();
Utilities.getInstance().someMethod2();
}
Which is correct way for my requirement?