ЗАДАЧА 12.12.01.
package com.javarush.test.level12.lesson12.home01;
/* Метод getName в классе Cat
Переопредели метод getName в классе Cat так, чтобы программа выдавала на экран надпись
«Я - кот».
*/
public class Solution
{
public static void main(String[] args)
{
Pet pet = new Cat();
System.out.println(pet.getName());
}
public static class Pet
{
public String getName()
{
return "Я - пушистик";
}
}
public static class Cat extends Pet
{
public String getName()
{
return ("Я - кот");
}
}
}
ЗАДАЧА 12.12.02.
package com.javarush.test.level12.lesson12.home02;
/* Метод setName в классе Cat
Переопредели метод setName в классе Cat так, чтобы программа выдавала на экран надпись
«Я - кот».
*/
public class Solution
{
public static void main(String[] args)
{
Pet pet = new Pet();
pet.setName("Я - пушистик");
System.out.println(pet.getName());
}
public static class Pet
{
protected String name;
public Pet()
{
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
public static class Cat extends Pet
{
@Override
public void setName(String name)
{
super.setName("Я - кот");
}
}
}
ЗАДАЧА 12.12.03.
package com.javarush.test.level12.lesson12.home03;
/* Добавь один метод в класс Cat
Добавь один метод в класс Cat так, чтобы программа ничего не выводила на экран.
*/
public class Solution
{
public static void main(String[] args)
{
Pet pet = new Cat();
pet.setName("Я - пушистик");
System.out.println(pet.getName());
}
public static class Pet
{
protected String name;
public Pet()
{
}
public final String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
public static class Cat extends Pet
{
public void setName(String name)
{
this.name = "";
}
}
}
ЗАДАЧА 12.12.04.
package com.javarush.test.level12.lesson12.home04;
/* Что это? «Кот», «Тигр», «Лев», «Бык», «хз»
Напиши метод, который определяет, какой объект передали в него.
Программа должна выводить на экран одну из надписей:
«Кот», «Тигр», «Лев», «Бык», «хз».
*/
public class Solution
{
public static void main(String[] args)
{
System.out.println(getObjectType(new Cat()));
System.out.println(getObjectType(new Tiger()));
System.out.println(getObjectType(new Lion()));
System.out.println(getObjectType(new Bull()));
System.out.println(getObjectType(new Pig()));
}
public static String getObjectType(Object o)
{
//напишите тут ваш код
if (o instanceof Cat) return "Кот";
else if (o instanceof Tiger) return "Тигр";
else if (o instanceof Lion) return "Лев";
else if (o instanceof Bull) return "Бык";
else return "хз";
}
public static class Cat
{
}
public static class Tiger
{
}
public static class Lion
{
}
public static class Bull
{
}
public static class Pig
{
}
}
ЗАДАЧА 12.12.05.
package com.javarush.test.level12.lesson12.home05;
/* Что это? «Кот», «Тигр», «Лев», «Бык», «Корова», «Животное»
Напиши метод, который определяет, какой объект передали в него.
Программа должна выводить на экран одну из надписей:
«Кот», «Тигр», «Лев», «Бык», «Корова», «Животное».
Замечание: постарайся определять тип животного как можно более точно.
*/
public class Solution
{
public static void main(String[] args)
{
System.out.println(getObjectType(new Cat()));
System.out.println(getObjectType(new Tiger()));
System.out.println(getObjectType(new Lion()));
System.out.println(getObjectType(new Bull()));
System.out.println(getObjectType(new Cow()));
System.out.println(getObjectType(new Animal()));
}
public static String getObjectType(Object o)
{
//напишите тут ваш код
if (o instanceof Tiger) return "Тигр";
else if (o instanceof Lion) return "Лев";
else if (o instanceof Cat) return "Кот";
else if (o instanceof Bull) return "Бык";
else if (o instanceof Cow) return "Корова";
else return "Животное";
}
public static class Cat extends Animal //<--Классы наследуются!!
{
}
public static class Tiger extends Cat
{
}
public static class Lion extends Cat
{
}
public static class Bull extends Animal
{
}
public static class Cow extends Animal
{
}
public static class Animal
{
}
}
ЗАДАЧА 12.12.06.
package com.javarush.test.level12.lesson12.home06;
/* Fly, Run, Climb для классов Cat, Dog, Tiger, Duck
1. Внутри класса Solution создай интерфейс public interface Fly(летать) с методом void fly().
2. Внутри класса Solution создай интерфейс public interface Climb(лазить по деревьям) с методом void climb().
3. Внутри класса Solution создай интерфейс public interface Run(бегать) с методом void run().
4. Подумай логически, какие именно интерфейсы нужно добавить для каждого класса.
5. Добавь интерфейсы классам Cat(кот), Dog(собака), Tiger(тигр), Duck(Утка).
*/
public class Solution
{
public interface Fly
{
void fly();
}
public interface Climb
{
void climb();
}
public interface Run
{
void run();
}
public class Cat implements Climb, Run
{
@Override
public void run()
{
}
@Override
public void climb()
{
}
}
public class Dog implements Run
{
@Override
public void run()
{
}
}
public class Tiger extends Cat implements Climb, Run
{
}
public class Duck implements Fly, Run
{
@Override
public void fly()
{
}
@Override
public void run()
{
}
}
}
ЗАДАЧА 12.12.07.
package com.javarush.test.level12.lesson12.home07;
/* Fly, Run, Swim для классов Duck, Penguin, Toad
Есть интерфейсы Fly(летать), Swim(плавать), Run(бегать).
Добавь эти интерфейсы классам Duck(утка), Penguin(пингвин), Toad(жаба)
*/
public class Solution
{
public static void main(String[] args)
{
}
public interface Fly
{
public void fly();
}
public interface Run
{
public void run();
}
public interface Swim
{
public void swim();
}
public class Duck implements Fly, Run, Swim
{
@Override
public void fly()
{
}
@Override
public void run()
{
}
@Override
public void swim()
{
}
}
public class Penguin implements Run, Swim
{
@Override
public void run()
{
}
@Override
public void swim()
{
}
}
public class Toad implements Swim
{
@Override
public void swim()
{
}
}
}
ЗАДАЧА 12.12.08.
package com.javarush.test.level12.lesson12.home08;
/* Интерфейсы к классу Human
Добавь как можно больше интерфейсов к классу Human, но чтобы он не стал абстрактным классом.
Добавлять методы в класс Human запрещается.
*/
public class Solution
{
public static void main(String[] args)
{
Human human = new Human();
System.out.println(human);
}
public static interface Worker
{
public void workLazy();
}
public static interface Businessman
{
public void workHard();
}
public static interface Secretary
{
public void workLazy();
}
public static interface Miner
{
public void workVeryHard();
}
public static class Human implements Worker, Businessman, Secretary, Miner
{
public void workHard()
{
}
public void workLazy()
{
}
@Override
public void workVeryHard()
{
}
}
}
ЗАДАЧА 12.12.09.
package com.javarush.test.level12.lesson12.home09;
/* Родитель класса CTO
Добавь такой класс-родитель к классу CTO(технический директор), чтобы класс перестал быть абстрактным.
Добавлять/реализовывать методы в классе CTO запрещается.
*/
public class Solution
{
public static void main(String[] args)
{
CTO cto = new CTO();
System.out.println(cto);
}
public static interface Businessman
{
public void workHard();
}
public static class One implements Businessman
{
@Override
public void workHard()
{
}
}
public static class CTO extends One
{
}
}
ЗАДАЧА 12.12.10.
package com.javarush.test.level12.lesson12.home10;
/* Метод, который выводит на экран число 10
Добавь еще один метод, чтобы программа выводила на экран число 10.
Подсказка: используй перегрузку методов.
*/
public class Solution
{
public static void main(String[] args)
{
Integer i = 5;
int x = transformValue(i);
System.out.println(x);
}
public static int transformValue(Integer i)
{
return i*2;
}
public static int transformValue(int i)
{
return i*i;
}
}
Leave A Comment