Default VPC comes with an Internet gateway. Default subnet is a public subnet, and the instances launched in the default subnet has a public and private IPv4 address. These instances communicate with the Internet through Internet gateway.
An Internet gateway enables the instances to connect to the Internet.
By default, the instances that you launch in a nondefault subnet has a private IPv4 address, but no public IPv4 address. These instances cannot access the Internet but can communicate with each other. By attaching an Internet gateway to the nondefault VPC and associating an Elastic IP address with the instance enables the Internet access.