2014-01-10 4 views
0

상위 클래스 (Main1Activity)의 하위 클래스 (메뉴)에서 내 함수 "목록"을 사용하고 싶습니다.이 함수를 사용하여 내 목록을 호출하는 방법은 무엇입니까?부모 클래스의 하위 클래스에서 함수 호출?

그리고

public class Main1Activity extends Activity{ 
    // i want to use list function here 
} 

public class menu extends Main1Activity { 
    public void list(View view) { 
     //Toast.makeText(getApplicationContext(), "clicked", 3000).show(); 
     Cursor cursor2=mydb1.rawQuery("SELECT * FROM notes;", null); 

     if (cursor2.moveToFirst()) { 
      //Toast.makeText(getApplicationContext(), "Title's are:", 3000).show(); 
      data.clear(); 

      do { 
       data.add(cursor2.getString(cursor2.getColumnIndex("title"))); 
      } while (cursor2.moveToNext()); 

      ArrayAdapter <String> adapter=new ArrayAdapter<String>(menu.this,android.R.layout.simple_list_item_1,data); 

      lv.setAdapter(adapter); 
     } 
     else { 
      Toast.makeText(getApplicationContext(), "There are no notes to display ", 3000).show(); 
     } 
     cursor2.close(); 
    } 
} 
+1

** "부모 클래스에서 기능을 만들고 싶지 않습니다."** - 할 수 없습니다. 수퍼 클래스는 하위 클래스에 대해 결코 알 수 없습니다. 상속을 통해 메뉴 클래스는 Main1Activity 클래스이지만 Main1Activity는 메뉴 클래스가 아닙니다. OOP를 좀 더 깊이 공부할 것을 제안합니다. – Squonk

답변

0

이 클래스 사이의 상속을 통지하지 않았나요 부모 클래스에 기능을하지 않으려하지만이 여전히 옵션입니다.

별도의 수업에 들어갑니다.

public class SomeClass { 
    public static void list(Context context, View view) 
} 

public class Main1Activity extends Activity{ 
    // i want to use list function here 
    SomeClass.list(this, view); 
} 

public class menu extends Main1Activity { 
    SomeClass.list(this, view); 
} 
0

나는 당신이하고 싶은 것이 잘 생각하지 않는다고 생각합니다. 추상 클래스와 인터페이스를 고려하여 진행 방법을 검토해야합니다.

이유를 설명해야합니다. 도움이 될 수 있습니다.

관련 문제