Вопросы и ответы | 

Дмитрий Курганский
Поступление на базе двух высших

Здравствуйте, скажите, пожалуйста, я окончил 2 высших образования, хотел бы теперь поступить на факультет Инженерия програмного обеспечения (на базе технического образования который) к вам и узнать есть ли обучение по данной специальности на базе двух высших образований, или обучение сразу по направлению магистратуры. . Также хотелось бы узнать срок подачи заявлений на поступление. Заранее благодарен.

-------------------------

С уважением, Дмитрий Курганский

Владимир Ефименко
Владимир Ефименко | Репутация: 5933 (Профессионал) 19 июня 2015 в 12:40

Обучение по программам высшего образования у нас закрыты

Андрей Тюрин
Программирование на Java:

Нужна помощь. У меня не работает пример из лекции №9 

тема  внутри лекции клонирование.

Там есть 2 примера клонирования. 

Из примера видно, что примитивное поле было скопировано и далее существует независимо в исходном и клонированном объектах. Изменение одного не сказывается на другом.

А вот ссылочное поле было скопировано по ссылке, оба объекта ссылаются на один и тот же экземпляр класса Point. Поэтому изменения, происходящие с исходным объектом, сказываются на клонированном.

Этого можно избежать, если переопределить метод clone() в классе Test.

Далее приводится собственно пример того что у меня не работает. Переопределяется метеод   в классе Test переопределяется метод clone().


    public Object clone() throws CloneNotSupportedException {
        Test clone=null;
        try {
            clone=(Test) super.clone();
        } catch (CloneNotSupportedException e) {
            throw new InternalError(e.getMessage());
        }
        clone.p=(Point)this.p.clone();
        return clone;
    }  
 

на рисунке видно что NetBeans подчеркнул метод clone() для обьекта p типа Point.
При попытке откомпилировать программу пишет:

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - clone() has protected access in java.lang.Object
    at lecture9.clone2.Test.clone(Test.java:17)
    at lecture9.clone2.Test.main(Test.java:24)

Очевидно что для класса Point метод clone переопределён. Но пример вроде как должен работать судя по ллекции, а у меня не работает. 
кроме того нашол на ютубе разбор аналогичной темы https://www.youtube.com/watch?v=BI_Z8wTVFl8

попробовал повторить то что делается в этом видео результат такой же. Хотя на видео всё работает.
В чем проблемма? Подскажитье прожалуйста.
Спасибо

Теги: графика
Дмитрий Протопопов
Дмитрий Протопопов | Репутация: 10 (Без статуса) 18 июня 2015 в 01:35

Добрый день, Андрей.
Вы правы в том, что необходимо переопределить метод clone() в классе Point с  подходящим методом доступа (в данном примере подойдет только public), если вы хотите использовать его не только внутри текущего объекта класса Point.

Если вы не переопределите clone(), то это будет значить, что в строке 
clone.p=(Point)this.p.clone();
вы из объекта класса Test по ссылке типа Point пытаетесь получить доступ к защищенному методу класса Object(что и пишет вам компилятор). Защищенные методы доступны только для экземпляров классов-наследников. Хотя Test и Point напрямую наследуют классу Object, они находятся в разных ветках. Использовать метод clone() класса Object для объекта класса Test можно только в текущем же объекте класса Test(это делается в первом примере. Без переопределения метода clone() в классе Test). Для Point только в текущем объекте класса Point.

Вот рабочий вариант этого примера:

package intuit.tutor;

/**
 * Created by Talosar on 17.06.2015.
 */
public class Test implements Cloneable {
    Point p;
    int height;

    public Test(int x, int y, int z) {
        p=new Point(x, y);
        height=z;
    }

    public static void main(String s[]) {
        Test t1=new Test(1, 2, 3), t2=null;
        try {
            t2=(Test) t1.clone();
        } catch (CloneNotSupportedException e) {
            System.out.println("Some class doesn't implement Cloneable interface");
        }
        t1.p.x=-1;
        t1.height=-1;
        System.out.println("t2.p.x=" + t2.p.x + ", t2.p.y=" + t2.p.y +", t2.height=" + t2.height);
        System.out.println("t1.p.x=" + t1.p.x + ", t1.p.y=" + t1.p.y +", t1.height=" + t1.height);
    }

    protected Object clone() throws CloneNotSupportedException {
        Test clone=null;
        clone=(Test) super.clone();
        clone.p = (Point) this.p.clone();
        return clone;
    }
}

class Point implements Cloneable{
    public int x;
    public int y;

    Point(){
        super();
        x=0;
        y=0;
    }

    Point(int x, int y){
        super();
        this.x = x;
        this.y = y;
    }

    public Object clone() throws CloneNotSupportedException {
        Point clone=null;
        clone=(Point) super.clone();
        return clone;
    }
}

Будут еще вопросы - задавайте,  постараюсь вам помочь. Если что-то не удалось разъяснить  - уточняйте. 

Дмитрий Протопопов
Дмитрий Протопопов | Репутация: 10 (Без статуса) 18 июня 2015 в 02:00

К слову, второй рабочий вариант для этого примера – импортировать стандартный класс java.awt.Point. В этом случае вам не придется писать ничего своего для того, чтоб примера из лекции заработал, т.к. java.awt.Point по цепочке наследования реализует интерфейс Cloneable и переопределяет метод clone() с public модификатором доступа.

Евгений Зелик
Введение в программирование на Delphi. Застрял на лекции 31, помогите!

 Лекция 31: "...Выделите поле с датой. В свойстве EditMask укажите маску для ввода даты...". Поле с датой - это компонент DBEdit. Где найти его свойство EditMask? Спасибо.

С уважением, Евгений.

Светлана Большакова
работа файла с расширением exe созданном в vizual basic 3.0 в среде windows 8

Я не так давно в среде windiows xp в vizual basic 3.0  создала исполняемый файл с расширением exe, этотфайл работает в windows xp (64 р), а в windows 8 не работает. Что можно сделать для работы с этим файлом в windows 8?

Валерий Кудрявцев
Сроки обучения Инжерения программного обеспечения второе высшее

Добрый вечер. Вопрос по теме такой. Сегодня записался на второе высшее "Инжерения программного обеспечения". На вкладе моя учеба смотрю зачетную книжку и вижу даты окончания курсов из первого модуля: практически по всем курсам 1 мая. То есть до этой даты нужно сдать тесты по данным курсам? Спрашиваю, так как вряд ли успею за 12 оставшихся дней полностью освоить все 7 курсов и сдать по ним тесты (экзамены).

Владимир Ефименко
Владимир Ефименко | Репутация: 5933 (Профессионал) 20 апреля 2015 в 10:51

Добрый день. Эти даты носят рекомендательный характер, на них можно не обращать внимание.

Андрей Хорольский
Андрей Хорольский | Репутация: 522 (Специалист) 21 апреля 2015 в 13:55

сдавайте когда будет удобно, на дату не смотрите

Андрей Манин
где взять текст примеров?

Во время видео урока Сошников Д.В. ссылается на тексты своих примеров.
Хотелось бы увидеть их в виде текста программ.
Спасибо!

Виталий Лабик
Куда исчезла ваша древовидная структура курсов?

Куда исчезла ваша древовидная структура курсов? Сейчас выбираешь например "программирование" (слева в секции "каталог") и получаешь просто список всех курсов по программировнию без делений на языки и/или технологии .... просто 16 страниц курсов. Юзабилити падает в разы... Или может я не туда смотрю ?

Максим Туманов
Ошибка

В тесте №3 в задании есть 2 идентичных варианта ответа из-за которых у меня занижали оценку (вопрос задания не помню), получилось пройти тест без этого вопроса только с 3 попытки, прошу внести коррекции в тест №3.

Евгений Колегов
Евгений Колегов | Репутация: 140 (Кандидат) 13 апреля 2015 в 19:20

А курс то какой?

Андрей Хорольский
Андрей Хорольский | Репутация: 522 (Специалист) 13 апреля 2015 в 23:41

о каком курсе идет речь?

Сергей Иванов
В чём разница ?

Чем отличается ?

Учёба -> Курсы -> Язык программирования PHP

от

Учёба -> Повышение квалификации -> Язык программирования PHP

Теги: php
Александр Игнатов
Александр Игнатов | Репутация: 102 (Кандидат) 13 апреля 2015 в 19:31

Смотрите в адресную строку, это один и тот же курс.

Илдус Газизуллин
PHP на Windows 8.1

Можно ли проходить курс http://www.intuit.ru/studies/courses/42/42/info на Windows 8.1, устанавливая,соответственно, дистрибутивы программ,указанных в лекции? (курс немного устарел, возможно ли несовместимость, проблемы, отсутствие некоторых файлов, библиотек в установленном ПО)

Александр Канардов
C чего начать обучении програмированию ?

На каком языке програмирования учиться ?  Очень интересно програмирование, но я теряюсь в таком потоке информации. Подскажите)

Елена Курьянова
Елена Курьянова | Репутация: 2 (Без голоса) 1 апреля 2015 в 23:16

Не тратьте время, Паскаль устарел, изучайте, например, Питон (python)