UnionFS works at a directory level, as opposed to a device level, so it dosen't have a mount point - it sits over existing mount points each of which might be a branch - for example, having a base layer (or to use proper terminology - a low precedence layer with the root filesystem) on a read only iso9660 cd rom file system, and a branch on a ramdisk. Each branch is assigned a precedence and a branch with a higher precedence overrides one of a lower precedence.
If a directory exists in two underlying branches, the contents and attributes of the Unionfs directory are the combination of the two lower directories.
If a file exists in two branches, the contents and attributes of the Unionfs file are the same as the file in the higher-priority branch, and the file in the lower-priority branch is ignored.
Finally if there's a duplicate, the duplicate directory is hidden to simplify things.
Linuxjournal has a fairly comprehensive writeup on how unionfs works, if you want something more than a simplified explanation of it