Похожие чаты

Hello Guys, as a college student who was drilled to use

encapsulation in every class where variables are set/reset

What do you think of it? Personally I see little reason in hiding fields behind getter/setter methods if no additional checks are in place.

Am I missing something? When coding alone what benefit do I get from hiding fields behind set methods?

5 ответов

16 просмотров

You are right, there is no real benefit of get and set if you just want to have a public field. But in case you have a code associated with get or set, like if you get something and you want your class to go and get something from internet or database it is worth it... Or if you set something and your class will change color of something that is where get / set works good, otherwise use public field... it is as good.

Christoph- Автор вопроса
Talula
You are right, there is no real benefit of get and...

At my university it was solely used to change private fields, with no checks happening whatsoever Thanks for the heads up :)

You can also think of scenario where you want to increment or multiply value of variable when you set it or get it. Most of unit conversion and all related things.

If you decide to add those checks later to a public field you’ll need to recompile all of its clients and if it already had a getter/setter you only need to recompile the library itself

Christoph- Автор вопроса

Похожие вопросы

Обсуждают сегодня

как правильно удалить сддм? прописал в etc/portage.use/plasma-meta -sddm , но при обновлении юзов мне предлагает поставить lightdm (ещё лучше 😡), добавил туда - display-manage...
REDis
25
#include <stdio.h> #include <stdlib.h> #include <time.h> void mass_first_generate(int mass[5][7]) {     for (int N = 0; N < 5; N++) {         for (int A = 0; A < 7; A++) {   ...
Чувак
6
Except the wealthiest, people that buy crypto want to "cash out" at the end of the day, one way or another. Converting to fiat is craziness, converting to BTC is unwise. Hold ...
Erdelanax
2
Всем привет! Решаю 99 OCaml Problems и столкнулся со следующей проблемой (прошу палками не забивать, я OCaml практически не трогал до этого момента): open OUnit2 let create_...
К|/|pи/\/\ 6е3yглbIи
2
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
возможно ли как-то передать в электрон или таури медиа поток с рендера 2д движка? двиг запускается как dll, а дальше надо как-то отправлять рендер кодировать не подходит, зр...
Kyle Nekto
7
https://www.linkedin.com/posts/ugama-benedicta-kelechi-codergirl-103041300_mobiledevelopment-fluttertraining-handsonlearning-activity-7263445699227254784-IdHB?utm_source=share...
CoderGirl
16
Hello!!! Moved nodes to another server, but uptime is not transferred. now both servers are working, last time I did the same, only 2 nodes transferred uptime, can you plea...
Kamil
12
VIP-397 BNBx Oracle implementation upgrade Summary This proposal, if approved, will upgrade the implementation of the BNBx Oracle contract on Venus from version 1 (V1) to v...
Venus Announcements
2
like, question: int b = 99999; is this valid and predictable C?
Ludovic 'Archivist' Lagouardette
15
Карта сайта