Java 请解释下面显示的一行代码

Java 请解释下面显示的一行代码,java,swing,jfilechooser,method-chaining,Java,Swing,Jfilechooser,Method Chaining,这个代码不是我自己的。学分: 请解释这行代码。我知道这是方法链接,但文件系统是否在对象上正确 因此,JFileChooser对象将带有两个链式方法的FileSystemView对象作为其参数 getFileSystemView()方法是否调用getHomeDirectory()方法 文件选择器1 package com.mkyong.jfileChooser; import java.io.File; import javax.swing.JFileChooser; import javax

这个代码不是我自己的。学分:

请解释这行代码。我知道这是方法链接,但
文件系统
是否在对象上正确

因此,
JFileChooser
对象将带有两个链式方法的
FileSystemView
对象作为其参数

getFileSystemView()
方法是否调用
getHomeDirectory()
方法

文件选择器1

package com.mkyong.jfileChooser;

import java.io.File;

import javax.swing.JFileChooser;
import javax.swing.filechooser.FileSystemView;

public class FileChooser1 {

    public static void main(String[] args) {
        JFileChooser jfc = new JFileChooser(
            FileSystemView.getFileSystemView().getHomeDirectory());//<--p

        int returnValue = jfc.showOpenDialog(null);
        // int returnValue = jfc.showSaveDialog(null);

        if (returnValue == JFileChooser.APPROVE_OPTION) {
            File selectedFile = jfc.getSelectedFile();
            System.out.println(selectedFile.getAbsolutePath());
        }
    }
}
package com.mkyong.jfileChooser;
导入java.io.File;
导入javax.swing.JFileChooser;
导入javax.swing.filechooser.FileSystemView;
公共类文件选择器1{
公共静态void main(字符串[]args){
JFileChooser jfc=新的JFileChooser(

FileSystemView.getFileSystemView().getHomeDirectory());//JFileChooser类定义了多种类型的构造函数(构造函数重载)。 构造函数方法之一是JFileChooser(File),它将文件对象值作为参数

在您的代码中,正在创建JFileChooser实例,其中一个文件对象实例表示homedirectory作为参数

FileSystemView是一个具有getFileSystemView静态方法的类,用于返回FileSystemView的实例(因此称为工厂方法,类似于生产某些产品的工厂)。 FileSystemView类型对象中有一个名为getHomeDirectory()的方法,该方法将返回文件对象,该文件对象是homedirectory的抽象。 总结以下代码行:

    JFileChooser jfc = new JFileChooser(
        FileSystemView.getFileSystemView().getHomeDirectory());
您正在使用构造函数类型JFileChooser(File)实例化JFileChooser的实例,而不是显式传递文件值,而是调用FileSystemView方法返回将作为参数传递给JFileChooser构造函数的值

下面可以编写相同的代码

    FileSystemView fileSystemView = FileSystemView.getFileSystemView();
    File file = fileSystemView.getHomeDirectory();
    JFileChooser jfc = new JFileChooser(file);//<--p
FileSystemView FileSystemView=FileSystemView.getFileSystemView();
File File=fileSystemView.gethomeditory();

JFileChooser jfc=new JFileChooser(file);//
FileSystemView.getFileSystemView()是一个返回FileSystemView对象的静态工厂方法。
FileSystemView.getHomeDirectory()
返回指向用户主目录的文件。1)请对代码和代码片段、HTML/XML或输入/输出等结构化文档使用代码格式。要执行此操作,请选择文本并单击
{}
按钮,位于邮件发布/编辑表单顶部。2)同时查看发布/编辑区域下方的帖子预览。确保其格式符合预期,
    FileSystemView fileSystemView = FileSystemView.getFileSystemView();
    File file = fileSystemView.getHomeDirectory();
    JFileChooser jfc = new JFileChooser(file);//<--p