Si es posible hacerlo asi, aunque para que no estes enviando y enviando por diferentes clases deberias de implementar una clase con un patron singleton que te regrese el objeto, algo asi:
Código PHP:
class PUser {
public static function getUser() {
if(isset($_SESSION['usuario'])){
$user = $_SESSION['usuario'];
}else{
$_SESSION['usuario']= new User();
$user = $_SESSION['usuario'];
}
return $user;
}
}
Asi puedes usar:
Código PHP:
$user = PUser::getUser();
y ya modificarlo, dependiendo de tu version de PHP, necesitaras regresar el parametro por referencia.