For example :
URL blogFeedUrl = new URL("http://manishmaharzan.com.np/getJSON/json.json"); HttpURLConnection connection = (HttpURLConnection) blogFeedUrl.openConnection(); connection.connect(); InputStream inputStream = connection.getInputStream(); Reader reader = new InputStreamReader(inputStream); int contentLength = connection.getContentLength(); char[] charArray = new char[contentLength]; reader.read(charArray); String responseData = new String(charArray); Here we could have created InputStreamReader instead for parent class Reader:
InputStreamReader reader = new InputStreamReader(inputStream); Or for another example when creating a SQLiteOpenHelperSQLiteOpenHelper in an activity:
public class Helper extends SQLiteOpenHelper { ...… } public class DrinkActivity extends Activity { protected void onCreate(...…) { … } SQLiteOpenHelper helper = new Helper(this); ...… } Instead of referencing the base class SQLiteOpenHelper here, why not create
Helper helper = new Helper(this); after all HelperHelper extends SQLiteOpenHelperSQLiteOpenHelper.
What is the benefit of coding it this way?