How does memory banking and bank switching work?

I do not know if this is the right site, so please bear with me. I know what memory banking and memory switching is, but I cannot find out how they are implemented.

Is there a sort of switch that switches between RAM? If so, are there multiple RAM chips? Do I somehow take in two 8 bit addresses and concatenate them to a 16 bit address for a 16-bit ram?

Again, my question is how memory banking and bank switching work. I know they are not the same thing.

Thanks!