@Override
    public void paint(Graphics g) {
        int width = this.getWidth();
        int height = this.getHeight();
        int nRows = ocean.getNRows();
        int nColumns = ocean.getNColumns();
        Denizen water = Water.getInstance();
        g.setColor(oceanColor);
        g.fillRect(0, 0, width, height);
        double cellWidth = (double)width / nColumns;
        double cellHeight = (double) height / nRows;
        for (int i = 0; i < nRows; i += 1) {
            int top = (int)(i * cellHeight);
            for (int j = 0; j < nColumns; j += 1) {
                int left = (int)(j * cellWidth);
                Denizen denizen = ocean.get(i, j);
                if (denizen != water) {
                    if (denizen instanceof Shark) {
                        g.setColor(Color.red);
                    } else if (denizen instanceof Fish) {
                        g.setColor(Color.blue);
                    }
                    g.fillOval(left, top, (int)cellWidth, (int)cellHeight);
                }
            }
        }
    }