请问大佬这里的最后一行是什么意思啊,这既像自动属性的实现,又像是创建对象

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    public class Position
    {
        public int X { get; set; }
        public int Y { get; set; }
    }
    public class Size
    {
        public int Width { get; set; }
        public int Height { get; set; }
    }
    public class Shape
    {
        public Position Positon { get; } = new Position();
    }
}

 

public class Shape
    {
        public Position Position 
        {
            get
            {
                return new Position();
            }
        }
    }

这么写你就能理解了吧,public Position Polition,后面那个Polition是Shape类的一个属性,前面那个Position是类名。它这么写的意思就是通过get访问器获取Shape类的Position属性时返回Position类实例化的对象。关于C#属性的基础知识可以查看https://www.runoob.com/csharp/csharp-property.html

每当你调用Shape.Positon属性时候就new一个Posotion