• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 210
  • Last Modified:

Compilation errors, help with using constructors

I made a class called Complex which holds 3 methods. Then i created another file called complextest
I'm trying to invoke the methods in complex through complextest but getting errors in the complextest

I'm not sure what I'm doing wrong or what I need to do to resolve this problem.

here is the code for complex

public class Complex
{
   
    public Complex()
    {
       

       

    }
   
    public void add(float w, float x, float y, float z)
    {
       float a = w + y;
       float b = x + z;
       System.out.println(a + " + " + b + "i");
    }
   
    public void subtract(float w, float x, float y, float z)
    {
        float a = w - y;
        float b = x - z;
        System.out.println(a + " + " + b + "i");
    }
   
    public void printComplex(float w, float x, float y, float z)
    {
        System.out.print( "(" + w + "," + x + ")");
        System.out.println(" (" + y + "," + z + ")");
    }
   
}

here is the code for complextest

import javax.swing.JOptionPane;
import java.lang.String;

public class Complextest {
           
    public static void main(String args[])
        {
            String I, I2; //user input for the imagionary parts
            String R, R2; //user input for the real parts
            float real, real2; //to be used for calculations
            float imag, imag2; //to be used for calculations
           
                    //recieve input from user
            R = JOptionPane.showInputDialog("Enter the real part of the first complex num.");
            I = JOptionPane.showInputDialog("Enter the imagionary part of the first complex num.");
            R2 = JOptionPane.showInputDialog("Enter the real part of the second complex num.");
            I2 = JOptionPane.showInputDialog("Enter the imagionary part of the second complex num.");
       
            //convert string input into float to be used for calculations
            real = Float.parseFloat(R);
            real2 = Float.parseFloat(R2);
            imag = Float.parseFloat(I);
            imag2 = Float.parseFloat(I2);
           
            Complex complex = new Complex(R, I, R2, I2);
            Complex.add(real, imag, real2, imag2);
            Complex.subtract(real, imag, real2, imag2);
            Complex.printComplex(real, imag, real2, imag2);

            /*method calls
            add(real, imag, real2, imag2);
            subtract(real, imag, real2, imag2);
            printComplex(real, imag, real2, imag2);*/
        }
       
    }

and here is the errors that I'm receiving:

Complextest.java [33:1] cannot resolve symbol
symbol  : class Complex
location: class Complextest
            Complex complex = new Complex(R, I, R2, I2);
            ^
Complextest.java [33:1] cannot resolve symbol
symbol  : class Complex
location: class Complextest
            Complex complex = new Complex(R, I, R2, I2);
                                  ^
Complextest.java [34:1] cannot resolve symbol
symbol  : variable Complex
location: class Complextest
            Complex.add(real, imag, real2, imag2);
            ^
Complextest.java [35:1] cannot resolve symbol
symbol  : variable Complex
location: class Complextest
            Complex.subtract(real, imag, real2, imag2);
            ^
Complextest.java [36:1] cannot resolve symbol
symbol  : variable Complex
location: class Complextest
            Complex.printComplex(real, imag, real2, imag2);
            ^
5 errors
Errors compiling Complextest.

Thanks for the help.
0
Orlando15767
Asked:
Orlando15767
  • 3
  • 3
1 Solution
 
Moroni24Commented:
I don't see a constructor for complex that takes 4 strings as parameters... do you need to crate one or is it just not listed?
0
 
Orlando15767Author Commented:
are you saying that I need to change the parameters from the strings to the floats?
0
 
Moroni24Commented:
You don't have a constructor that takes 4 strings as params. Your constructor takes nothing. So you need to do something like

public class Complex
{

  String I, I2; //user input for the imagionary parts
  String R, R2; //user input for the real parts

   
    public Complex(String I, String I2, String R, String R2)
    {
        this.I = I;
        this.I2 = I2;
        this.R = R;
        tis.R2 = R2;
    }
     
....
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Orlando15767Author Commented:
I put that in Complex, but I'm still getting the same errors in Complextest
0
 
Moroni24Commented:
are they in the same package?
0
 
Orlando15767Author Commented:
that was the problem.....

thanks for all the help
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now