Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Objects Encapsulation with Properties Expression Bodied Members

i am stuck at step 2

i dont understand why it keeps giving me a bummer. I have checked the Empression Bodied Members clip abut 10 times and i still dont get it. Please i need help with this one

Square.cs
namespace Treehouse.CodeChallenges
{
    class Square : Polygon
    {
        public double SideLength => SideLength * SideLength;

        public Square(double sideLength) : base(4)
        {
            SideLength = sideLength;
        }

        public void Scale(double factor) =>  SideLength *= factor;

    }
}
Polygon.cs
namespace Treehouse.CodeChallenges
{
    class Polygon
    {
        public int NumSides { get; private set; }

        public Polygon(int numSides)
        {
            NumSides = numSides;
        }
    }
}

1 Answer

andren
andren
28,558 Points

Your code for the Scale method is fine but you have made changes to the SideLength property which was not asked for, and have removed the Area property all together.

Here is the solution along with some comments:

namespace Treehouse.CodeChallenges
{
    class Square : Polygon
    {
        public double SideLength { get; private set; } // This was modified when it should not be

        public double Area => SideLength * SideLength; // This property was removed outright

        public Square(double sideLength) : base(4)
        {
            SideLength = sideLength;
        }

        public void Scale(double factor) => SideLength *= factor;
    }
}

Thank you so much Andren