Skip to content Skip to sidebar Skip to footer

Using Utility Classes In The Android Programming

I have a little idea of the Utility Classes with a slight doubt on demand. If I use a Utility class in my Application than to use that class in my main Activity do I have to create

Solution 1:

It mainly depends on what your utility class does. But, most of the time, if you create an Utility class, you will want to create static methods and invoke them without creating an instance:

classMyUtilities{
    publicstaticStringfoo(String bar){
        return bar.toUppercase;
    }
}

Then, on your activity:

MyUtilities.foo("baz");

Of course, there are cases where you will want to create instance of a Utility class. For instance, if you have created a global Adapter which will be used by all your ListViews.

Solution 2:

It heavily depends on what kind of utility you're referring to. There are

1) utility classes that implement static methods. In that case you just call them directly using class name

2) utility classes methods that are not static - requires creating and possibly initializing an instance of that class. Then the instance is used to call those methods.

3) utility classes that can be accessed thru Context. then you can call getApplicationContext() and then you can get access to the utility classes

Solution 3:

publicfinalclassUtils
  {
    privateUtils(){
    }

    publicstaticvoidmakeToast(Context context, String text){
        Toast.makeText(context, text, Toast.LENGTH_SHORT).show();
    }
 }

It's usually a class which only has static methods (possibly with a private constructor and marked abstract/final to prevent instantiation/subclassing). It only exists to make other classes easier to use - for example, providing a bunch of static methods to work with String values, performing extra actions which String itself doesn't support.

Utility classes generally don't operate on classes you have control over, as otherwise you'd usually put the behaviour directly within that class. They're not terribly neat in OO terms, but can still be jolly useful.

as answered by Jon Skeet

Solution 4:

If the methods in your utility class are static then you can call them from your main activity. eg:

int i = Utility.RandInt();

If they are not static then you have to create an object:

Utilityu=newUtility();
inti= u.randInt();

Solution 5:

If your utility class is created in your Application then you can refer to it by first creating a getMethod in the application class, then going

Application mc = (Application) context.getApplicationContext();

mc.getUtilityClass().SomeMethod()

Post a Comment for "Using Utility Classes In The Android Programming"