I'm aware how we can make an externally owned account:
e.g. in geth use: "geth new accounts" in MyEthereumWallet, we put a password and it generates address and private key.
Wha about a contract account? In geth when I deploy my contract it returns an address of the contract. Can I generate the address and account first and then deploy the contract?
Question: How to generate a contract account in Ethereum?