До сих пор бьюсь в конвульсиях здравого смысла и не могу понять : Почему Blue blue = new Blue(); - это правильно с технической точки зрения, а Colour blue = new Colour(); - совершенно не правильно. Прошу простить за глупейший вопрос, но я чайник в программировании. P.s задачу смог решить первым способом, но не особо обрадовался, потому что не совсем понял принцип.