2017-02-01 1 views
0

이 클래스가 있는데, 함수 작업을 제거하는 방법을 이해할 수 없습니다. remove() 전에 클래스 이름 (Customer)이되어야하는 이유는 무엇이며 무엇을 의미합니까? Customer customer = (Customer) customers.firstElement();remove() 함수를 이해할 수 없습니다.

도와 주시겠습니까?

private java.util.Vector customers = new java.util.Vector(); 
Server server; 

void insert(AbstractEvent customer){ 
    customers.addElement(customer); 
} 
/** 
* @return the first customer in the queue 
*/ 
Customer remove() { 
    Customer customer = (Customer) customers.firstElement(); 
    customers.removeElementAt(0); 
      return customer; 
} 
int size() { 
    return customers.size(); 
} 
+3

클래스 보인다. – Kayaman

+0

@ 카야 만 사실! http://stackoverflow.com/questions/1386275/why-is-java-vector-class-considered-obsolete-or-deprecated – alfasin

답변

2
Customer remove() 

remove() 방법 Customer 유형의 객체를 반환한다. 클래스 이름은 remove() 이전을 의미합니다.

Customer customer = (Customer) customers.firstElement(); 

customers.firstElement()customers 변수로 불리는 Vector 객체의 첫 번째 요소를 반환한다. customers 유형은 원시 유형 (즉, Vector에 저장된 요소의 유형을 지정하지 않음)이기 때문에 firstElement()은 유형의 객체를 반환하며 Customer 유형으로 변환하여 Customer 변수에 할당해야합니다 .

private java.util.Vector<Customer> customers = new java.util.Vector<>(); 

private java.util.Vector customers = new java.util.Vector(); 

교체 단순히 캐스팅없이 벡터의 첫 번째 요소를 할당 할 수 것입니다 : 그것은 90 년대처럼

Customer customer = customers.firstElement(); 
관련 문제