contract Parent { string private name; constructor(string memory _name) { name = _name; } function getName() public view virtual returns (string memory) { return name; } } contract Child is Parent { // error, name hasn't been set! function getName() public view override returns (string memory) { return super.getName(); } }