小编Uvr*_*vrD的帖子

通过return语句java调用私有方法

所以我是java的新手,我正试图绕过这个.到目前为止,我正在编写一个调用私有方法的公共方法,这两个方法都写在同一个类中.在测试公共方法时,我能够针对对象employeeOne调用public方法,该对象的参数由用户提供.我不确定这里有私有方法调用,但是因为看起来我在类(我认为)上调用它而不是具有已定义属性的对象.

所以这是我在一个名为Employee的类中编写的私有方法:

private static double computeGrossPay()
{
    if (hoursWorked <= 40)
    {
        grossPay = (hoursWorked * payRate);
    }
    else if (hoursWorked >= 40)
    {
        grossPay = ((40 * payRate) + ((1.5 * payRate) * (hoursWorked - 40)));
    }
    return grossPay;
}
Run Code Online (Sandbox Code Playgroud)

我试图想办法在另一个类中调用这个方法,显然因为它是一个私有方法,所以我不能在它编写的类之外的任何地方调用它.所以我写了一个调用的方法来调用私人方法

public double grossPayDisplay()
{
    return Employee.computeGrossPay();
}
Run Code Online (Sandbox Code Playgroud)

这是我的问题发挥作用:到目前为止,此代码的工作,但我不是完全清楚为什么它的工作原理.

这是我测试它的方式:

System.out.println(employeeOne.grossPayDisplay());
Run Code Online (Sandbox Code Playgroud)

employeeOne是从Employee类创建的对象,其参数由用户提供,我的问题是:

编译器如何从Employee.computeGrossPay()中的Employee转到employeeOne?

或者重申如何做

return Employee.computeGrossPay() 
Run Code Online (Sandbox Code Playgroud)

实际上将属性传递给computeGrossPay()?

java

6
推荐指数
1
解决办法
2206
查看次数

ArrayList和IndexOutOfBounds异常

所以我在写一些代码时得到一个索引超出范围的异常.我不明白的是,我知道我正在尝试使用的索引元素存在.

这是代码:

我有一个数组列表的构造函数

    public StixBoard(int number)
{
    stixGame = new ArrayList<Integer>(number);

    for (int i = 0; i < number; i++)
    {
        stixGame.add(i);
    }

}
Run Code Online (Sandbox Code Playgroud)

该块生成随机变量1-3

public int computeMove()
{

    int numberOfStix = (int) (3.0 * Math.random()) + 1;

    return numberOfStix;
}
Run Code Online (Sandbox Code Playgroud)

真的很直接,现在我在这里有一个方法,它接受提供的参数,并尝试从数组列表中删除这些数量的元素.如您所见,参数必须介于1和3之间,且必须小于或等于数组列表的大小.否则,提示用户输入另一个号码

public boolean takeStix(int number)
{
    boolean logicVar = false;
    placeHolder = stixGame.size();

    if ((number >= 1 && number <= 3) && number <= placeHolder)
    {
        for (int i = 0; i < number; i++)
        {
            stixGame.remove(i);
            logicVar = …
Run Code Online (Sandbox Code Playgroud)

java indexoutofboundsexception

0
推荐指数
1
解决办法
1617
查看次数

标签 统计

java ×2

indexoutofboundsexception ×1