The difference of electronegativity between iron and oxygen is greater than the one between two oxygens. That means the attraction between iron and oxygen is higher. As a result, the covalent bond between the oxygen ions break and create an ionic bond with iron.
Hello Miracles, you are right. However, there is one more thing; metal and molecular oxygen react in solution, that is, a very thin aqueous film formed by humidity on iron dissolves some of iron with the aid of molecular oxygen dissolved in that film. Iron has a greater stability in 3+ state, so eventually a significant amount of iron is oxidized to Fe(OH)3.
The same thing does not operate well in copper; we call the effect as "passive film formation".