What is saved in wallet.dat exactly? As I know, wallet.dat saves all related data for a bitcoin wallet.  However, I don't understand what precisely is saved in the wallet.dat.  I think it must contain several private keys. Does it also contain the corresponding public key, and seed value?  Anything else?
The wallet.dat file contains your private keys, public keys, scripts (which correspond to addresses), key metadata (e.g. labels), and the transactions related to your wallet. If you have an HD wallet, it also includes the HD seed and and the derivation paths for each private key.