Pages without code-behind are another story.
They are compiled into a code-behind class when run, but you cannot actually
tell it to inherit from another class which is why code-behind pages are
better for this.
Code-behind pages are the "raw page code" and
allow you to do all of this fancy inheritance from the Page class.
Take a look at your code-behind page -
You can see here that the code-behind class
is just an inherited Page class as well (sure is a useful class eh?)
Well, enough of this stuff, let's get into
these page classes.