Vectorized MATLAB code has a strongly functional, declarative feel to it, where matrices are frequently viewed as samples in some space, and operations on those matrices as transformations of that space. When a phenomenon, process or entity is modeled using (vectorized) MATLAB, there often exists an explicit numerical representation that operates as an intermediary between the program logic and the conceptual elements of the entity being modeled. As a result, complexities in the problem domain tend to be reflected as numerical complexity, rather than complexity of program logic or control flow.
The Object-Oriented paradigm has a very different feel: It is frequently used in conjunction with a much more direct approach to modelling structural relationships in the world. In many cases, the OO program is a direct model of an entity, where program logic constructs mirror, directly or indirectly, attributes and properties of the system being modeled. As a result of this, OO program logic tends to have more structural "depth" (and possibly complexity), as it reflects more directly the intricacies of the system under test.
Having said that, there are many situations where the Object-Modelling paradigm is very well aligned with the way that a particular problem is understood and described. This is particularly the case when one is attempting to model discrete entities with a more diverse range of attributes and behavior, such that considering each entity individually and in isolation is more informative than considering each property individually, and the entities together as a population.
With OOP you spend time thinking about individual entities and their properties. Collective behavior is harder to visualize & observe. Structures and relationships tend to be expressed explicitly in code.
With vectorized MATLAB, you spend time thinking about populations of entities. Collective behavior is easier to observe. Structures and relationships tend to be expressed implicitly in code.