concept Just in category haskell

This is an excerpt from Manning's book Get Programming with Haskell.
You get your Heart back as expected, but it’s preceded by the data constructor Just. If you look at the type signature for Map.lookup, you get the answer.
Something of a Maybe type can be either Nothing, or Just something of type a. What in the world could this mean? Let’s open up GHCi and see what happens:
When you look up an ID that’s in the catalog, you get the data constructor Just and the value you expect for that ID. If you look up the type of this value, you get this:
In this lesson, our objective was to introduce you to one of Haskell’s more interesting parameterized types: Maybe. The Maybe type allows you to model values that may be missing. Maybe achieves this by using two data constructors, Just and Nothing. Values represented by the Nothing data constructor are missing. Values represented by the Just a constructor can be safely accessed through pattern matching. Maybe is a great example of how powerful types make your code less erro- prone. Because of the Maybe type, the entire class of errors related to having null values is completely eliminated. Let’s see if you got this.