2014-11-22 5 views
1

두 추상 메서드가 포함 된 Parent이라는 추상 클래스가 있는데이 클래스를 Parent 클래스로 확장하는 다른 클래스에서 재정의하려고합니다.추상 클래스를 사용하여 Java에서 다형성을 사용하는 방법?

public class ProjectX 
{ 
    public static void main(String[] args) { 
     int [] a={2,3,1,5}; 
     Parent<Integer> cc=new B_Sort<>(); 
     cc.sort(a);   
    }  
} 

그러나, cc.sort(a)이 제대로 작동하지 않았고 난에 오류가있어 : 이것은 내 주요 클래스와 프로그램을 실행하는 주요 방법은

abstract class Parent<T> 
{ 
    public T a[]; 
    public abstract void sort(T a[]); 
    public abstract void searc(T a[]); 
} 

class B_Sort<T> extends Parent<T> 
{ 

    @Override 
    public void sort(T[] a) { 
     for(int i =1; i< a.length; i++){ 
      for(int j = 0; j < (a.length - i); j ++){ 
       if((((Comparable) (a[j])).compareTo(a[j+1])) > 0){ 
        T tmp = a[j]; 
        a[j] = a[j + 1]; 
        a[j + 1] = tmp; 
       }     
      } 
     } 
    } 

    @Override 
    public void searc(T[] a) { 
    } 

} 

입니다

: 여기

내 코드입니다 그 줄. 내 프로그램이 작동하지 않았다 !! 왜 이것이 잘못된 것입니까?

+1

오류가있는 경우 게시하여주십시오. 도움이 될 것입니다. – NiziL

+0

@Nizil 아니오 해당 행의 Netbeans IDE에서 빨간색 제목이 표시되고 프로그램이 실행되지 않았습니다. – Ahmadreza

+0

내 검색) 메소드가 비어 있습니다! 그것은 무엇을해야 하는가,하지 않는가? 또한 Nizil이 말한 것처럼 오류를 게시하십시오 – Maor

답변

2

시도 자동 이러한 프리미티브 박스형 버전을 포함하는 배열로 변환 할 수

int [] a={2,3,1,5}; 

Integer [] a={2,3,1,5}; 

프리미티브 (예 int[]를) 배열을 변경 (Integer[]) .

+0

Double 용으로 어떻게 할 수 있습니까? – Ahmadreza

+0

@Ahmadreza'Double [] a = {2.0,3.5,1.2}; 부모 cc = new B_Sort <>(); cc.sort (a);' – Eran

+0

답변 해 주셔서 감사합니다. – Ahmadreza

관련 문제