Se o atributo $usado está no construtor não há necessidade desse setter.
function __construct($nome, $preco, $descricao, Categoria $categoria, $usado){ $this->nome = $nome; $this->preco = $preco; $this->descricao = $descricao; $this->categoria = $categoria; $this->usado = $usado; }