许多库的开发目的并非作为独立应用程序运行。 Joda-Time 就是这样一个例子。它是一个可用于简化日期和时间数据操作的库。不可否认,我链接的源代码库中确实包含主要方法,但那是因为它们在其单元测试中使用。
Core Java Fundamentals 第五章的重点是介绍类继承,这样 Vehicle 可以是 Boat 的超类,可以是 Sailboat 的超类,可以是 Sunfish 的超类。这本书可能有一个像 Person > Employee > Manager 这样的例子,最终在同一章你可能会看到像 TestManager 这样的测试类,它实际上有一个使用 Manager 的 main 方法。
假设我写了一本类似的书,并展示了 Person 示例的简化版本。我在 Eclipse 中创建了一个项目,我称之为 Personnel。我添加了一个包 org.company,并在该包中添加了这 3 个类:
人物
package org.company;
public class Person {
public String name;
public Person() {
}
}
员工
package org.company;
public class Employee extends Person {
public String employeeID;
public Employee() {
}
}
经理
package org.company;
import java.util.ArrayList;
import java.util.List;
public class Manager extends Employee {
public List<Employee> subordinates ;
public Manager() {
subordinates = new ArrayList<Employee>();
}
}
我现在可以假设您可以创建自己的项目并合并我编写的这些类。我命名我的人员这一事实是无关紧要的。调用你的 MyTest1,然后甚至不用费心创建一个包,并添加一个名为 TestManager 的类。只要您 A) 将我的类放在您的项目 org/company/Person、Employee、Manager 或 B) 中的两个文件夹中,从每个文件夹中删除 package org.company 并将它们包含在您的新 TestManager 类旁边,那么您应该能够在您的测试中将它们实例化为:
测试管理器
import org.company.Employee;
import org.company.Manager;
public class TestManager {
public static void main(String[] args) {
Employee bill = new Employee();
bill.name = "Bill";
bill.employeeID = "1";
Employee george = new Employee();
george.name = "George";
george.employeeID = "3";
Manager jill = new Manager();
jill.name = "Jill";
jill.employeeID = "1234";
jill.subordinates.add(bill);
jill.subordinates.add(george);
//foreach
for (Employee emp : jill.subordinates) {
System.out.println(emp.name);
}
}
}
Eclipse 中的文件现在看起来像这样。
您需要考虑的未来任务是从 Internet 获取一个库,例如 Joda-Time,并通过将其添加到构建路径来了解如何将其整合到您的项目中。