devxlogo

Determining Stack Content Type

Determining Stack Content Type

Question:
Only Objects can be popped from, or push onto, a stack. That means Ihave to wrap a primitive data type, such as int, with something akin toInteger before pushing it onto a stack. How can I identify the typeof an object popped from a stack?

Answer:
Ideally, when you store objects in any type of container, you alreadyknow what their type is, or at least what class they derive from orwhat interface they implement. One of the most useful features ofobject oriented programming languages is polymorphism. Polymorphismallows you to define different behaviors for objects, yet access themin the same way.

For example, the AWT Component paint() method willdraw a component. Yet a List looks different from a Button. If youare writing one of those rare programs where you need to storemultiple objects of undetermined types in a container, you can resortto using the instanceof operator to identify the type of object youare dealing with. For example:

if (obj instanceof Integer) ...

This will tell you if an object is an Integer. The instanceof operator canhave a relatively high overhead if used excessively, so you should tryto structure your programs so as not to require its use.

See also  How College Students Can Shape the Future of Tech Responsibility
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist