What happens when you (Shift D) duplicate a cube?

What characteristics is the second cube given?
By this I mean:

Let’s say you shift a and create 2 cubes.

[ ] [ ]

Now you create a third cube and duplicate it shift D

[ ] [ ]

Now you have 4 cubes

[ ] [ ] - [ ] [ ]

What’s the difference between these 2 pair of cubes? Everything that you can tell me?

The main difference in your very simple example may be, where the cubes are placed by creation, a new ‘shift a’ cube is placed at the position of the 3d-cursor a ‘shift d’ cube is placed, where the orignal cube is.

But I don’t think this example really shows the use of the ‘shift d’ operation.

You could have modified the cube into a lionhead and if you duplicate it, you get 2 lion heads.
If you gave it a material, they would have had, the very same material, not a copy, see in the outliner.

You could have selted more then one cube and duplicated it.

A more interesting question would have been, what is different with ‘alt d’ (duplicate linked), where you get an object with the same mesh as the original object, but a different position, as you can see in the outliner.

First just to clarify, an ‘object’ primarily represents a location, rotation, and scale in 3D space (think of an empty and what you can do in object mode). A mesh is a collection of vertices connected to describe, a surface and you can edit it in blender’s edit mode. A mesh is linked to an object so that it can appear in the 3D Viewport with the location, rotation, and scale of that object. The mesh itself may have things applied to it such as a material and modifiers (look at the outliner heirarchy).

Every object that is duplicated with shift-d creates a new object with a new, unique copy of the mesh. By default the same things that were applied to the mesh you copied are applied to your newly duplicated mesh, but you could change that. The mesh is independent and you could apply a different material and modifiers if you wanted.

If you alt-d you create a new object linked with the same mesh. Because it uses the same mesh data, whatever form the mesh takes and whatever is applied to the mesh will occur in all instances of it. You haven’t created a new mesh, just linked a pre-existing mesh asset to a new object (location, rotation, scale).

I don’t believe you can have an object with multiple meshes, although theoretically it would be nice if you wanted to change things like the materials and modifiers of specific parts of a mesh while keeping the same object.

The current ui can obscure these concepts so hopefully clarifying these things to users is in the cards (for example having a properties panel that is specific to what you click and not showing everything on an equal level).