2014-04-21 3 views
-5

누군가 ma.add(new HighRights("AAA"));의 설명을 도와 줄 수 있습니까? 클래스 홈페이지ArrayList generics

:

public static void main(String [] a){ 
      ArrayList<SecurityRights> ma=new ArrayList<SecurityRights>(); 
      ma.add(new HighRights("AAA")); 
      } 

HighRights 클래스 :

public class HighRights extends SecurityRights 
{ 
    private String name; 

    public HighRights(String n){ 
    super(true); 
    this.name = n; 
    } 

    public String getName(){ 
     return name; 
    } 


    public static void main(String[] a){ 

    HighRights s= new HighRights("Lisa"); 
    System.out.print(s.getName() +" "+s.getSecret());     
    } 

} 
+4

정확히 이해하지 못했는지 확인하십시오. 문서의 어느 부분이 불분명 한 것인지 정확히 알 수 있습니까? –

+1

이것은 얻을 수있는만큼 자명하다 ... – csmckelvey

+0

http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html#add(E) ... it. 목록에 추가합니다. –

답변

1

이것은 간단한 상속 예제입니다.

ma.add(new HighRights("AAA")); 

그것은 List<SecurityRights> 어레이리스트로 maHighRights 클래스의 새로운 오브젝트를 추가한다.

HighRights extends SecurityRights 

이 상속입니다. 자식 개체 HighRights을 부모 개체 SecurityRights에 저장할 수 있습니다.

1

그것은 HighRights 클래스의 새로운 인스턴스를 생성 ArrayList<SecurityRights>의 인스턴스에 추가합니다.

HighRights 개체 인스턴스가 SecurityRights 클래스 바인딩의 IS-A 테스트 (instanceof)를 통과 했으므로 컴파일러에서 허용됩니다.

1
ArrayList<SecurityRights> ma=new ArrayList<SecurityRights>(); 

InheritancemaSecurityRightsArrayList 것을 의미 읽어 보시기 바랍니다.

ma.add(new HighRights("AAA")); 

는 값으로 초기화 "AAA" 새로운 객체 HighRights를 생성하고 ma 배열에 추가하는 것을 의미한다.

HighRights extends SecurityRights부터 HighRightsSecurityRights으로 처리합니다.

+0

HighRights에서 값을 어떻게 인쇄합니까? – user3364498