2014-04-19 2 views
-1

자바에서 프로젝트를 만들고 다른 클래스 함수를 통해 객체를 전달하고 있습니다. 이 객체에는 객체의 LinkedList가 포함됩니다. 다른 클래스에서 이러한 개체 중 하나를 삭제하면 해당 개체의 복사본 만 삭제되거나 참조로 전달됩니까?자바 값 전달에 대한 혼란

다음은 루트 폴더에서 이름을 가져 와서 연결된 목록에 포함 된 하위 폴더에서 이름을 삭제하는 내 delete 클래스의 예입니다.

public class Delete { 

    public static void delete_(String name, folder root) 
    { 
     for (folder s : root.folderlist) { 
      delete_i(name, s); 
     } 
    } 

    public static void delete_i(String name, folder check) 
    { 
     if(check.name.equals(name)) 
     { 
      int count = 0; 
      System.out.println("Found folder! Deleting..."); 
      for(folder s : check.parent.folderlist) 
      { 
       if(s.name.contains(name)) 
       { 
        System.out.println("Found Parent folder of " + s.name + " which is " + s.parent.name + " Deleting from list..."); 
        check.parent.folderlist.remove(count); 
        System.out.println("Folder successfully removed!"); 
        break; 
       } 
       count += 1; 
      } 
     } 
     for (folder l : check.folderlist) { 

      delete_i(name, l); 
     } 

    } 
} 
+3

예를 들어주십시오. 사본을 만들지 않으면 사본이 없습니다. 읽기 [Java가 참조로 전달됩니까?] (http://stackoverflow.com/questions/40480/is-java-pass-by-reference) –

+4

"개체 삭제"와 같은 개념은 없습니다. –

답변

2

개체가 변경되어 삭제됩니다.