For an assignment, I had to make a class that would accept fractions, but whenever I try to reference the methods in the program I get this error: "Cannot make a static reference to the non-static method". Here's part of my program:
public class Fraction {
  public static void main(String[] args) {
    Scanner keyboard = new Scanner(System.in);
    String operator;
    System.out.println("What is your numerator?");
    long num = keyboard.nextInt();
    System.out.println("What is your denominator?");
    long denom = keyboard.nextInt();
    System.out.println("Your current fraction is: " + toString());
    keyboard.close(); }
  private long numerator;
  private long denominator;
  public Fraction() {  //constructs fraction 0/1
    numerator = 0;
    denominator = 1; }
  public Fraction(long num){  //constructs fraction n/1
    numerator = num;
    denominator = 1; }
  public Fraction(long num, long denom){  //constructs fraction n/d 
    numerator = num;
    if (denom == 0){  //make sure denom isn't 0
      throw new ArithmeticException(); }
    else{
      denominator = denom; }
    setSign(); } 
  public void add(Fraction fraction){  //addition
    if(fraction.denominator == this.denominator){
     this.numerator += fraction.numerator; }
    else{
      this.numerator *= fraction.denominator;
      this.denominator *= fraction.denominator;
      long temp = fraction.numerator * this.denominator;
      this.numerator += temp; } }   
  public String toString(){  //returns fraction as string
    return (numerator + "/" + denominator); }
  }
How would I access these methods from the main method? Also, how would I call methods like the addition method (what would the code look like)?
Any help is greatly appreciated, thanks!