package com.codegym.task.task14.task1414;
/*
MovieFactory
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws Exception {
// Read several keys (strings) from the console. Item 7
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
Movie movie = null;
while(true){
movie=MovieFactory.getMovie(s);
if(!(s.equals("thriller") || s.equals("cartoon") || s.equals("soapOpera"))){
break;
}
else{
System.out.println(movie.getClass().getSimpleName());
}
}
/*
8. Create a variable movie in the Movie class, and for each entered string (key):
8.1. Get an object using MovieFactory.getMovie and assign it to the variable movie.
8.2. Display the result of calling movie.getClass().getSimpleName().
*/
}
static class MovieFactory {
static Movie getMovie(String key) {
Movie movie = null;
// Create a SoapOpera object for the key "soapOpera"
if ("soapOpera".equals(key)) {
movie = new SoapOpera();
}
if("cartoon".equals(key)){
movie = new Cartoon();
}
if("thriller".equals(key)){
movie = new Thriller();
}
//write your code here. Items 5, 6
return movie;
}
}
static abstract class Movie {
}
static class SoapOpera extends Movie {
}
public static class Cartoon extends Movie {
}
public static class Thriller extends Movie{
}
// Write your classes here. Item 3
}
package com.codegym.task.task14.task1414;
/*
MovieFactory
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws Exception {
// Read several keys (strings) from the console. Item 7
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
Movie movie = null;
while(true){
movie=MovieFactory.getMovie(s);
if(!(s.equals("thriller") || s.equals("cartoon") || s.equals("soapOpera"))){
break;
}
else{
System.out.println(movie.getClass().getSimpleName());
}
}
/*
8. Create a variable movie in the Movie class, and for each entered string (key):
8.1. Get an object using MovieFactory.getMovie and assign it to the variable movie.
8.2. Display the result of calling movie.getClass().getSimpleName().
*/
}
static class MovieFactory {
static Movie getMovie(String key) {
Movie movie = null;
// Create a SoapOpera object for the key "soapOpera"
if ("soapOpera".equals(key)) {
movie = new SoapOpera();
}
if("cartoon".equals(key)){
movie = new Cartoon();
}
if("thriller".equals(key)){
movie = new Thriller();
}
//write your code here. Items 5, 6
return movie;
}
}
static abstract class Movie {
}
static class SoapOpera extends Movie {
}
public static class Cartoon extends Movie {
}
public static class Thriller extends Movie{
}
// Write your classes here. Item 3
}