创建一个正确的重载构造函数伪代码

时间:2010-11-05 03:42:54

标签: constructor pseudocode

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

以下是我的任务:

  

包括以下内容:
  i)默认构造函数和重载构造函数   ii)每个属性的访问器和增变器方法。

下面是我的伪代码。从我到目前为止创建的内容,我假设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)

2 个答案:

答案 0 :(得分:2)

出于这个原因,我总是讨厌教室设置中的psudocode 。你写多少钱?我可以放弃什么,换句话说,我们在这里认为理所当然的是什么?

就重载功能而言,看起来好像你理解它很好。

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

public Employee ()

这是你的其他构造函数确实接受了参数。

public Employee (id : integer, salary : integer)

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

Employee myEmployee = new Employee();

OR

Employee myEmployee = new Employee(12, 64500);

在程序员中说你有一个重载的构造函数。

至于代码的 rest

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

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

将访问者和变异者视为“getters”和“setter”。您可能希望将“setCustomeraget”更改为“setCustomerId”。此外,没有“setnumberofaccidents”。尝试并配对你的getter和setter,这样你就可以随时告诉你是否错过了一个。像这样:

public num getSalary() 
return employeesalary

public void setSalary(integer salary)
employeesalary = salary

答案 1 :(得分:0)

是。你的代码在右边看起来像它。但是,方法/函数不应该成为类的一部分吗?

  • 重载X是具有不同参数集的X.
  • Accessor是一个从对象中获取内容的函数(有时称为属性)。
  • mutator是一个改变对象某些方面的函数(有时称为属性)。