As @abreslav said: "As a matter of a short answer: it seems to me that to make properties seamlessly override functions, we'd have to basically treat property accessors as individual members, and allow overrides in every-which-way: a function can override a property, and a property can override a function. Otherwise it leads to inconsistencies of all sorts."