Java Java Objects Delivering the MVP Forum

Graham Usai
Graham Usai
8,505 Points

i don't see where i'm getting it wrong

it keeps on saying "There is a compiler error" but i get see where i'm wrong

Forum.java
public class Forum {
  private String topic;

  // TODO: add a constructor that accepts a topic and sets the private field topic

  public String getTopic() {
    return topic;
  }
public Forum(String topic) {
  this.topic = topic;
}


    public void addPost(ForumPost post) {
    System.out.printf("A new post in %s topic from %s %s about %s is available",
            topic,
            post.getAuthor().getFirstName(),
            post.getAuthor().getLastName(),
            post.getTitle()
    );
  }


}
User.java
public class User {
  // TODO: add private fields for firstName and lastName
private String firstName;
private String lastName;
  public User(String firstName, String lastName) { //<--------needs 2 string arguments
    // TODO: set and add the private fields
    this.firstName = firstName;
    this.lastName = lastName;
  }

  // TODO: add getters for firstName and lastName
public String getFirstName() {
return firstName;
}

public String getLastName() {
return lastName;
}
}
ForumPost.java
public class ForumPost {
  private User author;
  private String title;
  private String description;

  // TODO: add a constructor that accepts the author, title and description
public ForumPost(User author, String title, String description) {
    mAuthor = author;
    mTitle = title;
    mDescription = description;
  }
  public User getAuthor() {
    return author;
  }

  public String getTitle() {
    return title;
  }

  public String getDescription() {
    return description;
  }
}
Main.java
public class Main {

  public static void main(String[] args) {
    System.out.println("Beginning forum example");
    if (args.length < 2) {
      System.out.println("Usage: java Main <first name> <last name>");
      System.err.println("<first name> and <last name> are required");
      System.exit(1);
    }

      Forum forum = new Forum("Java");
    // TODO: pass in the first name and last name that are in the args parameter
    User author = new User(args[0], args[1]);
    // TODO: initialize the forum post with the user created above and a title and description of your choice
    ForumPost post = new ForumPost(author, "title", "description");
    forum.addPost(post);


  }

}

1 Answer

Tonnie Fanadez
Tonnie Fanadez
UX Design Techdegree Graduate 22,768 Points

Graham Usai

Sorry I cannot see your code for me to correct but I guess you are stuck on task 3. You need to remove the m before the variable for it to work. So instead of mAuthor you should use author. Solution for Part 3 for adding a constructor

// TODO: add a constructor that accepts the author, title and description
public ForumPost(User author, String title, String description) {
    author = author;
  title = title;
    description = description;
  }