Forums Register Login

NullPointer Exception

+Pie Number of slices to send: Send
Why below given prg throws Nullpointer exception


[HENRY: Added Code Tags. Formatted Code.]
[ December 20, 2006: Message edited by: Henry Wong ]
+Pie Number of slices to send: Send
I think, because you are calling method on null reference of Test .
+Pie Number of slices to send: Send
class ClassA
{
public void methodA()
{
ClassB classB = new ClassB();
classB.getValue();
//System.out.println(" ClassA's methodA()!");
}
}
class ClassB
{
public Test classC=new Test();
public String getValue()
{
//System.out.println("ClassB's getValue() !");
return classC.getValue();

}
}
public class Test
{
public String value="ss";
public String getValue()
{
value = "ClassB";
// System.out.println("Test's getValue()!");
return value;

}
public static void main(String s[])
{
ClassA a = new ClassA();
a.methodA();
// System.out.println("main mothods()!");
}
}

Look at "public Test classC=new Test(); ",if I write this, there is no errors! Compilation successfully! So I think, the object classC must be instantiate. This is my own standpoint!
+Pie Number of slices to send: Send
class ClassB { public Test classC; public String getValue() { return classC.getValue(); }}

In the above ClassB,ur statement is:
public Test classC;-------Here classC contains only null value.
Then only NullPointerException is occurring.

so
for avoid this,
we have two options:
1. we need to use statement like this,
Test classC=new Test();-----Now classC having details of Test class.
or
2. we've to change the class Test like this.

public class Test
{
public static String value="ss";
public static String getValue()
{
value = "ClassB";
return value;
}
public static void main(String s[])
{
ClassA a = new ClassA();
a.methodA();
}
}

Because static methods and static variables are class level variables.
+Pie Number of slices to send: Send
Always keep in mind, for any non-primitive objects, default value will NOT be given, and you must NEW it before use.

Nick
Please do not shoot the fish in this barrel. But you can shoot at this tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 1402 times.
Similar Threads
Why runtime exception thrown is this code
NullPointer exception
Why Exception in this code?
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 28, 2024 07:11:25.