Private teams can only be joined if the team owner adds someone to them.
Public teams are visible to everyone from the teams gallery and you can join them without getting approval from the team owner.
Change a team's privacy status
To change the privacy settings for your team from public to private (or vice versa), go to the team name and select More options ... > Edit team toward the bottom of the menu. Under Privacy, select either Public or Private.
If you choose to make private teams discoverable when people search for teams to join. People will still require permission from a team owner to join a private team, this only allows the team to turn up in the search results.