What are public & private keys?

Bitcoin wallet is a collection of keys that control bitcoin. For each private key there is a corresponding public key and address. 
A private key is used to make transactions whereas a public key is used to receive transactions.

The private keys controlled by a wallet act as a password to sign outgoing transactions. Whoever has the private keys controls a wallet's bitcoin. That's why it's crucial that your private keys are well protected.

The public key and its associated bitcoin are visible on the blockchain. The public key can generate new Bitcoin addresses in order to receive bitcoin.