title: Can a class have no constructor?
body: <p>This is a piece of code as an example, after this rest are just methods (look at bottom for maze class). So when this is instantiated, using</p>
  
  <pre><code>Maze labyrinth = new Maze();
  </code></pre>
  
  <p>and</p>
  
  <pre><code>System.out.println (labyrinth);
  </code></pre>
  
  <p>This will print out the grid array.
  Is this legit? I thought all classes needed constructors how does it print out the 2-d grid array?</p>
  
  <p><strong>Maze Class:</strong></p>
  
  <pre><code>public class Maze
  {
      private final int TRIED = 3;
      private final int PATH = 7;
      private int[][] grid = { {1,1,1,0,1,1,0,0,0,1,1,1,1},
                               {1,0,1,1,1,0,1,1,1,1,0,0,1},
                               {0,0,0,0,1,0,1,0,1,0,1,0,0},
                               {1,1,1,0,1,1,1,0,1,0,1,1,1},
                               {1,0,1,0,0,0,0,1,1,1,0,0,1},
                               {1,0,1,1,1,1,1,1,0,1,1,1,1},
                               {1,0,0,0,0,0,0,0,0,0,0,0,0},
                               {1,1,1,1,1,1,1,1,1,1,1,1,1} };
  
      public String toString ()
      {
          String result = "\n";
          for (int row = 0; row &lt; grid.length; row++)
          {
              for (int column=0; column &lt; grid[row].length; column++)
              result += grid[row][column] + "";
              result += "\n";
          }
          return result;
      }
  
  }
  </code></pre>