По умолчанию видимость методов класса в PHP

Я посмотрел на руководство , но я не могу найти ответ.

Какова видимость по умолчанию для PHP для методов без объявления видимости? Имеет ли PHP видимость пакета, как в Java?

Например, в следующем коде go() public или private?

 class test { function go() { } } 

Причина, по которой я спросил, это то, что я видел много кода конструкторов, написанных как function __construct() а некоторые – как public function __construct() . Они эквивалентны?

Значение по умолчанию является общедоступным.

Методы класса могут быть определены как общедоступные, частные или защищенные. Методы, объявленные без какого-либо явного ключевого слова видимости, определяются как общедоступные.

http://www.php.net/manual/en/language.oop5.visibility.php

Значение по умолчанию является общедоступным. Это хорошая практика, чтобы всегда включать его, однако поддерживаемые PHP4 классы без модификаторов доступа, поэтому обычно не видно, что их использование в устаревшем коде отсутствует.

И нет, PHP не имеет видимости пакета, главным образом потому, что до недавнего времени PHP не имел пакетов.

Значение по умолчанию является общедоступным. Причина, вероятно, заключается в обратной совместимости, поскольку старый код ожидает, что он будет общедоступным (он перестанет работать, если он не будет публичным).

По умолчанию видимость PUBLIC

Источник