Fraction class
change your Fraction class so that its instance variables (numerator and
denominator) are hidden (i.e. private). Check that client class (after this
change) will now not compile. That is, if the client class previously accessed
the Fraction class instance variable numerator to test the Fraction class , why does it now not compile?
//TestFraction.java
import java.util.Scanner;
//test program
public class TestFraction
{
public static void main(String[] args) {
//create a Scanner object
Scanner in = new Scanner(System.in);
//create new fraction
Fraction frac = new Fraction();
//declare numerator and denominator
int n=1,d;
System.out.print("Enter Fraction's Numerator: ");
//input numerator
n = in.nextInt();
System.out.print("Enter Fraction's Denominator: ");
//input denominator
d = in.nextInt();
//loop execute until the numerator is negative
while(n>=0)
{
//call input with n and d
frac.input(n, d);
//call display
frac.display();
System.out.print("Enter Fraction's Numerator: ");
//input numerator
n = in.nextInt();
System.out.print("Enter Fraction's Denominator: ");
//input denominator
d = in.nextInt();
}
}
}
//Fraction.java
class Fraction {
//Fraction numerator
int numerator;
//Fraction denominator
int denominator;
int n,d;
//method to initialize numerator and denominator
public void input(int num, int den)
{
numerator = num;
//check if denominator is not zero
if (den != 0) {
denominator = den;
}
else {
System.out.println("Invalid denominator!!");
System.exit(0);
}
}
//method to display fraction
public void display()
{
//if the denominator is less than 0 then swap the sign of both numerator and denominator
if(denominator<0)
{
n= (-1)*numerator;
d=(-1)*denominator;
System.out.println(n + "/" + d);
}
else
{
System.out.println(numerator + "/" + denominator);
}
}
}
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 1 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)