gpt4 book ai didi

constructor - 创建适当的重载构造函数伪代码

转载 作者:行者123 更新时间:2023-12-04 02:35:27 24 4
gpt4 key购买 nike

我对如何创建重载构造函数有点困惑。

下面是我的作业:

Include the following:
i) A default constructor and an overloaded constructor.
ii) Accessor and mutator methods for each attribute.

下面是我的伪代码。从我目前创建的内容来看,我假设 OVERLOADED 构造函数是一个具有参数的构造函数,但我对此并不确定。

public class Employee

// declarations
private employeeid : integer
private employeesalary : integer

public Employee ()
employeeid = 0
employeesalary = 0
return

public Employee (id : integer, salary : integer)
employeeid = id
employeesalary = salary
return

public num getemployeeid ( )
return employeeid

public num getemployeesalary ( )
return employeesalary

public String getnumberofaccidents ( )
return numberofaccidents

public void setCustomeraget(integer id)
employeeid = id
return

public void setEmployeesalary (integer salary)
employeesalary = salary
return

End Class

例子:

public policy holder (nr : num, age : num, nracct : num)

set policynumber (nr : num)

set customerage (age : num)

set NumberAccident (nrAcct)

最佳答案

正是出于这个原因,我一直讨厌 在类设置中 的 psudocode。你写了多少?我可以省略什么,或者换句话说,我们在这里认为什么是理所当然的?

至于重载函数,看起来你理解得很好。

这是不带任何参数的默认构造函数:

public Employee ()

这是你的另一个构造函数,它确实接受参数。

public Employee (id : integer, salary : integer)

因此,要回答您原来的问题,您是对的。重载的构造函数只是具有多个采用不同参数的构造函数。在您的情况下,我可以通过两种不同的方式调用构造函数来创建类:

Employee myEmployee = new Employee();

Employee myEmployee = new Employee(12, 64500);

用程序员的话说,你有一个重载的构造函数。

至于代码的其余部分:

你做错的一件事是你没有申报“numberofaccidents”。像这样:

private employeeid : integer
private employeesalary : integer
private numberofaccidents : integer

将访问器和修改器视为“ getter ”和“ setter ”。不过,您可能希望将“setCustomeraget”更改为“setCustomerId”。此外,没有“setnumberofaccidents”。尝试将你的 getter 和 setter 配对,这样你就可以随时知道是否缺少一个。像这样:

public num getSalary() 
return employeesalary

public void setSalary(integer salary)
employeesalary = salary

关于constructor - 创建适当的重载构造函数伪代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4103432/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com