В заголовке вопрос а вот код только утил
package com.javarush.task.task24.task2409;

import java.util.Collection;
import java.util.LinkedList;
import java.util.List;

import static com.javarush.task.task24.task2409.Solution.allJeans;

public class Util {
    protected static Collection<Object[]> jeansArray = new LinkedList<>();

    static {
        jeansArray.add(new Object[]{1, Company.Levis, 34, 6, 150.0});
        jeansArray.add(new Object[]{2, Company.Denim, 35, 8, 154.0});
        jeansArray.add(new Object[]{3, Company.Colins, 32, 6, 120.0});
        jeansArray.add(new Object[]{4, Company.CalvinKleinJeans, 31, 8, 125.0});
    }

    public static List<Jeans> getAllJeans() {

        abstract class AbstractJeans implements Jeans {
            int id, length, size;
            double prize;
            @Override
            public String toString() {
                return "AbstractJeans{id="+getId() +", length="+getLength()+", size="+getSize()+", prize="+getPrice()+"}";
            }

            public AbstractJeans() {
            }

            public AbstractJeans(int id, int length, int size, double price)
            {
                this.id = id;
                this.length = length;
                this.size = size;
                this.prize = price;
            }
            @Override
            public double getPrice() {
                return this.prize;
//                (double)jeansArray.toArray()[4];
            }

            @Override
            public int getSize() {
                return this.size;
//                        (int)jeansArray.toArray()[2];
            }

            @Override
            public int getId() {
                return this.id;
//                        (int)jeansArray.toArray()[0];
            }

            @Override
            public abstract String getTM();

            @Override
            public int getLength() {
                return this.length;
//                        (int)jeansArray.toArray()[1];
            }
        }

        class Levis extends AbstractJeans {
            public Levis(int id, int length, int size, double price) {
                super(id, length, size, price);
            }

            @Override
            public String toString() {
                return "Levis{id="+getId() +", length="+getLength()+", size="+getSize()+", prize="+getPrice()+"}";
//                return "Levis{}";
            }

            @Override
            public String getTM() {
                return "Levi's";
            }
        }

        class Denim extends AbstractJeans {
            public Denim(int id, int length, int size, double price) {
                super(id, length, size, price);
            }

            @Override
            public String toString() {
                return "Denim{id="+getId() +", length="+getLength()+", size="+getSize()+", prize="+getPrice()+"}";
//              return "Denim{}";
            }

            @Override
            public String getTM() {
                return "Denim";
            }
        }

        //add your code here

        List<Jeans> allJeans = new LinkedList<>();

        for (Object[] obj : getJeansArray()) {
            int id = (int) obj[0];
            final Company company = (Company ) obj[1];
            int length = (int) obj[2];
            int size = (int) obj[3];
            double price = (double) obj[4];

            Jeans jeans = null;
            if (Company.Levis == company) {
                jeans = new Levis(id, length, size, price);
            } else
                if (Company.Denim == company) {
                    jeans = new Denim(id, length, size, price);
                } else {
                    jeans = new AbstractJeans(id, length, size, price) {
                        public String getTM() {
                            return company.fullName;
                        }
                    };
                }
            allJeans.add(jeans);
        }
        return allJeans;
    }

    public static Collection<Object[]> getJeansArray() {
        return jeansArray;
    }

    static enum Company {
        Levis ("Levi's"),
        Denim("Denim"),
        Colins("COLIN'S"),
        CalvinKleinJeans("Calvin Klein Jeans");

        final String fullName;
        Company(String name) {
            this.fullName = name;
        }
    }
}