How to create a internal table with header line

Please note that internal table with header line is a obsolete concept and should always be avoided.
There are 2 Ways to create IT with header line:

1. Using Occurs
2. Using with header line

Example using occurs and with header line

REPORT zau_temp.

TYPES : BEGIN OF ty_mara,
          mara TYPE mara-matnr,
          matkl TYPE mara-matkl,
        END OF ty_mara.

          mara TYPE mara-matnr,
          matkl TYPE mara-matkl,
      END OF it_mara.


In occurs n , 'n' refers to the initial memory requirement in terms of bytes size. It will be increased when required by the internal table.