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

Java Java Objects (Retired) Meet Objects Constructors

ShaoHsuan Duan
ShaoHsuan Duan
6,044 Points

I added this line after the mColor declaration. public setColor(String color){mColor = color;)

I added this line after the mColor declaration.

public setColor(String color){mColor = color;)

It should be a public constructor with a String type parameter and should set the private "mColor" to the value of "color".

While it says that there is a compile error, which is that I didn't specify a return type.

GoKart.java
public class GoKart {
  private String mColor;
  public setColor(String color){mColor = color;}
  public String getColor() {
    return mColor;
  }
}

1 Answer

Dan Johnson
Dan Johnson
40,533 Points

A constructor will always have the same name as the class:

public GoKart(Color color) {
  mColor = color;
}

Unlike a constructor, all other methods must specify a return type.

ShaoHsuan Duan
ShaoHsuan Duan
6,044 Points

Thank you sir. It works!