Jaki jest sens metody accept () we wzorcu Visitor?

Dużo się mówi o oddzieleniu algorytmów od klas. Ale jedna rzecz pozostaje na uboczu, nie została wyjaśniona. Używają gościa w ten sposób abstract class Expr { public <T> T accept(Visitor<T> visitor) {visitor.visit(this);} } class ExprVisitor extends Visitor{ public Integer...