This is not true. Straight from the docs:
This application does not automatically answer and should be preceeded by an application such as Answer(), Progress(), or Ringing().
Read more here:
https://docs.asterisk.org/Asterisk_20_Documentation/API_Documentation/Dialplan_Applications/Queue/
Edit: Here is the first few priorities of FreePBX generated dialplan for a queue
exten => 1000,1,Macro(user-callerid,)
exten => 1000,n,Set(__MCQUEUE=${EXTEN})
exten => 1000,n,Answer
So app_queue isn’t automatically answering the call, it’s being done by the Answer() application before the call hits the actual queue.