I am curious to know what difference does it make when I use
Scan scan = new Scan();
instead of Scan scan = null;
public Scan getScanByColumn1(byte[] columnFamily,Map<String,String> columnMap){
Scan scan = null;
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_SOFTWARE_VERSION);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_CNUM);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_SID);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_HIERARCHY);
return scan;
}
public Scan getScanByColumn2(byte[] columnFamily,Map<String,String> columnMap){
Scan scan = new Scan();
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_SOFTWARE_VERSION);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_CNUM);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_SID);
scan.addColumn(columnFamily, ForesightConstants.QUALIFIER_HIERARCHY);
return scan;
}
When I used Scan scan = null;
It gives warning when i add first column to the scan object. And the warning is Null pointer access: The variable scan can only be null at this location
.
So, someone please help me find out why am i getting this warning, My program is running fine with Second one but, just curious to find out the reason behind the warning.
Thanks in advance.