Categories: News

The 3 Main Principles of Object Oriented Programming – How to Program With Java

[ad_1]

Object Oriented Programming (or OOP) is actually classified by three main principles.

1) Encapsulation

2) Inheritance

3) Polymorphism

These appear to be frightening terms but are actually fairly easy principles to grasp. In order to figure out how to program with java, you’ll need to understand these principles. So let’s consider our first main concept of OOP, encapsulation. Encapsulation just means we want to limit the access that some other pieces of code have to this particular object. So, to illustrate, if you have a Person object, and this Person object has a first and last name as attributes. In the event another chunk of code attempts to modify your Person object’s first name to be say “Frank3”, you could take note of what the first name is trying to be set to, and remove any digits so that we are simply left with “Frank”. Without encapsulation, we will not have the ability to prevent “silly programmers” from modifying the values of our variables to something which wouldn’t seem sensible, or worse, break the application. Seem sensible?

The second concept of OOP, and a essential principle if you wish to learn how to program with Java, is Inheritance. This specific concept refers to a super class (or parent class) and a sub-class (or child class) and the simple fact that a child class acquires each of the attributes of its parent. You can think of it in terms of a real world circumstance, like a real parent and child. A child will probably inherit certain traits from his or her parents, like say, eye colour or hair colour. Allow us to imagine yet another example in terms of programming, say we have super class “Vehicle” and sub-classes “Car” and “Motorcycle”. A “Vehicle” possesses tires, therefore through inheritance so would a “Car” and a “Motorcycle”, however a “Car” has doors, and a “Motorcycle” does not. So it wouldn’t be accurate to state that a “Vehicle” has doors, as that declaration would be inaccurate. So you can see how we could determine all the aspects that are similar regarding a “Car” and a “Motorcycle” and thus identify them inside of the “Vehicle” super class.

The 3rd concept of OOP is Polymorphism. This specific concept appears to be one of the most frightening, but I’m able to explain it in simple terms. Polymorphism means that an object (i.e. Animal) can take on several forms while your program is operating. Let’s imagine you have designed an Animal class and defined the method “Speak”. You then asked three of your buddies to develop kinds of animals and have them implement the “Speak” method. You won’t know what sort of animals your friends create, or how their Animals will speak, unless you actually hear those animals speak. This is very comparable to how Java addresses this issue. It’s called dynamic method binding, which simply means, Java won’t understand how the actual Animal speaks until runtime. So maybe your friends have created a Dog, Cat and Snake. Here are three varieties of Animals, and they each one speaks distinctly. Whenever Java asks the Dog to speak, it says “woof”. Anytime Java asks the Cat to speak, it says “meow”. Whenever Java requests the snake to speak, it hisses. There’s the beauty of polymorphism, all we did was to define an Animal interface with a Speak method, and we can make a bunch of kinds of animals which speak in their own specialized way.

[ad_2]

techfeatured

Recent Posts

Unlock Detailed Vehicle Information with VINDECODERZ

VINDECODERZ offers comprehensive and reliable VIN decoding services to provide users with detailed vehicle information…

4 days ago

Trending Innovations in Auto Repair: How Modern Technology Shapes Service Quality

Table of Contents: Key Takeaways Understanding the Impact of Diagnostic Software Electric and Hybrid Vehicles:…

2 weeks ago

Exploring the Impact of Trigger Kits on Firearm Performance and Safety

Key Takeaways: Custom trigger kits can offer personalization while potentially improving shooting accuracy and performance.…

3 weeks ago

Extending Vehicle Longevity: The Impact of Ceramic Coatings on Car Maintenance

Ensuring a vehicle's longevity requires more than just regular servicing; it encompasses a broader approach…

4 weeks ago

Better Care with Tech: How Skilled Use of Medical Tools Saves Lives

Technological developments in medicine have raised the bar for patient care to an unprecedented degree,…

1 month ago

Choosing the Right Platform: Options for Website Creation

In the digital era, having a website is essential for businesses, organizations, and individuals alike.…

2 months ago