java.io.File在作為參數傳遞時體現值引用的特點

來源:互聯網
上載者:User

標籤:

File是對象引用,但在作為參數傳遞時體現值引用的特點,即 在方法中被重新賦值,此賦值操作僅在當前方法中有效。

public class FileUtils {    public static void main(String[] args) {        String filepath=FileUtils.class.getResource("/files/t1/example/test.xlsx").getPath();        System.out.println(filepath);        FileUtils fileUtils=new FileUtils();        File oldFile=new File(filepath);        System.out.println("oldFile:"+oldFile.exists()+":"+oldFile.getAbsolutePath());        fileUtils.del(oldFile);        System.out.println("oldFile:"+oldFile.exists()+":"+oldFile.getAbsolutePath());    }    public void del(File oldFile){                if (oldFile.exists()) {            System.out.println(oldFile.getAbsolutePath());            oldFile.delete();        }        String path=FileUtils.class.getClass().getResource("/files/t1/example/test2.xlsx").getPath();        System.out.println(path);        File newFile=new File(path);        System.out.println("newFile:"+newFile.exists()+":"+newFile.getAbsolutePath());        oldFile=newFile;    }}

output:

/D:/workspace/bin/files/t1/example/test.xlsxoldFile:true:D:\workspace\bin\files\t1\example\test.xlsxD:\workspace\bin\files\t1\example\test.xlsx/D:/workspace/bin/files/t1/example/test2.xlsxnewFile:true:D:\workspace\bin\files\t1\example\test2.xlsxoldFile:false:D:\workspace\bin\files\t1\example\test.xlsx//main方法中File對象還是以前的

 

java.io.File在作為參數傳遞時體現值引用的特點

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.