Ich schreibe eine Android App und war einfach neugierig, warum wir immer Android tippen müssen. Ich verstehe, dass wir uns des Typs sicher sein müssen, damit unser Code richtig läuft, aber gibt es vielleicht noch einen anderen Grund?Warum geben wir immer Cast in Android/Java ein?
Beispiel:
public class Navigation extends Activity {
private DrawerLayout mDrawerLayout;
@Override
public void onCreate(Bundle savedInstanceState) {
// other irrelevant code
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
Im Zusammenhang mit dieser Frage, ich frage, warum wir müssen den Rückgabewert der findViewById geben Guss. (Ich bin auch neugierig, wie diese Art Casting getan wird, wenn man das erklären könnte.)
Oh typisieren müssen, so ist es mit der Art gegossen wie eine Verlängerung ist? – wkcamp
Sorry, ich verstehe die Frage nicht. – ajb
Ich habe nur bestätigt, was Sie gesagt haben: "Objekt hat automatisch alle Methoden, die eine View hat, definiert aber einige eigene Methoden, die spezifisch für DrawerLayouts sind", also erhält das Objekt beim Casting alle Methoden von DrawerLayouts statt nur der View-Klasse. – wkcamp