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 trialMaxwell Solesbee
1,101 PointsFinal exercise fourth task. Totally stumped right now.
Hello!
I have been at this exercise for hours and googling the issue, but to no avail. I re-watched the past videos to see if I missed something but, at least for me, I cannot find the reference to this dilemma.
Beginning forum example java.lang.NullPointerException at Forum.addPost(Forum.java:18) at Main.main(Main.java:16) at JavaTester.run(JavaTester.java:185) at JavaTester.main(JavaTester.java:45)
I am at the fourth step of this exercise. Hope to get some assistance on what may be causing the problem! I am assuming it has to do with the user Author variable.
public class Forum {
private String topic;
// TODO: add a constructor that accepts a topic and sets the private field topic
public Forum(String topic)
{
topic = "";
}
public String getTopic() {
return 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());
}
}
public class User {
// TODO: add private fields for firstName and lastName
private String firstName;
private String lastName;
public User(String firstName, String lastName) {
// TODO: set and add the private fields
this.firstName = "";
this.lastName = "";
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
// TODO: add getters for firstName and lastName
}
public class ForumPost {
private User author;
private String title;
private String description;
public ForumPost(User author, String title, String description) {
author = this.author;
title = "";
description = "";
}
// TODO: add a constructor that accepts the author, title and description
public User getAuthor() {
return this.author;
}
public String getTitle() {
return this.title;
}
public String getDescription() {
return this.description;
}
}
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, "My title.", "Stuff goes here.");
forum.addPost(post);
}
}
1 Answer
Maxwell Solesbee
1,101 Pointshope it helps!
Thanks a bunch Nivard! It worked. Even in my researching I couldnβt fully understand how to properly use βthisβ variable, but your explanation helped clear things up!
Nivard Rikken
5,377 PointsNivard Rikken
5,377 PointsI would suggest to check some of your constructors, the goal is to set the private fields to the passed in values.
Forum.java
The TODO wants you to set the private field topic.
Same for the ForumPost constructor: ForumPost .java
Set the private fields with the parameter values
User.java
Set the private fields with the parameter values
hope it helps!