Two simple questions. About FUNCTION() and attribute visibily.

Use UFUNCTION() function above, without parameters, does it have any effect? I’ve seen.

Why can the private attributes of a base class be seen by its derivated BP class? Are they not different classes, one derived from the other? Shouldn’t it be done through protected attributes?

Thanks.