Why would you want the class name in a makeButton method?
That makeButton method worries me. There is something very worrying about if (something.equals(item1))...else if (something.equals(item2))...else if... It does not look like object‑oriented programming. There must be a better way to do it.
The glass is neither half full or half empty. It is too big. But this tiny ad is just right: