Mer*_*tio 2 java program-entry-point
正在经历Core Java Fundamentals(Horstmann/Cornell)第9版,但是在第5章左右之后的某个时候,练习文件和示例代码都停止了"主"方法,但这本书的行为就好像它们应该编译和运行等等. .
很困惑,因为java应用程序需要一个主要运行.任何熟悉这些文本的人都可以为我提供一些启示.现在感觉很蠢:)
开发了许多库而不是作为独立应用程序运行的目的.Joda-Time就是这样一个例子.它是一个库,可用于简化日期和时间数据的操作.不可否认,我链接的源存储库确实有主要方法,但那是因为它们用于单元测试.
Core Java Fundamentals第五章的要点是引入类继承,这样Vehicle可以是超类的船,可以是Sailboat的超类可以是Sunfish的超类.这本书可能有一个像Person> Employee> Manager这样的例子,最后在同一章中你可能会看到像TestManager这样的测试类实际上有一个使用Manager的主方法.
假设我写了一本类似的书,我在Person示例的简化版本上展示了这一点.我在Eclipse中创建了一个项目,我称之为Personnel.我添加了一个包org.company,在该包中添加了这3个类:
人
package org.company;
public class Person {
public String name;
public Person() {
}
}
Run Code Online (Sandbox Code Playgroud)
雇员
package org.company;
public class Employee extends Person {
public String employeeID;
public Employee() {
}
}
Run Code Online (Sandbox Code Playgroud)
经理
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>();
}
}
Run Code Online (Sandbox Code Playgroud)
我现在可以假设您可以创建自己的项目并合并我编写的这些类.我将我的人员命名为人事是无关紧要的.调用你的MyTest1,然后甚至不打扰创建一个包,并添加一个名为TestManager的类.只要你A)把我的类放在你的项目org/company/Person,Employee,Manager或B中的两个文件夹中删除package org.company它们中的每一个并将它们包含在你的新TestManager类旁边,那么你应该能够在您的测试中将它们实例化为:
那么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);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Eclipse中的文件现在看起来像这样.

您需要考虑的未来任务是从互联网获取库,例如Joda-Time,并通过将其添加到构建路径中来查看将其合并到项目中.
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |