powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / OOП Java
23 сообщений из 23, страница 1 из 1
OOП Java
    #38528582
Molya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
здравствуйте!!! проверьте пожалуйста
Задание: создать класс с полями, указанными в индивидуальном задании .
Реализовать в классе методы:
- конструктор по умолчанию;
- конструктор перезагрузки с параметрами;
- деструктор для освобождения памяти (с сообщением об уничтожении объекта);
- функции обработки данных (1 и 2), указанные в индивидуальном задании(табл. 11.2, столбцы 3 и 4);
- функцию формирования строки информации об объекте.
Создать проект для демонстрации работы: сформировать объекты со значениями-константами и с введенными значениями полей объекта.

Класс-родитель и его поля: Дата (три числа):день, месяц, год
Функция-метод 1 обработки данных: Увеличить год на 1
Функция-метод 2 обработки данных: Уменьшить дату на 2 дня

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
public class date {

    private int day;
    private int month;
    private int year;
    Date myDate;
    Calendar calendar = new GregorianCalendar();
    SimpleDateFormat formattedDate = new SimpleDateFormat("dd.MM.yyyy");

    public int getDay() {
        return day;
    }

    public void setDate(int day) {
        this.day = day;
    }

    public int getMonth() {
        return month;
    }

    public void setMonth(int month) {
        this.month = month;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

    public date() {
        calendar = Calendar.getInstance();
        setDate(calendar.get(Calendar.DAY_OF_MONTH));
        setMonth(calendar.get(Calendar.MONTH));
        setYear(calendar.get(Calendar.YEAR));
        System.out.println(getDay() + ":" + getMonth() + ":" + getYear());
        myDate();
        myDay();

    }

    public date(int day) {
        this.day = day;
        calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_MONTH, day);
        setMonth(calendar.get(Calendar.MONTH));
        setYear(calendar.get(Calendar.YEAR));
        System.out.println(getDay() + ":" + getMonth() + ":" + getYear());
        myDate();
        myDay();
    }

    public date(int day, int month) {
        this.day = day;
        this.month = month;
        calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_MONTH, day);
        calendar.set(Calendar.MONTH, month);
        setYear(calendar.get(Calendar.YEAR));
        System.out.println(getDay() + ":" + getMonth() + ":" + getYear());
        myDate();
        myDay();
    }

    public date(int day, int month, int year) {
        this.day = day;
        this.month = month;
        this.year = year;
        calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_MONTH, day);
        calendar.set(Calendar.MONTH, month);
        calendar.set(Calendar.YEAR, year);
        System.out.println(getDay() + ":" + getMonth() + ":" + getYear());
        myDate();
        myDay();
    }

    public void myDate() {//Увеличивает дату на один год
        try {
            int a = getYear() + 1;
            String s = getDay() + "." + getMonth() + "." + a;
            myDate = formattedDate.parse(s);
            System.out.println(myDate);
        } catch (ParseException ex) {
            Logger.getLogger(date.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    public void myDay() {//Увеличивает дату на 2 дней
        try {
            int a = getDay() + 2;
            String s = a + "." + getMonth() + "." + getYear();
            myDate = formattedDate.parse(s);
            System.out.println(myDate);
        } catch (ParseException ex) {
            Logger.getLogger(date.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    public void finalize() {//
        if (getYear() >= 8000) {
            System.out.println(
                    "Удалены  : год = " + year + " месяц = " + month + " день = " + day);
        }
    }
}

...
Рейтинг: 0 / 0
OOП Java
    #38528591
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molya,

а деструктор .. вам так и сказали: реализуйте деструктор?
...
Рейтинг: 0 / 0
OOП Java
    #38528598
Molya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сказали в место деструктора используете finalize(). Задачу правильно ли я решила?
...
Рейтинг: 0 / 0
OOП Java
    #38528602
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molya- функции обработки данных (1 и 2), указанные в индивидуальном задании(табл. 11.2, столбцы 3 и 4);

Очень полезная инфа. Спасибо что поделились.
...
Рейтинг: 0 / 0
OOП Java
    #38528607
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- конструктор по умолчанию; - check
- конструктор перезагрузки с параметрами; - check
- деструктор для освобождения памяти (с сообщением об уничтожении объекта); - нет такого. -1
- функции обработки данных (1 и 2), указанные в индивидуальном задании(табл. 11.2, столбцы 3 и 4); - как проверить?
- функцию формирования строки информации об объекте. - не вижу -1

- Создать проект для демонстрации работы - класс есть, проекта нет -1
- сформировать объекты со значениями-константами и с введенными значениями полей объекта. - не вижу -1

Итого 1 по пятибальной системе.
...
Рейтинг: 0 / 0
OOП Java
    #38528610
Molya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczMolya- функции обработки данных (1 и 2), указанные в индивидуальном задании(табл. 11.2, столбцы 3 и 4);

Очень полезная инфа. Спасибо что поделились.
Класс-родитель и его поля: Дата (три числа):день, месяц, год
Функция-метод 1 обработки данных: Увеличить год на 1
Функция-метод 2 обработки данных: Уменьшить дату на 2 дня
...
Рейтинг: 0 / 0
OOП Java
    #38528612
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molyaсказали в место деструктора используете finalize(). Задачу правильно ли я решила?

автор- конструктор по умолчанию; - есть
автор- конструктор перезагрузки с параметрами; - есть
автор- деструктор для освобождения памяти (с сообщением об уничтожении объекта); - это очень странная постановка: когда будет вызван finalize - никто не знает; полагаться на него не следует.
автор- функции обработки данных (1 и 2), указанные в индивидуальном задании(табл. 11.2, столбцы 3 и 4);
- функцию формирования строки информации об объекте. - беспонятие
авторСоздать проект для демонстрации работы: сформировать объекты со значениями-константами и с введенными значениями полей объекта.

- проект?
- значения константы должны быть объявлены с модификатором final и инициализированы при объявлении или в конструкторе

авторКласс-родитель и его поля: Дата (три числа):день, месяц, год - есть
Функция-метод 1 обработки данных: Увеличить год на 1
Функция-метод 2 обработки данных: Уменьшить дату на 2 дня
...
Рейтинг: 0 / 0
OOП Java
    #38528614
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я со стоном сползаю по креслу на пол. Хде самое главное?

Расчёт количества дней между датами!
...
Рейтинг: 0 / 0
OOП Java
    #38528618
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторФункция-метод 1 обработки данных: Увеличить год на 1 - есит
авторФункция-метод 2 обработки данных: Уменьшить дату на 2 дня[/quote] - нет, так как в постановке уменьшить

Общие замечания:
* классы принято именовать с большой буквы
* именовать методы глагол+существительное понятное для других: myDate = addYear
...
Рейтинг: 0 / 0
OOП Java
    #38528624
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверин,

Да там и задание копипаста в гуглепереводе, "конструктор перегрузки" - че за фигня вообще.

По сабжу,
1. класс с мальенькой буквы - это не джавастайл.
2. Поле calendar используется в методах в качестве локальной переменной, всегда создаётся заново - зачем поле?
3. Увеличить "дату" (дата = 3 числа день,месяц,год) = изменить состояние класса, а не что-то там посчитать и напечатать в консоль.
4. Считать дату через форматтер - если бы я был преподом, мне бы не понравился такой подход
5. Зачем в конструкторах вызываются "методы обработки данных"?
...
Рейтинг: 0 / 0
OOП Java
    #38528633
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманДа там и задание копипаста в гуглепереводе, "конструктор перегрузки" - че за фигня вообще.

Просто лаба когда-то была по С++, теперь в ВУЗе модно проходить Java. А переделывать методический материал никто не парится.

Лагман1. класс с мальенькой буквы - это не джавастайл.
2. Поле calendar используется в методах в качестве локальной переменной, всегда создаётся заново - зачем поле?
3. Увеличить "дату" (дата = 3 числа день,месяц,год) = изменить состояние класса, а не что-то там посчитать и напечатать в консоль.
4. Считать дату через форматтер - если бы я был преподом, мне бы не понравился такой подход
5. Зачем в конструкторах вызываются "методы обработки данных"?
У девушки задача лабу сдать, а не программировать научиться.
...
Рейтинг: 0 / 0
OOП Java
    #38528654
_newcomer_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczПросто лаба когда-то была по С++, теперь в ВУЗе модно проходить Java. А переделывать методический материал никто не парится.
Да уж, интересно бы у девушки узнать:
- Что за ВУЗ?
- В каком городе?
- На каком курсе это задание?
- Сколько лет преподу?
:)
...
Рейтинг: 0 / 0
OOП Java
    #38528655
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_newcomer_,

самый интересный вопрос: препод преподавал ранее физкультуру или труд
...
Рейтинг: 0 / 0
OOП Java
    #38528706
Molya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
package esep2_2;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Date {

    private int day;
    private int month;
    private int year;
    Date myDate;
    Calendar calendar = Calendar.getInstance();
    SimpleDateFormat formattedDate = new SimpleDateFormat("dd.MM.yyyy");

    public int getDay() {
        return day;
    }

    public void setDate(int day) {
        this.day = day;
    }

    public int getMonth() {
        return month;
    }

    public void setMonth(int month) {
        this.month = month;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

    public Date() {
        this.day = calendar.get(Calendar.DAY_OF_MONTH);
        this.month = calendar.get(Calendar.MONTH);
        this.year = calendar.get(Calendar.YEAR);
        addYear();
        minusDay();

    }

    public Date(int day) {
        this.day = day;
        this.month = calendar.get(Calendar.MONTH);
        this.year = calendar.get(Calendar.YEAR);
        addYear();
        minusDay();
    }

    public Date(int day, int month) {
        this.day = day;
        this.month = month;
        this.year = calendar.get(Calendar.YEAR);
        addYear();
        minusDay();
    }

    public Date(int day, int month, int year) {
        this.day = day;
        this.month = month;
        this.year = year;
        addYear();
        minusDay();
    }

    public final void addYear() {//Увеличивает дату на один год
        try {

            int a = getYear() + 1;
            String s = getDay() + "." + getMonth() + "." + a;
            myDate = formattedDate.parse(s);
            System.out.println(myDate);
        } catch (ParseException ex) {
            Logger.getLogger(Date.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    public final void minusDay() {//Уменьшить дату на 2 дня
        try {

            int a = getDay() - 2;
            String s = a + "." + getMonth() + "." + getYear();
            myDate = formattedDate.parse(s);
            System.out.println(myDate);
        } catch (ParseException ex) {
            Logger.getLogger(Date.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

   

    
}

...
Рейтинг: 0 / 0
OOП Java
    #38528721
_newcomer_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molya
Код: java
1.
2.
3.
public final void minusDay() {//Уменьшить дату на 2 дня
        try {
            int a = getDay() - 2;


Не боитесь, что дата < 1 будет?
Не закрадываются мысли, что при изменении дня хотя бы на 1 может поменяться и месяц и год (и тысячелетие)? :)

(и зачем вам там final? что он вам тут дает?)

Эх.... на порадуете вы препода ответом на вопрос:
"...деструктор для освобождения памяти (с сообщением об уничтожении объекта)..."
ай-яй-яй....
...
Рейтинг: 0 / 0
OOП Java
    #38528724
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_newcomer_Не боитесь, что дата < 1 будет?
Не закрадываются мысли, что при изменении дня хотя бы на 1 может поменяться и месяц и год (и тысячелетие)? :)

SimpleDateFormat не lanient ли по-умолчанию?
...
Рейтинг: 0 / 0
OOП Java
    #38528728
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_newcomer_Эх.... на порадуете вы препода ответом на вопрос:
"...деструктор для освобождения памяти (с сообщением об уничтожении объекта)..."
ай-яй-яй....
Так в задании написано, а препод сказал делать через finalize, а вот будущий работадель будет рад несказанно.
...
Рейтинг: 0 / 0
OOП Java
    #38528736
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сабж напоминает студента который на экзамене доказывал теорему Пифагора через теорему косинусов.
...
Рейтинг: 0 / 0
OOП Java
    #38528740
_newcomer_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczSimpleDateFormat не lanient ли по-умолчанию?
Тсссс...
Надо же спросить, что автор про это думает :)
...
Рейтинг: 0 / 0
OOП Java
    #38528844
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MolyaКласс-родитель и его поля: Дата (три числа):день, месяц, год
Функция-метод 1 обработки данных: Увеличить год на 1
Функция-метод 2 обработки данных: Уменьшить дату на 2 дня
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
public class Date {

	private final java.util.GregorianCalendar CALENDAR;

	public Date() {
		CALENDAR = new java.util.GregorianCalendar();
	}

	public Date(int day, int month, int year) {
		CALENDAR = new java.util.GregorianCalendar(year, month - 1, day);
	}

	public boolean isLeapYear() {
		return CALENDAR.isLeapYear(CALENDAR.get(java.util.Calendar.YEAR));
	}

	public void minusTwoDays() {
		CALENDAR.add(java.util.Calendar.DAY_OF_MONTH, -2);
	}

	public void plusFiveDays() {
		CALENDAR.add(java.util.Calendar.DAY_OF_MONTH, 5);
	}

	public void plusOneYear() {
		CALENDAR.add(java.util.Calendar.YEAR, 1);
	}

	@Override
	public String toString() {
		return CALENDAR.getTime().toString();
	}
}

...
Рейтинг: 0 / 0
OOП Java
    #38528868
Molya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Usman, большое спасибо!!!
...
Рейтинг: 0 / 0
OOП Java
    #38528895
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прикольный фасад получился.
...
Рейтинг: 0 / 0
OOП Java
    #38528901
_newcomer_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПрикольный фасад получился.
Ага... Тогда уж сразу
Код: java
1.
public class Date extends GregorianCalendar
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / OOП Java
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]