视频: When You Regret Turning Someone Down | Re-Feel | EP.02 (Click CC for ENG sub) 2024
列表中的Employee类没有main方法,所以没有执行代码的起点。为了解决这个缺陷,程序员用一个主要方法编写一个单独的程序,并使用该程序来创建Employee实例。
这个代码清单显示了一个带有main方法的类 - 一个将代码放入测试的类。
import static java。郎。系统。出;公共类员工{私人字符串名称;私人字符串jobTitle; public void setName(String nameIn){name = nameIn;} public String getName(){return name;} public void setJobTitle(String jobTitleIn){jobTitle = jobTitleIn;} public String getJobTitle(){return jobTitle;} public void cutCheck double amountPaid){out。 printf(“支付给%s的订单”,名称);出。 printf(“(%s)*** $”,jobTitle);出。 printf(“%,。2fn”,amountPaid);}}
根据这个清单,每个员工有七个特征。其中两个功能相当简单。每个员工都有一个名字和一个职位。 (在列表中,Employee类有一个名称字段和一个jobTitle字段。)
<! --1 - >import java。 UTIL。扫描器;导入java。 IO。文件;导入java。 IO。 IOException异常;公共类DoPayroll {公共静态无效的主要(字符串args [])抛出IOException {扫描仪diskScanner =新的扫描仪(新文件(“EmployeeInfo.txt”)); for(int empNum = 1; empNum <= 3; empNum ++){payOneEmployee(diskScanner);} diskScanner。 close();} static void payOneEmployee(Scanner aScanner){Employee anEmployee = new Employee();一个员工。 setName(aScanner。nextLine());一个员工。 setJobTitle(aScanner。nextLine());一个员工。 cutCheck(aScanner。nextDouble()); aScanner。 nextLine();}}
要运行代码,您的硬盘必须包含一个名为EmployeeInfo的文件。文本。
第二个列表中的DoPayroll类有两个方法。其中的一种方法,主要是调用另一种方法,payOneEmployee,三次。每次,payOneEmployee方法都从EmployeeInfo获取东西。 txt文件并将这些内容提供给Employee类的方法。
以下是变量名称 anEmployee 被重复使用和回收的方式:
-
第一次调用payOneEmployee时,anEmployee = new Employee()使得一个员工引用一个新的对象。
-
第二次调用payOneEmployee时,计算机再次执行相同的语句。这第二次执行创建了anEmployee变量的一个新的化身,引用了一个全新的对象。第三次,所有相同的事情再次发生。新的anEmployee变量最后引用第三个对象。整个故事在这里被描绘。三次调用payOneEmployee方法。