Вот по какой причине тут опять не работает, все по инструкции сделал, а выдает: com/javarush/task/task14/task1414/Solution.java:54: error: incompatible types: com.javarush.task.task14.task1414.Solution.Cartoon cannot be converted to com.javarush.task.task14.task1414.Solution.Movie movie = new Cartoon();
package com.javarush.task.task14.task1414;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
/*
MovieFactory
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Movie movie;
String str;
while (true){
str = reader.readLine();
if (str.equals("cartoon")||str.equals("thriller")||str.equals("soapOpera")) {
if (str.equals("cartoon")) {
movie = MovieFactory.getMovie(str);
System.out.println(movie.getClass().getSimpleName());
}
} else {
MovieFactory.getMovie(str);
break;
}
}
/*
8 Создать переменную movie класса Movie и для каждой введенной строки(ключа):
8.1 получить объект используя MovieFactory.getMovie и присвоить его переменной movie
8.2 вывести на экран movie.getClass().getSimpleName()
*/
}
static class MovieFactory {
static Movie getMovie(String key) {
Movie movie = null;
//создание объекта SoapOpera (мыльная опера) для ключа "soapOpera"
if ("soapOpera".equals(key)) {
movie = new SoapOpera();
}
if ("cartoon".equals(key)) {
movie = new Cartoon();
}
if ("thriller".equals(key)) {
movie = new Thriller();
}
return movie;
}
}
static abstract class Movie {
}
static class SoapOpera extends Movie {
}
static class Cartoon {}
static class Thriller {}
}