Site icon TestingDocs.com

Java Inner class demo program

An inner class is a class inside another class. The main purpose of using an inner class is to group related classes together.

Java program

import java.text.DecimalFormat;

public class Item
{
    private String description;  // description
    private int itemNumber;      // number
    private Cost cost;       // Cost

    /**
     * Item constructor
     **/
    public Item(String desc, int itemNum, double wholesale, double retail)
    {
        description = desc;
        itemNumber = itemNum;
        cost = new Cost(wholesale, retail);
    }

    /**
     * RetailItem class toString method
     */
    public String toString()  {
        String str;
        DecimalFormat dollar = new DecimalFormat("#,##0.00");
        str = "Description: " + description
                + "\nItem Number: " + itemNumber
                + "\nWholesale Cost: $"
                + dollar.format(cost.getWholesale())
                + "\nRetail Price: $"
                + dollar.format(cost.getRetail());
        return str;
    }

    /**
     * Inner Class
     */
    private class Cost
    {
        public double wholesalePrice;
        public double retailsalePrice;

        public double getWholesale() {
            return wholesalePrice;
        }

        public void setWholesale(double wholesale) {
            this.wholesalePrice = wholesale;
        }

        public double getRetail() {
            return retailsalePrice;
        }

        public void setRetail(double retail) {
            this.retailsalePrice = retail;
        }

        /**
         * Cost constructor
         */
        public Cost(double w, double r)
        {
            wholesalePrice = w;
            retailsalePrice = r;
        }
    }
}

Test Driver

/**
 * Item class
 */
public class InnerClassDemo
{
    public static void main(String[] args)
    {
        Item item = new Item("Rice Packet", 1001,1.75, 2.50);
        System.out.println(item);
    }
}

Screenshot

Exit mobile version