I've been reading 'Windows Networking Fundamentals' and in that book it says that a switch can learn what MAC address is associated with a particular port when the connected device makes its first transmission to the switch by checking the source of the packet. It goes on to say that if the packet destination is an unknown MAC address it will flood every port with the packet (except the port it received the packet from), and then can potentially use the reply from the destination device to learn the destination MAC address.
However, in my Networks lectures, I have been told that switches send an ARP request to any unknown devices when they are first connected and the ARP reply is used to obtain the MAC address.
If the switch does send an ARP request when devices are first connected, why would any of the first method ever need to occur?
So does the switch initiate the process of obtaining a MAC address? Or does the switch learn it after the device makes its first transmission to the switch? Or does it depend on some other factors?