Спецификатор доступа default определяет область видимости членов класса, когда явный спецификатор доступа не указан.
Он применяется только внутри класса или структуры.
Если при объявлении члена класса не указан спецификатор (
public, private, protected), по умолчанию считается default.В примере
x объявлен без спецификатора доступа, значит его видимость по умолчанию — private. А y явно помечен как public и доступен извне класса.Таким образом,
default позволяет не писать лишний private при объявлении членов класса.
