using System; namespace MyFirstProgram { class Program { static void Main(string[] args) { //getters & setters = add security to fields by encapsulation // They're accessors found within properties // properties = combine aspects of both fields and methods (share name with a field) // get accessor = used to return the property value // set accessor = used to assign a new value // value keyword = defines the value being assigned by the set (parameter) Car car = new Car(400); car.Speed = 1000000000; Console.WriteLine(car.Speed); Console.ReadKey(); } } class Car { private int speed; public Car(int speed) { Speed = speed; } public int Speed { get { return speed; } set { if (value > 500) { speed = 500; } else { speed = value; } } } } }
@reignydaphne3 жыл бұрын
I tried to run this code but it shows value hasn't been declared! Can you please explain how did you run it?
@lifeinloop3 жыл бұрын
@@reignydaphne value is a keyword that exists inside every set and represents the value that is received.
@learnersmail99442 жыл бұрын
thank you bro
@scubagoblin Жыл бұрын
I just read 15 pages over this concept and walked away more confused than before I started. You explain concepts in such a beginner-friendly way and don't include a lot of random unnecessary stuff. I really appreciate you and the content you make. I feel like a lot of programmers have been coding for so long that they forget to slow down a bit when teaching people.
@brunopereira4643 Жыл бұрын
Yea, i understand now, like... now i know what is an namespace, what is a class, methods, etc etc... , but i remember when i started and ask: "TF is that", so we need to be humble and put ourselves in the place of those who are starting.
@urmomlolgottem Жыл бұрын
trying to find tutorials on things not covered by brocode is literally hell good luck out there
@lezocsfn197911 ай бұрын
to understand a little more about it, watch the video of Brackeys on c# properties
@DrN0VA. Жыл бұрын
This really helped me understand. It seems like getters and setters can be described as: Do this when someone GETS the variable. Do this when someone SETS the variable.
@TripalYT Жыл бұрын
After all these years of coding and never understanding any of this. You helped me understand it within 3 minutes. Thank you!
@Jordan-qi2dn6 ай бұрын
If anyone else didn't understand at first I'll try to explain my interpretation. The point of getters/setters is so that we can sort of limit/encapsulate information by having a private field, and we have our property sort of act as a decryption key, I don't really know a good analogy for setters/getters. I think we can make things read only if we private the setter though. The get accessor is used when we're reading/accessing the value of a property. ie. Console.WriteLine(Class.Property); The set accessor is used when we're writing/reassigning the value of a property ie. Class.Property = 550; The value keyword comes from what we input in the constructor. You can only access either set/get at a time as you're either reading/writing, and you can put your own logic/conditonal statements in there like bro did with the if/else statements. In the write example. when we're instantiating a new car Object, and we input 550 as an argument, we are writing/reassigning. Car car_1 = new Car(550); Here we're writing, int value of 550 is in the constructor, therefore we're going to use the set accessor. If our value (550) is greater than 500, it sets the speed to max 500, otherwise our speed will just be set to whatever we inputted as long as it's
@davidesdras453 жыл бұрын
Man, I always had so much diffilcult with this. But you, you bro, you in a 4 minutes video you managed to explain to me masterfully. You're a legend bro. You just got a new subscribe and fan!
@binjozoken60553 жыл бұрын
That was a brilliant way of explaining C# properties. Thanks. I'm sure I'll be back to watch it again.
@FunnySubmarine-ij4zk9 ай бұрын
Thank youu. It feels like it's the first time to actually understand what getters & setters are and why we use them.
@cactusdoodle86194 ай бұрын
Bro, thankyou. I’ve been binging the entire c# series, I’m getting to the real meat and potatoes of my summer project. Properties were so hard to understand through my college course. You’re a great teacher.
@32KZ Жыл бұрын
Explaine better than all my teachers combind. thank you for actually letting this make sense.
@JustBen4 ай бұрын
Bro, you just explained a concept that college could not! Glad I found this channel.
@antoinenowakowski61812 жыл бұрын
hello i'm french and we can understand you very well, thanks.
@Rahulsingh-theraha2 жыл бұрын
Awesome explanation..I was so confused on its use case...But u made me understand completely ☺️
@san_dingus Жыл бұрын
Just went through a 2 hour C# course, and it ended right after he showed us classes, fields, and constructors. I don’t think properties and getters/setters were even mentioned.. So, going along with another tutorial, I was very perplexed when he put in { get; set; }. I tried to read the documentation online, but just confused myself even more. Your 4 minute video explained it well enough for me to completely understand it, so thank you!!
@Ally-uj3di Жыл бұрын
You have no idea how hard I cried: ""OOOOOOHHHHH!"" After this tutorial. It all makes sense now! THANK YOU!!! I have been asking ChatGPT to explain me this, and it was failing miserably :')
@amjadhani8929 Жыл бұрын
Wow. I understood getters and setters in only 4 minutes. What a great illustration video. Thanks!
@diandradeeke Жыл бұрын
but if you create a unique getter and setter and only programm that the value is set to the value the function gets or returns the current value, than its not different than without using getters and setters, isnt it?
@GalaxyCookies76 Жыл бұрын
Simple explaination, Good Job
@eliaselmokadem2922 Жыл бұрын
its unbelievable how many times this guy saved my ass from an exam xd
@Slaygee2 жыл бұрын
Thank you, this was the best explanation I've seen.
@belajashark Жыл бұрын
Thank you! Had to watch it 4 times, but now almost understand cause need this)))
@e-tradingbd84212 жыл бұрын
nice understanding capabilities !!! commendable
@letuslearn84332 жыл бұрын
It is interesting video.keep it up mr
@noahyannis24652 жыл бұрын
Then why do we use getters and setters in properties if there is no validation/additional code in most setters?
@stevancosovic47063 жыл бұрын
Thanks bro, very good explanation, this channel deserves more views and support!
@kroepkroep Жыл бұрын
Thank you for the explenation. I guess that the security talked about in this video is about what the user can do? Via the front end?
@GuilhermeFrank-y6j7 ай бұрын
Very good video!
@bamdad49272 жыл бұрын
Thanks bro Very cool 👍🏻
@irissupercoolsy Жыл бұрын
Thank you! Coming from Java, the getters and setters were a bit confusing in C# at first
@alberttoo58079 ай бұрын
I think you could still use the java way or use properties
@gabrielbarrett9784 Жыл бұрын
Thanks for making it easier to understand
@windows992 жыл бұрын
I don't understand the difference. If we wanted to limit the editing of the field "speed" by making it private, aren't we allowing it with the set property? In the end, we are allowing editing of speed. I'm a complete beginner, just to note.
@cranebird14672 жыл бұрын
set&get are methods so you can create only get without set in this case field become read-only.
@orvobx7909 Жыл бұрын
You are allowing it tk be changed, but you are setting parameters for how it can be changed
@jimbobthedog27 күн бұрын
It's allowing you to add more code to updating the value of speed. He explains it at the end. If you use the setter, you can put code that limits the size of the value someone tries to set.
@MHX112 жыл бұрын
That's an amazing example, thanks so much, you saved a lot of time
@user-mf8nu5qe5f Жыл бұрын
Hello Bro Code, your vids are always helpful. Could you perhaps do tutorials on C# lambdas and LINQ I feel like you are the only one that could explain them so I can understand thanks
@30hi312 жыл бұрын
Chulada tu video hermanó Gretting from Mexico
@meghpatel22193 жыл бұрын
Bro please some C# projects, something like you have done in python playlist 🙏
@ciprisad Жыл бұрын
when you make the car object and give its speed you still can make the speed greater than 500, i would like to know how to limit this as well eg: Car car1 = new Car(500000);
@Ripcraze Жыл бұрын
Put the same logic as your setter in your constructor where you set Speed = speed
@Jordan-qi2dn6 ай бұрын
Your setter should have the condition below, if the value within your constructor is greater than 500, the if statement will cap it at 500, otherwise it accepts the value and initializes speed to it. if(value>500) { speed = 500 } else { speed = value }
@GothicRK2 жыл бұрын
Wow I FINALLY understood this. Thank you!!
@danielbertrand8796 Жыл бұрын
what a bro
@ofaydn2 жыл бұрын
thanks for explaining this topic so simple
@isaacurban27902 жыл бұрын
You make things so easy
@shotgunflamez56082 жыл бұрын
2:57 no need for the else statement because if the "if" statement fails it'll just skip it and execute any code that is after the statement. Other than that pretty cool video
@easternunit20092 жыл бұрын
well for this example, he wants to make sure that the speed doesn’t go over 500 right?
@o9o9472 жыл бұрын
all good and great but how do u call the getter in the main method? u just showed how to call set
@spartanranger3 жыл бұрын
Thanks for the video Bro.
@kdenisinfo3 жыл бұрын
Do we need private field per each property? Or not
@sok85573 жыл бұрын
properties should be public while the fields the properties access should be private (doesnt always have to be, but if you want to apply encapsulation to the fields and use the get set accessors then properties should be public while fields should be private)
@sok85573 жыл бұрын
honestly rambled on a lot but tdlr: property: public while field = private (the reason for the property)
@amplifiedge Жыл бұрын
Thank you Bro!
@bhadriramlella76972 жыл бұрын
How can I take an input in the main function using getters and setters is there any way? If there is please explain me.
@bhadriramlella76972 жыл бұрын
I mean using cin in the main function with getters and setters
@IntergalacticWither8 ай бұрын
this is such a good video tysm
@elmer54552 жыл бұрын
thanks always had problems with this.
@davidesoltys84119 ай бұрын
isnt better to call the "private int speed" to "private int _speed" ???
@김-y8b1s2 жыл бұрын
coooool
@codeme80169 ай бұрын
Perfect!
@MichaelS-u6g Жыл бұрын
Love you bro
@Cruz0e2 жыл бұрын
example to my other comment, I just seen something like this private int _progress; public int progress { get { return rank == 8 ? 0 : _progress; } set { rank += value / 100; _progress = value % 100; } }
@edinetgrunhed6000 Жыл бұрын
what is '400' in this code ? Car car = new Car(400); how to display that 400?
@jirikunt1457 Жыл бұрын
My C# teacher would hate you for declaring get set like that xD
@Cruz0e2 жыл бұрын
I am not sure why my code/comment disappeared so i write again, but I just wanted to note the private variable + getter/setter does not have to be the same name like private speed and public Speed... I just seen a code where the variable was called _rank and rank, so it is just about your coding style
@Cruz0e2 жыл бұрын
so they do not have to share the same name
@vimukthikulasekara47249 ай бұрын
chad bro
@mrvladimirlenin2 жыл бұрын
thxxx😍
@pieteb_nl2 жыл бұрын
Puzzeled you can just use 'speed' in the setter, without defining it as a method parameter. This wouldn't be possible in java.
3 жыл бұрын
Thanks Bro!
@whitedinamo2 жыл бұрын
lesson check😇
@Saskamon2 жыл бұрын
Getters and Setters sounds like Jeepers Creepers to me.