OpenZeppelin's ERC20 token contract contains the following declaration of decimals, and then a getter function for accessing that variable:
uint8 private decimals;
function decimals() public view returns (uint8)
It seems they could have simply used public in the definition and accomplished the same result with less code.
uint8 public decimals;
Does anyone know why the private variable with public getter is preferred?