个人理财 Java编程:创建子类 - 傻瓜

Java编程:创建子类 - 傻瓜

视频: Spark视频王家林第12课:Scala函数式编程进阶(匿名函数、高阶函数、函数类型推断、Currying)与Spark源码鉴赏 2024

视频: Spark视频王家林第12课:Scala函数式编程进阶(匿名函数、高阶函数、函数类型推断、Currying)与Spark源码鉴赏 2024
Anonim

的人当你用Java编写一个面向对象的程序时,你首先考虑数据。你正在写账户。那么,账户是什么?您正在编写处理按钮点击的代码。那么按钮是什么?您正在编写一个计划,将薪资支票发送给员工。什么是员工?

在这个例子中,员工是有名字和职位的人。当然,员工还有其他的特点,但是现在坚持基础。这个清单中的代码定义了员工的意义。

<! --1 - >
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类。你可以使用你在这里定义的内容,并扩展定义来创建新的,更专业化的类。因此,在下一个列表中,您将定义一个新类 - FullTimeEmployee类。

<! - 2 - >
public class FullTimeEmployee extends Employee {private double weeklySalary;私人双重收益; public void setWeeklySalary(double weeklySalaryIn){weeklySalary = weeklySalaryIn;} public double getWeeklySalary(){returns weeklySalary;} public void setBenefitDeduction(double benefitDedIn){benefitDeduction = benefitDedIn;} public double getBenefitDeduction(){return benefitDeduction;} public double findPaymentAmount( ){return weeklySalary - benefitDeduction;}}

查看清单,可以看到FullTimeEmployee类的每个实例都有两个字段:weeklySalary和benefitDeduction。但那些是每个FullTimeEmployee实例唯一的字段吗?不,他们不是。

第一行表示FullTimeEmployee类扩展了现有的Employee类。这意味着除了具有每周的薪资和福利待遇外,每个FullTimeEmployee实例还有两个其他字段:name和jobTitle。这两个字段来自Employee类的定义,您可以在第一个列表中找到它。

在第二个列表中,魔术字是 。当一个类扩展现有类时,扩展类将自动继承现有类中定义的功能。因此,FullTimeEmployee类 继承 名称和jobTitle字段。 FullTimeEmployee类还继承了Employee类中声明的所有方法 - setName,getName,setJobTitle,getJobTitle和cutCheck。 FullTimeEmployee类是Employee类的

子类 。 这意味着Employee类是FullTimeEmployee类的

超类 。你也可以用血亲来谈谈。 FullTimeEmployee类是Employee类的 子 ,Employee类是FullTimeEmployee类的 父 。 几乎(但不完全),就好像FullTimeEmployee类是由此列表中的代码定义的。这个代码是假的,但内容丰富。

import static java。郎。系统。出;公共类FullTimeEmployee {私人字符串名称;私人字符串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 setWeeklySalary public double getWeeklySalary(){return weeklySalary;} public void setBenefitDeduction(double DEDIn){benefitDeduction = benefitDedIn;} public double getBenefitDeduction(){return benefitDeduction;} public double findPaymentAmount(){return weeklySalary - benefitDeduction;} public void cutCheck(double amountPaid){out。 printf(“支付给%s的订单”,名称);出。 printf(“(%s)*** $”,jobTitle);出。 printf(“%,。2fn”,amountPaid);}}

为什么这个列表是伪代码?那么,这个列表和前面列表中的继承情况之间的主要区别是:子类不能直接引用其父类的私有字段。要对父类的私有字段执行任何操作,子类必须调用父类的访问器方法。

回到第二个列表中,调用setName(“Rufus”)将是合法的,但代码名称=“Rufus”不会。如果您相信上一次列出的所有内容,那么您可以认为FullTimeEmployee类中的代码可以使用name =“Rufus”。那么,它不能。

你不需要员工。你的硬盘上的Java文件编写扩展Employee类的代码。所有你需要的是文件员工。类。

Java编程:创建子类 - 傻瓜

编辑的选择

特权的基础知识在Oracle 12c - 虚拟机

特权的基础知识在Oracle 12c - 虚拟机

用户可以在Oracle 12c数据库中完成。您可能希望允许用户能够登录,但是您可能需要限制用户是否可以执行以下任一任务:访问某些数据开始...

Oracle 12c恢复管理器(RMAN)目录 - 傻瓜

Oracle 12c恢复管理器(RMAN)目录 - 傻瓜

的基础知识Oracle 12c恢复管理器(RMAN)环境,请考虑恢复目录。恢复目录是所有RMAN配置参数,备份操作和元数据的存储库。该目录可以无限期地存储备份信息。如何在Oracle 12c中选择目录模式RMAN提供了两种用于存储备份数据的选项:NOCATALOG ...

如何验证,查看和关闭Oracle 12c审计 - 傻瓜

如何验证,查看和关闭Oracle 12c审计 - 傻瓜

打开数据库中的审计记录,跟踪您制定的审计,以便您了解所做的事情。幸运的是,Oracle 12c在数据库中提供了一些视图来帮助您跟踪自己的操作:要验证您为审计配置的系统特权,请使用视图AUDIT_UNIFIED_POLICIES。要查看...

编辑的选择

Drupal友好的网页寄存公司 - 傻瓜

Drupal友好的网页寄存公司 - 傻瓜

网页寄存公司为您提供访问Web服务器,您可以在其中安装Drupal并使您的网站在Web上可见。一些公司为您安装Drupal或为您提供一键安装,为您节省了一些工作量。如果您决定自己跳过Drupal的安装,请考虑通过以下方式之一获取帐户...

Drupal花园功能 - 傻瓜

Drupal花园功能 - 傻瓜

让您有机会查看和使用所有Drupal花园功能,可以创建一个新的站点,然后选择自定义选项而不是其中一个已安装的模板:确保已经登录,然后单击我的站点链接。这样做打开了Drupal花园站点经理。点击创建...

Drupal园林主题生成器 - 傻瓜

Drupal园林主题生成器 - 傻瓜

Drupal花园设置完成后,有一些乐趣和玩你的网站上的主题。使用Drupal Gardens Theme Builder控制网站的外观是与安装Drupal自身副本不同的主要方式。但是你不会错过太多...

编辑的选择

更改MYOB中的文本和日期 - 虚拟人物

更改MYOB中的文本和日期 - 虚拟人物

MYOB为您提供了许多快捷方式以帮助简化任务。例如,您可以像在任何文字处理器中那样在MYOB中复制和粘贴文本。以下是快捷方式:按键组合快捷键结果Ctrl-A选择所有高亮显示的文本Ctrl-C复制文本Ctrl-V粘贴文本Ctrl-X删除或剪切文本Ctrl-Z取消最后一位...

在Salesforce中创建视图。当您单击Salesforce中的某个选项卡以访问特定对象(例如“帐户”,“联系人”或“个案”)时,您可以在对象主页上找到自己的服务云 - 虚拟

在Salesforce中创建视图。当您单击Salesforce中的某个选项卡以访问特定对象(例如“帐户”,“联系人”或“个案”)时,您可以在对象主页上找到自己的服务云 - 虚拟

主页,如果你选择案例,如图所示)。案例主页。当您点击Salesforce中的一个选项卡以访问特定的对象(例如,帐户,联系人或个案)时,您可以看到一些较大的,勾勒出的最近案例,报告和矩形的矩形。