First off, let's correct a little misconception:
Let's say I have a HDD formatted as ext4, if I create 2 partitions...
You don't format a hard disk to a file system like ext4 or NTFS or FAT32, you format partitions to those file systems. When people say they've formatted a hard disk to ext4, they generally mean they've created a single partition covering the entire disk, and created an ext4 file system for that partition.
In Windows, partitions are each assigned a different drive letter (C:, D:, etc). This makes it easier to discover which files are placed in which partitions. A hard disk can have several partitions, and a computer can have several hard disks and other storage devices. The downside is that you can't easily put different directories in different partitions, you can't put C:\Windows in one partition and C:\Users in other for example, they both must be in the C: partition.
In Linux, everything is a file, and it is all found under the root directory, /. A partition can be mounted to any directory under /. For example, you could mount one partition to /home, another to /var, and another to /, which would contain all the other files, but not ones in home or var.
In Linux, even devices and running processes are files. For example, under /proc, you will find all the running processes, and under /dev/, all the connected devices. Hard disks are typically named /dev/sda, /dev/sdb, /dev/sbc, etc. Partitions with hard disks are typically named /dev/sda1: sda represents the hard drive, and 1 represents the number of the partition within that hard drive. Every partition is then mounted to a directory in your file system. For example, your CD-ROM drive /dev/cdrom0 could be mounted to /media/cdrom0. In your file explorer, you would navigate to /media/cdrom0 to see the CD's files.
While this makes conceptually more difficult than Windows' system, it is much more flexible, as you can assign any directory to a new partition.