diff --git a/src/practices/practice_12/task/task_1.java b/src/practices/practice_12/task/task_1.java new file mode 100644 index 0000000..d612b7c --- /dev/null +++ b/src/practices/practice_12/task/task_1.java @@ -0,0 +1,44 @@ +package practices.practice_12.task; + +public class task_1 { + + public static void main(String[] args) { + Child child = new Child(100); + child.printValues(); + } +} + +//Суперкласс +class Parent { + + protected int value = 10; + + public Parent(int value) { + this.value = value; + System.out.println("Конструктор суперкласса, value = " + value); + } + + public void show() { + System.out.println("Метод суперкласса, value = " + value); + } +} + +//Подкласс +class Child extends Parent { + + private int value = 20; + + public Child(int value) { + //Вызов конструктора суперкласса + super(value); + System.out.println("Конструктор подкласса"); + } + + public void printValues() { + //Доступ к полю суперкласса + System.out.println("Поле суперкласса: " + super.value); + + //Доступ к методу суперкласса + super.show(); + } +} diff --git a/src/practices/practice_12/task/task_3.java b/src/practices/practice_12/task/task_3.java new file mode 100644 index 0000000..21ca462 --- /dev/null +++ b/src/practices/practice_12/task/task_3.java @@ -0,0 +1,39 @@ +package practices.practice_12.task; + +public class task_3 { + + public static void main(String[] args) { + A obj1 = new A(); + A obj2 = new A(10); + A obj3 = new A(10, 20); + A obj4 = new A(10, 20, 30); + } +} + +class A { + int a; + int b; + int c; + int z; + + public A() { + z = 1; + } + + public A(int a) { + this(); // вызов конструктора без параметров + this.a = a; + + } + + public A(int a, int b) { + this(a); // вызов конструктора с одним параметром + this.b = b; + } + + public A(int a, int b, int c) { + this(a, b); // вызов конструктора с двумя параметрами + this.c = c; + System.out.println("A(int, int, int): c = " + c); + } +}