#### 1. 定义类 Merge（ch9 目录）

#### 2. 声明私有属性 firstFile, secondFile, tmpFile

#### 3.声明构造方法 Merge (String fileName1, String fileName2)

#### 4.说明：由于在构造方法中进行文件操作可能抛出 FileNotFoundException。因此，构造方法在声明中必需抛出 FileNotFoundException

#### 5.在构造方法中创建 file 对象，并将对象引用赋给属性 firstFile

#### 6.调用属性 firstFile 的 exists ()方法，并根据返回值决定是否创建一个 FileNotFoundException 并抛出

#### 7.在构造方法中创建 file 对象，并将对象引用赋给属性 secondFile

#### 8.调用属性 firstFile 的 exists ()方法，并根据返回值决定是否创建一个 FileNotFoundException 并抛出

#### 9.声明方法 boolean merge ()

#### 10.声明类 MergeFiles

#### 11.添加 main（）方法

#### 12.在 main（）方法中创建类 Merge 的对象

#### 说明：由于在 main 方法中创建 Merge 对象可能抛出 FileNotFoundException。而又没有进行任何处理，因此，在 main 方法声明中必需抛出 FileNotFoundException。

####

#### // MergeFiles.java

####

#### import java.io.*;

####

#### class Merge

#### {

#### private File firstFile, secondFile, tmpFile;

####

#### Merge (String fileName1, String fileName2)

#### throws FileNotFoundException

#### {

#### firstFile = new File (fileName1);

#### if (!firstFile.exists ())

#### throw new FileNotFoundException (fileName1);

####

#### secondFile = new File (fileName2);

#### if (!secondFile.exists ())

#### throw new FileNotFoundException (fileName2);

####

#### //...

#### }

####

#### boolean merge ()

#### {

#### boolean errorStatus = false; // Assume no error.

####

#### // Use firstFile, secondFile, and tmpFile to do the merge.

####

#### return errorStatus;

#### }

####

#### class MergeFiles

#### {

#### public static void main (String [] args) throws FileNotFoundException

#### {

#### Merge m = new Merge ("a.dat", "b.dat");

#### }

####