What's the different between these points?

P1 = Point.ByCoordinates(0, 0, 0)
P2 = Autodesk.Revit.DB.XYZ(0, 10, 0)
P3 = Autodesk.Revit.DB.Point.Create(P2)

As I understand, P1 is a Point created in dynamo environment, P2 is a some type of value, P3 is a Point created in Revit,right?

as i know :
P1 is the point in dynamo type
p2 is the point in XYZ form which indicate the location on revit
p3 is the database about point creation in the revit