package com.codegym.task.task14.task1411;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
User, loser, coder and programmer
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Person person = null;
String key = null;
// Here's the loop for reading the keys. Item 1
while (true)
{
// Create an object. Item 2
key = reader.readLine();
switch(key)
{
case "user":
person = new Person.User();
doWork(person); // Call doWork
// break;
case "loser":
person = new Person.Loser();
doWork(person);
// break;
case "coder":
person = new Person.Coder();
doWork(person);
// break;
case "programmer":
person = new Person.Programmer();
doWork(person);
// break;
default:
break;
}
if (!key.equals("user") || !key.equals("loser") || !key.equals("coder") || !key.equals("programmer"))
{
break;
}
}
}
public static void doWork(Person person) {
// Item 3
if (person instanceof Person.User) ((Person.User)person).live();
else if (person instanceof Person.Loser) ((Person.Loser)person).doNothing();
else if (person instanceof Person.Coder) ((Person.Coder)person).writeCode();
else if (person instanceof Person.Programmer) ((Person.Programmer)person).enjoy();
}
}
package com.codegym.task.task14.task1411;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
User, loser, coder and programmer
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Person person = null;
String key = null;
// Here's the loop for reading the keys. Item 1
while (true)
{
// Create an object. Item 2
key = reader.readLine();
switch(key)
{
case "user":
person = new Person.User();
doWork(person); // Call doWork
// break;
case "loser":
person = new Person.Loser();
doWork(person);
// break;
case "coder":
person = new Person.Coder();
doWork(person);
// break;
case "programmer":
person = new Person.Programmer();
doWork(person);
// break;
default:
break;
}
if (!key.equals("user") || !key.equals("loser") || !key.equals("coder") || !key.equals("programmer"))
{
break;
}
}
}
public static void doWork(Person person) {
// Item 3
if (person instanceof Person.User) ((Person.User)person).live();
else if (person instanceof Person.Loser) ((Person.Loser)person).doNothing();
else if (person instanceof Person.Coder) ((Person.Coder)person).writeCode();
else if (person instanceof Person.Programmer) ((Person.Programmer)person).enjoy();
}
}