why the oxide of metals are basic in nature?
Actually, basicity or acidity depends on the reaction with water, and the metal oxides releases the oxide ion which accepts protons from water to make hydroxide of metal and so it is called as basic in nature.
MgO + H2O --> Mg(OH)2
Similarly, the metal oxides react with acids and accept the proton to give metal salt.
MgO + 2HCl --> MgCl2 + H2O