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

标签 constructor pseudocode

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

下面是我的作业:

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/

相关文章:

javascript - Function 和 new Function 的区别

python - 计算字符串中数组的出现次数

c - 读取器/写入器伪代码中潜在的竞争条件

java - OOP - 谁可以访问公共(public)、私有(private)、 protected 变量?

javascript - 创建构造函数的构造函数 (JavaScript)

javascript - 我可以通过修改 Function 原型(prototype)在对象构造期间执行操作吗?

c++ - 无法理解编译器在复制构造函数上引发的错误消息

php - 使用构造函数的好处?

algorithm - 为链表插入伪代码

arrays - 将链表转换为数组(伪代码)