Receiving funds in Bitcoin is an asynchronous and passive process.
A sender creates a transaction which consumes some unspent transaction outputs (UTXO) and assigns the freed-up value to newly created UTXO. A UTXO generally specifies an amount of bitcoin and some spending conditions that must be fulfilled to consume the UTXO. The most common spending condition schemas are represented with addresses.
As users of exchanges give fiat and/or cryptocurrency into custody of the exchange to gain access to the exchanges order book, the user must request a withdrawal to retrieve their funds. In the withdrawal request, the user must specify how to lock the funds which they do by providing an address from their wallet. The sending of a transaction is fully controlled by the sender: they merely sign over some of their funds to a locking script specified by the recipient in advance. The receiver's wallet does not need to sign-off, nor does it have a veto. It is therefore perfectly possible for the recipient wallet to be not connected to the internet and transcribed to a piece of paper as long as the recipient just knows how the corresponding address.