Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789

Объекты в методах

22.11.2017, 10:58. Показов 3138. Ответов 60
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я прохожу тему "Объекты в методах"

Вот кусок теории, который вызывает затруднения

Кликните здесь для просмотра всего текста
Объекты в методах

В предыдущих примерах мы рассматривали методы, которые получали на вход простые значения, типа int и т.п. Но это совершенно не обязательно. Метод может получать на вход объекты, причем это могут быть объекты этого же класса, к которому относится метод.

Например, нам необходимо вычислять расстояния между точками. Тогда в класс точки можно добавить метод следующего вида:

public double distance(Point p){
double d = 0;
d = Math.sqrt((p.x - this.x)*(p.x - this.x) + (p.y - this.y)*
(p.y - this.y));
return d;
}

Как вызывается эта функция? Во-первых вы должны иметь два объекта точек, для вычисления расстояния между ними. Затем вы вызываете эту функцию от одного, передавая на вход другой. Например:

Point p1 = new Point(10,5);
Point p2 = new Point(3,7);
double dist = p1.distance(p2);

Что происходит при таком вызове? Функция distance вызывается от p1 и это значит, что в this.x будет значение 10 а в this.y будет 5. Объект p2 передается этой функции на вход, и значит, он попадает в локальную переменную p и соответственно в p.x будет значение 3 а в p.y будет значение 7.

Далее разности x и y возводятся в квадрат перемножением, складываются, из полученного значения извлекается квадратный корень, что и будет равняться расстоянию между точками.


Исходя из этого я пытался воссоздать класс, который описывает рассказываемую задачу.

Кликните здесь для просмотра всего текста
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
package com.createClass.v1;
 
public class Point {
    public double x;
    public double y;
 
 public double distance (Point p){
        double d = 0;
        double x;
        double y;
        d = Math.sqrt( (p.x - this.x)*(p.x - this.x) + (p.y - this.y)*(p.y - this.y) );
        return  d;
 }
Point p1 = new Point(10,5);
Point p2 = new Point(10,5);
 double dist = p1.distance(p2);
 
 Point d;
 
    {
        d = new Point();
    }
 
    public void print()
    {
        System.out.println("Расстояние между точками - " + d.dist);
    }


В самом коде возникла ошибка вот здесь

Java
1
2
3
4
5
Point p1 = new Point(10,5);
Point p2 = new Point(3,7);
 
Point()  in Point cannot be applied
to           (int    ,  int   )

1. Не понимаю данной ошибки
2. Не могу понять почему одни переменные это свойства класса, а другие это локальные переменные
Ведь локальной переменной считаются переменные которые передаются в качестве аргументов при вызове метода и переменные объявленные в теле метода.
А значения которые передаются при создании объекта почему одни считаются значениями локальных переменных, а другие значениями свойств класса?
3. Соответственно так как созданный класс у меня не работает, не могу в отладчике просмотреть логику программы.
Если кто может поясните пожалуйста доступным языком.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.11.2017, 10:58
Ответы с готовыми решениями:

Использование переменной в методах
Доброго времени суток, никто не мог бы подсказать как решить проблему. Как дать возможность методам пользоваться переменными из main...

Метод println() в других методах
Обьясните мне, пожалуйста, почему distance() не выводит значение переменной d? public class Point { public double x, y; public...

Не выполняются действия в методах. Почему?
Итак, я пишу шифрование методом аналитических преобразований. Создал NewMDIApplication. По кнопке я вызываю первый метод подобным...

60
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
24.11.2017, 18:42
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от korvin_ Посмотреть сообщение
С тобой по-другому никак
Во-первых, если кто тут и чего-то не понимает, так это ты. Что я не напишу - тебе почти всегда ни фига не понятно. Сие не является закономерностью для других форумчан, читающих мои посты в этом и других разделах. Так что не ломай комедию, фифломицин, в очередной раз.

Во-вторых, при чём тогда твои "подколы", сомнительного интеллектуального уровня? Если даже я чего-то не понимаю (что является плодом твоей "бурной" фантазии), значит ты авто-провозглашаешь себя в праве меня подкалывать?
Я ни тебя ни автора не задевал и не оскорблял. Поставил под сомнения его доводы, и твои тоже. Вот ты и бесишься.
А ты нахальничаешь. И это при том, что разглагольствования, которыми ты разбрасываешься, по тематикам в которых ты полный профан (коим ты являешься в Кобол-е), не является проявлением ума.

Добавлено через 9 минут
Цитата Сообщение от korvin_ Посмотреть сообщение
Ты это выдумал.

Не по теме:

Ду ю спик инглиш? Ес, ай эм э тейбл. :D



In true object-oriented programming, objects are living creatures, like you and me. They are living organisms, with their own behavior, properties and a life cycle.

Can a living organism have a setter?


Не по теме:

Thank you. No more questions, Your Honor

0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
24.11.2017, 19:17
Цитата Сообщение от Kukstyler Посмотреть сообщение
Поставил под сомнения его доводы, и твои тоже. Вот ты и бесишься.
Только это не доводы, а изложение концепции ООП.

Цитата Сообщение от Kukstyler Посмотреть сообщение
И это при том, что разглагольствования, которыми ты разбрасываешься, по тематикам в которых ты полный профан (коим ты являешься в Кобол-е)
Я тут ни слова не сказал про Кобол, лол.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Thank you. No more questions, Your Honor
Т.е. ты ещё и не знаешь, что такое сравнение, и для чего оно применяется в речи? Окей…

Добавлено через 3 минуты
Цитата Сообщение от Kukstyler Посмотреть сообщение
Во-вторых, при чём тогда твои "подколы", сомнительного интеллектуального уровня? Если даже я чего-то не понимаю (что является плодом твоей "бурной" фантазии), значит ты авто-провозглашаешь себя в праве меня подкалывать?
Ты не просто не понимаешь, но вместо того, чтобы позадавать вопросы, попытаться разобраться, ты выливаешь пассажи из серии «КГ/АМ, я один стою в пальто красивый», вроде этих:
Цитата Сообщение от Kukstyler Посмотреть сообщение
Статься по ссылке, что ты предоставил... Лично у меня вызывает улыбку. Особенно понравилось:
Цитата Сообщение от Kukstyler Посмотреть сообщение
Мсье под чем-то, мне кажется.
Цитата Сообщение от Kukstyler Посмотреть сообщение
Так что, при всём уважении, и конечно правдивости по сути некоторых доводов, в целом подобные теории считаю больной фантазией фанатиков, от нефиг делать.
О каком тут уважении может идти речь?
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
24.11.2017, 20:31
Цитата Сообщение от korvin_ Посмотреть сообщение
изложение концепции ООП.
Есть такой сайт, Википедия, не первый раз советую посещать, прежде чем приводить определения. В очередной (и уже далеко не первый) раз, приплетаешь какую-то муть, не совсем не по делу, но далеко не в точку.

Цитата Сообщение от Wikipedia
Объе́ктно-ориенти́рованное программи́рование (ООП) — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования.
Цитата Сообщение от korvin_ Посмотреть сообщение
Я тут ни слова не сказал про Кобол, лол.
Eсли на то пошло, то про сам Кобол ты тоже говорил, в соответствующем разделе. А точнее заявился, (прошу прощения за выражение, но иначе и не скажешь) покакал, а потом исчез, наплевав на заданные тебе вопросы. Тем самым, естественно, "наилучшим" способом к себе расположил.

Цитата Сообщение от korvin_ Посмотреть сообщение
Да-да, COBOL-щики там упоминаются.
Цитата Сообщение от korvin_ Посмотреть сообщение
Это специально для кобольщиков, которым, видимо, сложно понять
"не говорил про Кобол", но про коболщиков... - но, это же совсем другое дело!
Слово не птичка. В базу данных попало - (не Админ) не сотрёшь!

Цитата Сообщение от korvin_ Посмотреть сообщение
Т.е. ты ещё и не знаешь, что такое сравнение, и для чего оно применяется в речи?


Цитата Сообщение от Wikipedia
Сравне́ние — процесс количественного или качественного сопоставления разных свойств (сходств, отличий, преимуществ и недостатков) двух (и более) объектов, выяснение, какой из двух (и более) объектов лучше в целом («интегральное сопоставление»), утверждение, что данные объекты равны или подобны, приравнивание, уподобление.
Цитата Сообщение от korvin_ Посмотреть сообщение
О каком тут уважении может идти речь?
"при всём уважении" к его знаниям, и твоим кстати тоже. А лично к Мсье или к тебе, у меня уважения быть не может, т.к. ни его ни тебя я не знаю.
К тому-же, "чья б корова мычала...". Ты вообще про уважение должен молчать в тряпочку. Ибо каждый день доказываешь в своих постах, что абсолютно не знаком с данным понятием. Начиная с "остроумных подколов", и кончая манерой, с которой ты отвечаешь на большинство вопросов в большинстве тем данного раздела.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
24.11.2017, 20:52
Цитата Сообщение от Kukstyler Посмотреть сообщение
Есть такой сайт, Википедия
Ты бы ещё на «Аргументы и факты» сослался. Есть такой человек, Алан Кей, автор термина «объектно-ориентированный»

Цитата Сообщение от Kukstyler Посмотреть сообщение
не первый раз советую посещать, прежде чем приводить определения
А я советую читать более качественные источники. Пара из которых в статье упомянуты.

Вопрос: как цитата из вики противоречит статье про геттеры/сеттеры или опровергает её?

Цитата Сообщение от Kukstyler Посмотреть сообщение
Eсли на то пошло, то про сам Кобол ты тоже говорил, в соответствующем разделе
Не уходи в сторону, о том, что я писал в соответствующем разделе, пиши в этом самом соответствующем разделе.

Цитата Сообщение от Kukstyler Посмотреть сообщение
"не говорил про Кобол", но про коболщиков... - но, это же совсем другое дело!
Естественно, там даже слово «видимо» специально написано.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Ты вообще про уважение должен молчать в тряпочку
Я не пишу кому-то, что проявляю к нему уважение в том или ином виде и тут же называю его фанатиком, а его статью бредом.
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
24.11.2017, 22:34
Цитата Сообщение от korvin_ Посмотреть сообщение
Я не пишу кому-то, что проявляю к нему уважение
Я в курсе, ты прямо проявляешь НЕ уважение.

Цитата Сообщение от korvin_ Посмотреть сообщение
Не уходи в сторону, о том, что я писал в соответствующем разделе
В какую "сторону"? Ты сказал, что ни фига про кобол не говорил. Врёшь и не краснеешь! Говорил. А в каком разделе - разницы никакой.

Цитата Сообщение от korvin_ Посмотреть сообщение
Ты бы ещё на «Аргументы и факты» сослался.
Да тебе пока в другие места рано, начни хоть с чего-то. А то как ни опишешь термин - половина мимо дела.

Цитата Сообщение от korvin_ Посмотреть сообщение
Вопрос: как цитата из вики противоречит статье про геттеры/сеттеры или опровергает её?


Сравнение - это сопоставление! А когда говоришь про две вещи, что они одинаковы, то это является отождествлением.
Словарь купи.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
24.11.2017, 23:19
Цитата Сообщение от Kukstyler Посмотреть сообщение
Я в курсе, ты прямо проявляешь НЕ уважение.
К невеждам, не желающим приложить хоть каких-то усилий, конечно же нет.

Цитата Сообщение от Kukstyler Посмотреть сообщение
В какую "сторону"? Ты сказал, что ни фига про кобол не говорил. Врёшь и не краснеешь! Говорил. А в каком разделе - разницы никакой.
Я сказал, что тут ничего про Кобол не говорил и это истинная правда, ты же попытался съехать на другой раздел форума.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Да тебе пока в другие места рано, начни хоть с чего-то. А то как ни опишешь термин - половина мимо дела.
Ой ли? Ты определение ООП Алана Кея прочитал? Или главу SICP про объекты? Или «A Theory of Objects»? Ты вообще хоть что-нибудь про ООП, кроме Википедии, читал? Пробовал работать с ОО-системами, отличными от Симуловской?

Цитата Сообщение от Kukstyler Посмотреть сообщение
Сравнение - это сопоставление! А когда говоришь про две вещи, что они одинаковы, то это является отождествлением.
like != «одинаковый» (same, equal), like == «похожий».
«Словарь купи.»
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
25.11.2017, 14:52
korvin_, ты реально такой или прикидываешься? Ты хочешь сказать, что не врубаешься, что в данной статье идёт прямая инсинуация того, что объекты как люди, и что "like you and me" по-русски означает "как ты и я" а не "похожи на меня и тебя"? Ты где английский учил? И учил ли вообще?

Цитата Сообщение от korvin_ Посмотреть сообщение
Ты определение ООП Алана Кея прочитал? Или главу SICP про объекты? Или «A Theory of Objects»? Ты вообще хоть что-нибудь про ООП, кроме Википедии, читал? Пробовал работать с ОО-системами, отличными от Симуловской?
Да знаю я что ты Читатель, читал ты может, да мало что понял, по всей видимости.

К тому же, что ты вообще можешь понять, если считаешь "like you and me":
Цитата Сообщение от korvin_ Посмотреть сообщение
«похожий».


Цитата Сообщение от korvin_ Посмотреть сообщение
тут ничего про Кобол не говорил
Ты в Гугл Мапс что ли работаешь? Какая разница тут или там?! Выдаёшь идиотские высказывания про всех людей (не только в мой адрес), работающих с данным языком. Ни другим не мне, естественно, от этого но жарко ни холодно. Но тебе это чести не делает.
Про сам язык тоже оставил "гениальную мысль", В КАКОМ РАЗДЕЛЕ - НЕ ВАЖНО. "Я накакал под дверью другого соседа - под дверью этого соседа, я не какал!".

У меня к тебе деловое предложение - давай не пересекаться, и постараемся свести наше общение к 0-ю!
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
25.11.2017, 15:03
Цитата Сообщение от Kukstyler Посмотреть сообщение
"like you and me"
Неужели есть выкинуть эту фразу, смысл кардинально поменяется? Или из последующего контекста не ясно будет что хотел сказать автор?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
25.11.2017, 15:43
Для начала рекомендую посмотреть в словаре слово arrogant, если уж любишь словари.
Далее, читаем статью:
Вот тут говориться о том, чем объекты не являются:
Objects are not data structures with attached methods. This "data holder" concept came to object-oriented programming from procedural languages, especially C and COBOL.
А вот тут говорится о том, чем они являются.
In true object-oriented programming, objects are living creatures, like you and me. They are living organisms, with their own behavior, properties and a life cycle.
Смысл этой фразы в том, что объекты - это живые организмы (так же, как ты и я - живые организмы). Живые в том смысле, что у них есть свое поведение, свойства и жизненный цикл.
Это утверждение, очевидно, настолько верное, что вообще не понятно, как кому-то (тем более программисту), может прийти в голову с ним спорить.
Цитата Сообщение от Kukstyler Посмотреть сообщение
как ты и я
Цитата Сообщение от Kukstyler Посмотреть сообщение
похожи на меня и тебя
по-моему абсолютно синонимичные высказывания.
Цитата Сообщение от Kukstyler Посмотреть сообщение
Выдаёшь идиотские высказывания
как говорится, бревно-то не замечаешь.
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
25.11.2017, 19:03
JIeIIIa, да всё предельно ясно. Говоря об этой фразе, я говорил как о резюме его месиджа. Я подчеркнул, что с некоторыми его доводами я согласен. Но в общем, это вызывает у меня улыбку, т.к. воспринимать настолько серьёзно переносимость описания реального мира в ООП, имхо бред. Плюс, за всем этим стоит большая проблема - а это что и кому кажется логичным. Сеттеры/геттеры являются стандартизированной нормой, которые естественно не безупречны, но которые улучшают, кроме всего прочего, понимание чужого кода. Если каждый будет писать по своей логике, то и станрдартизации т.е. облегчению понимания чужёго кода в некоторой степени капут. Про совместимость с Фреймворками тоже было упомянуто. Корвин тут говорил про иммутабльные объекты, а про НЕ иммутаблеьные промолчал.

xoraxax, а ты с каких пор в адвокатах Корвина? Говоришь о моей высокомерности??? A аргументация то где?

Цитата Сообщение от xoraxax Посмотреть сообщение
объекты - это живые организмы
Это имхо утрирование/передёргивание.

Цитата Сообщение от xoraxax Посмотреть сообщение
по-моему абсолютно синонимичные высказывания.


Цитата Сообщение от xoraxax Посмотреть сообщение
как говорится, бревно-то не замечаешь.
Не знаю, что ты этим хотел сказать. Ну да ладно.
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
25.11.2017, 19:41
Kukstyler, если не предполагается изменение класса и работы с фреймворками, то зачем в потобном коде геттеры/сеттеры:
Java
1
2
3
public class Foo { 
  public int bar = 10;
}
Не думаете же Вы что понять:
Java
1
2
Foo foo = new Foo();
foo.bar = (foo.bar + 1) * 2;
труднее, чем
Java
1
2
Foo foo = new Foo();
foo.setBar((foo.getBar + 1) * 2);
?

Добавлено через 1 минуту
Цитата Сообщение от Kukstyler Посмотреть сообщение
Это имхо утрирование/передёргивание
Коль уже выхватывать фразы, то как Вы переведете
Цитата Сообщение от Kukstyler Посмотреть сообщение
objects are living creatures
?
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
26.11.2017, 00:58
Цитата Сообщение от Kukstyler Посмотреть сообщение
Ты хочешь сказать, что не врубаешься, что в данной статье идёт прямая инсинуация того, что объекты как люди, и что "like you and me" по-русски означает "как ты и я" а не "похожи на меня и тебя"? Ты где английский учил? И учил ли вообще?
У меня встречный к тебе вопрос, но про русский.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Да знаю я что ты Читатель, читал ты может, да мало что понял, по всей видимости.
Говорит человек, не понявший простую статью. Ценность твоего мнения стремится к нулю с каждым твоим постом.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Сеттеры/геттеры являются стандартизированной нормой, которые естественно не безупречны, но которые улучшают, кроме всего прочего, понимание чужого кода.
Ничего они не улучшают, их единственная причина существования — разные инструменты и фреймворки для работы с объектами через рефлекшн, а ля Java Bean и прочее.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Если каждый будет писать по своей логике, то и станрдартизации т.е. облегчению понимания чужёго кода в некоторой степени капут.
Ага, java.util.time видимо идиоты писали? И java.util.collection? И кучу других интерфейсов и классов стандартной библиотеки без массирового (а то и полного) использования геттеров и сеттеров.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Корвин тут говорил про иммутабльные объекты, а про НЕ иммутаблеьные промолчал.
А что ты хочешь знать про не иммутабельные? Чем их меньше, тем лучше.

Цитата Сообщение от Kukstyler Посмотреть сообщение
Ты в Гугл Мапс что ли работаешь? Какая разница тут или там?!
Разница в оффтопе. Можешь правила форума почитать на досуге, они попроще для понимания, чем ООП.
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
26.11.2017, 01:19
Цитата Сообщение от korvin_ Посмотреть сообщение
единственная причина существования — разные инструменты и фреймворки для работы с объектами через рефлекшн
Не единственная. Возьмем все тот же класс
Java
1
2
3
public class Foo { 
  public int bar = 10;
}
Написали, выложили, все им пользуются. Со временем, например, решили что если в bar будет число больше 1000, то надо выполнить определенное действие (пускай написать лог). Как решить проблему для приведенного класса? Имея сеттер решение практически тривиальное.
Цитата Сообщение от korvin_ Посмотреть сообщение
java.util.time
Имелось ввиду java.time?
Цитата Сообщение от korvin_ Посмотреть сообщение
кучу других интерфейсов и классов стандартной библиотеки без массирового (а то и полного) использования геттеров и сеттеров
Можно пример стандартного класса, у которого есть public поля? Не тот, что внутри пакета используется, а тот, который "торчит" наружу.
1
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
26.11.2017, 01:58
Цитата Сообщение от JIeIIIa Посмотреть сообщение
Имелось ввиду java.time?
Да.

Цитата Сообщение от JIeIIIa Посмотреть сообщение
Можно пример стандартного класса, у которого есть public поля? Не тот, что внутри пакета используется, а тот, который "торчит" наружу.
Нет, у большинства классов нет public-полей. И при этом совсем нет или почти нет геттеров и сеттеров.

Цитата Сообщение от JIeIIIa Посмотреть сообщение
Написали, выложили, все им пользуются. Со временем, например, решили что если в bar будет число больше 1000, то надо выполнить определенное действие (пускай написать лог). Как решить проблему для приведенного класса? Имея сеттер решение практически тривиальное.
Очевидно, что использование структур вместо объектов имеет свои преимущества и недостатки. Решение простое: проектировать в соответствии с вашими требованиями и предпочтениями. =)

Я тут не про структуры говорил, вообще-то. Егор же «агитирует» за использование wrapper'ов в таких случаях (точнее, в случае использования объектов, а не структур).
Кликните здесь для просмотра всего текста


Мне, как человеку, которому больше нравится ФП, идея добавить побочный эффект в чистый код не очень импонирует. =)
1
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
26.11.2017, 02:20
Цитата Сообщение от korvin_ Посмотреть сообщение
у большинства классов нет public-полей
Ок. Хоть какой-то доступный для использования с public-полем есть? Спрашиваю, потому что таких не встречал.
Цитата Сообщение от korvin_ Посмотреть сообщение
при этом совсем нет или почти нет геттеров и сеттеров
Потому что не надо на каждое поле обязательно делать геттер/сеттер =)
Цитата Сообщение от korvin_ Посмотреть сообщение
использование структур
Не совсем понял что за структуры и при чем тут они. Можно в личку, а то тема и так не пойми во что превратилась
Цитата Сообщение от korvin_ Посмотреть сообщение
идея добавить побочный эффект в чистый код не очень импонирует
Да был сферический код в вакууме. Идея добавить что-то не затронув пользователей класса.

Не по теме:

У инкапсуляции все же есть свои плюсы.

0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
26.11.2017, 13:54
Цитата Сообщение от JIeIIIa Посмотреть сообщение
Хоть какой-то доступный для использования с public-полем есть?
Не помню, чтобы встречал таких.

Цитата Сообщение от JIeIIIa Посмотреть сообщение
Потому что не надо на каждое поле обязательно делать геттер/сеттер
О том и речь, что интерфейс объекта должен отталкиваться не от полей, а от задач, которые он решает.

Цитата Сообщение от JIeIIIa Посмотреть сообщение
Не совсем понял что за структуры и при чем тут они
Обычные такие структуры:

Java
1
2
3
4
public class Point {
    public double x;
    public double y;
}

Не по теме:

Цитата Сообщение от JIeIIIa Посмотреть сообщение
У инкапсуляции все же есть свои плюсы.
Только инкапсуляция не про написание геттеров/сеттеров на каждый чих.

0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
27.11.2017, 13:01
Цитата Сообщение от korvin_ Посмотреть сообщение
У меня встречный к тебе вопрос
Частое явление.

Цитата Сообщение от korvin_ Посмотреть сообщение
но про русский.
Грибов переел что ли... За 1700 постов на данном форуме, первый раз претензия к пониманию моего русского.

Цитата Сообщение от korvin_ Посмотреть сообщение
Ничего они не улучшают
Твоё мнение, не более. Не схожее со многими другими людьми.

Цитата Сообщение от korvin_ Посмотреть сообщение
Ценность твоего мнения стремится к нулю с каждым твоим постом.
Это у нас с тобой взаимно.

Цитата Сообщение от korvin_ Посмотреть сообщение
Ага, java.util.time видимо идиоты писали?
А стандартные библиотеки зачем сюда приплетать? К тому же, если не ошибаюсь, есть и в них парочка методов редефинированных в сеттер/геттер, а прежний обозначен deprecated.

Цитата Сообщение от korvin_ Посмотреть сообщение
А что ты хочешь знать про не иммутабельные?
Знать?... Если говоришь о чём-то, то уж говори про все моменты, а не только про те, которые тебя устраивают. Далеко не все объекты иммутабельные.

Цитата Сообщение от korvin_ Посмотреть сообщение
Чем их меньше, тем лучше.
Пожелания это одно, а реальность - это совсем другое. К тому-же, это противоречит вышеуказанной статье... Ты определись! Может ли, в таком случае, "собака родиться уже с мячом"? А объект "родившись", быть обречённым на оставаться таким до самой "смерти"?

Цитата Сообщение от korvin_ Посмотреть сообщение
Разница в оффтопе.
Опять фуфломицин какой-то. Я где-то тебе сбрасывал ссылку с описанием данного термина. Ничего общего с тем, что я упомянул твою фразу из другого раздела не имеет.
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
27.11.2017, 13:16
Цитата Сообщение от Kukstyler Посмотреть сообщение
парочка методов редефинированных в сеттер/геттер
Это как? Желательно с указанием конкретного класса.
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
27.11.2017, 13:22
JIeIIIa, первое, что вспомнилось: JButton enable()

Добавлено через 3 минуты
https://docs.oracle.com/javase... onent.html

enable
@Deprecated
public void enable()
Deprecated. As of JDK version 1.1, replaced by java.awt.Component.setEnabled(boolean).
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
27.11.2017, 13:26
Kukstyler, геттер как был, так и остался. Только два сеттера (enable()/disable()) заменили на один (setEnabled(boolean))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.11.2017, 13:26

Collections (вывод контента в методах)
Здравствуйте! Необходимо вывести содержимое магазина компьютеров тремя разными методами: public class ComputerStore { public static...

Где искать информацию о методах?
Недавно нужно было разобраться с Arduino. Зашел на arduino.ru, вкладка программирование и там все функции, операторы, стандартные...

Использование одной переменной в разных методах + Scanner
Всем привет! Вот решил начать писать на Java. Вот возникли проблемы: 1)Нужно использовать переменную s в методах readFile и parseFile ...

Объясните, что обозначают данный команды/инструкции в методах?
class Mitarbeiter { String m_name; String m_vorname; int m_zar; Mitarbeiter(String name, String vorname, int zar) { //Что...

Можно ли в методах кнопки сослатся на не статичные поля панели?
Имеется 2 класса - кнопка и панель. В экземпляр панели добавляю экземпляр класса. Можно ли в методах кнопки сослатся на не статичные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот. Ларри Уингет
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru