public Point2D<T> P1 { get; set; }
Public Property P1 As Point2D(Of T)
public: property Point2D<T>^ P1 { Point2D<T>^ get (); void set (Point2D<T>^ value); }