java - Fraction class troubleshooting for Fraction Driver -


i in first semester programming java , started getting oop , ran small problem code (no surprise). need masters figure out missing, know i'm pretty close answer. given fraction driver fraction class , need write class myself. in driver has stay way is.

here driver:

import java.util.scanner;  public class fractiondemo {  public static void main(string[] args) { scanner stdin = new scanner(system.in); fraction c, d, x;       // fraction objects  system.out.println("enter numerator; denominator."); c = new fraction(stdin.nextint(), stdin.nextint()); c.print();  system.out.println("enter numerator; denominator."); d = new fraction(stdin.nextint(), stdin.nextint()); d.print();  x = new fraction();     // create fraction number 0   system.out.println("sum:"); x.add(c).add(d); x.print();  x.printasdouble();  x = new fraction(1, 1); // create fraction number 1  system.out.println("product:"); x.multiply(c).multiply(d); x.print();  x.printasdouble();  system.out.println("enter numerator; denominator."); x = new fraction(stdin.nextint(), stdin.nextint()); x.printasdouble();  } } // end main 

here fraction class have.

public class fraction { private int numerator;  // numerator of fraction private int denominator;   // denominator of fraction  //**************************************************  public void fraction() { numerator = 0; denominator = 1; } // default constructor  public void fraction(int n, int d) { numerator = n; denominator = d; } //two parameter constructor  public void print() { system.out.println(numerator + "/" + denominator); } //print fraction n/d  public void printasdouble() { system.out.printf("%f", numerator/denominator); } //print fraction double  public fraction add(fraction other) { //add // calling object = calling obj + parameter int n = this.numerator * other.denominator + this.denominator * other.numerator; int d = this.denominator * other.denominator; this.numerator = n; this.denominator = d; return this; }   //multiply public fraction multiply(fraction other) { int n = this.numerator * other.numerator; int d = this.denominator * other.denominator; this.numerator = n; this.denominator = d; return this; }  } // end fraction class 

this error message getting:

fractiondemo.java:19: error: constructor fraction in class fraction cannot applied given types;     c = new fraction(stdin.nextint(), stdin.nextint());         ^   required: no arguments   found: int,int   reason: actual , formal argument lists differ in length  fractiondemo.java:23: error: constructor fraction in class fraction cannot applied given types;     d = new fraction(stdin.nextint(), stdin.nextint());         ^   required: no arguments   found: int,int   reason: actual , formal argument lists differ in length fractiondemo.java:35: error: constructor fraction in class fraction cannot applied given types;     x = new fraction(1, 1); // create fraction number 1         ^   required: no arguments   found: int,int   reason: actual , formal argument lists differ in length  fractiondemo.java:44: error: constructor fraction in class fraction cannot applied given types;     x = new fraction(stdin.nextint(), stdin.nextint());         ^   required: no arguments   found: int,int   reason: actual , formal argument lists differ in length 4 errors  tool completed exit code 1 

you declared constructors this:

public void fraction() public void fraction(int n, int d) 

constructors not have return types. declare them:

public fraction() public fraction(int n, int d)