Reading from an input stream

the purpose of an InputStream
Represents a stream of bytes (small chunks of data)

the purpose of an BufferedReader
Helps us read text from an InputStream

String: Immutable(can’t change once created)
StringBuilder: Mutable(Can change once created)

StringBuilder builder = new StringBuilder();
builder.append("World");
builder.deleteCharAt(3);
builder.append(" builder").append(".");
String built = builder.toString();

what exception is caught
in the makeHttpRequest() method?
IOException
in the extractFeatureFromJson() method?
JSONException