I think you will find that a view tends to have character/varchar fields, as do unions.

A quasi technical answer to 'what is a null' is 0xff. If you look at how Oracle stores data, at least in the older character sets, if the null field occurs before the last field in a table, the space holder for the field is 0xff (hex 255). This is, of course, unprintable for ASCII7 and 'undefined' for straight ASCII (hence assorted fonts, etc.)

If the null field is after the last field with a value in a row, then nothing is stored because the row header has the number of fields to be read in the row (not how many fields defined.) This saves space by allowing more rows to be stored per block. Of course, it causes chaining problems when null fields are updated, but that is another discussion.