Скажем, у меня есть кусок кода:Каково значение предоставления конструктора дочернего класса объекту родительского класса?
class one
{
String one = "First";
}
class sec extends one
{
String sec = "Second";
}
class num
{
public static void main(String[] args)
{
one o = new one();
sec s = new sec();
one oo = new sec();
// the object will be of that class for which we are providing the reference
// then what is the use of the constructor
sec s = new one(); // this is not working
System.out.println(o.one);
System.out.println(s.sec);
System.out.println(oo.one); # this seems right
System.out.println(oo.sec); # this is not working
}
}
Я смущен ссылки и конструктору при создании объекта. Я расширил класс sec
для наследования класса one
. У меня есть смысл создания первых двух объектов, которые мы ссылаемся на класс one
и создаем тот же объект для второго объекта.
Но как насчет третьего объекта? Мы используем ссылку первого класса и предоставляем конструктор дочернего класса, и я могу использовать третий объект (оо) только для ссылки на переменную и методы одного класса, а не второго класса.
Если мне нужно использовать методы и переменные одного класса, то я могу использовать его с объектом (o), а не с объектом (oo). Так в чем же разница между обоими объектами, когда они ведут себя как друг друга?
one o = new one();
one oo = new sec();
Я хочу знать разницу между этими двумя, что каковы изменения происходят, когда мы используем конструктор дочернего класса, а не базовый класс.
Хорошо, я посмотрю, спасибо, сэр :-) – babygame0ver
Определенно, взгляните на полиморфизм. Также это не JAVA. Это будет полезно для любого ООП. – Tom
@AkshaySingh Ищите все будущие вопросы на сайте перед публикацией нового вопроса. Скорее всего, на ваш вопрос, возможно, уже был дан ответ. – CKing