forked from int28h/JavaTasks
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path4_Class_vs_Instance.java
More file actions
56 lines (51 loc) · 1.64 KB
/
4_Class_vs_Instance.java
File metadata and controls
56 lines (51 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/**
* Write a Person class with an instance variable, age, and a constructor that takes an integer, initialAge,
* as a parameter. The constructor must assign initialAge to age after confirming the argument passed as initialAge
* is not negative; if a negative argument is passed as initialAge the constructor should set age to 0 and print
* "Age is not valid, setting age to 0.". In addition, you must write the following instance methods:
* 1. yearPasses() should increase the age instance variable by 1.
* 2. amIOld() should perform the following conditional actions:
* - If age < 13, print "You are young.".
* - If age > 13 and age < 18, print "You are a teenager.".
* - Otherwise, print "You are old.".
*/
import java.io.*;
import java.util.*;
public class Person {
private int age;
public Person(int initialAge) {
if(initialAge >= 0){
this.age = initialAge;
} else {
System.out.println("Age is not valid, setting age to 0.");
this.age = 0;
}
}
public void amIOld() {
if (age < 13) {
System.out.println("You are young.");
} else if (age < 18) {
System.out.println("You are a teenager.");
} else {
System.out.println("You are old.");
}
}
public void yearPasses() {
age++;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for (int i = 0; i < T; i++) {
int age = sc.nextInt();
Person p = new Person(age);
p.amIOld();
for (int j = 0; j < 3; j++) {
p.yearPasses();
}
p.amIOld();
System.out.println();
}
sc.close();
}
}