Tag Archives: OOP

Class Object Example

– Earth is a software application where human and other thing is software objects.For creating object we need to create a human class. Humans have basic behaviors as well as some basic attributes age height inches etc.








Java learned as so far:

Java variables,
Array, 2d array
Different method invoking and return type
– Class is actually a blueprint/specification/design
– A class can create as many as objects it needs to create
– Earth is a software application where human and other thing is software objects.For creating object we need to create a human class
– Objects do particular behavior in a class
– Object exist only in application runtime actually when application is running
– Objects have identity,state and behavior

this keyword – it represent current object
Constructor – The costructor is a special method with the same name as the class and it’s used to instantiate objects from that class
– Every class has a by default constructor if we don’t put it manually
– The constructor is special method containing instructions for object creation. it can be said it is so called birth method. It has instructions for how the object will be born when the application starts up
Static keyword
Stack and heap memory
Garbage collection
Object oriented Programming = better organizing of code, it is a way to organize our code from multiple files by creating objects
Local variable
Reference variable
Instance variable
– Inheritance is the approach to get/transfer behaviour of one class to another
– We use extends keyword for inheriting, in inheritance we inherit from parent class which known as base class and the class which needs inheritation is known as child class or sub class/derived class
super keyword it extract constructor and it’s variable from parent class but reverse is not possible
– Same method name with different purpose
– Same method name in parent class but in child class the method name is same but with different purpose
– Overrides means replace
– Override is not a good idea sometimes so we go for interface
– Interface is a contract with a class. The class needs to implements that method of the interface according to contract
– Interface has a method which does not need body, so it is just only to define, it is called as abstract method
– one parent class
– We use implements keyword while putting interface in a class
Abstract class
– When you don’t need all methods to invoke you can use abstract method, you can not make object from abstract class. Abstract method needs to be in abstract class. We use abstract keyword for both method and object to define abstract class and methods
– you can only extend abstract class but can not instantiate abstract class
– We can define abstract class as a type while creating object

Exception Handling

Collection Framework
Wrapper class

Functional Interfaces
Lambda expressions

-Lambda helps us to use separate from associated object
– it can run without class
– We need to use lot of interfaces for this


Ei bold kora jayga diye project banaye banaye clear korte hobe
Italic kora jaygagula motamuti clear asey In Sha Allah, Alhamdulillah
The source is : Imtiaz Ahmed’s complete Java course

OOP Design New Course:

Association: It defines relationship between classes, it defines how the software will behave
Dependency Association: For example from code:

A driver receives a vehicle reference only as driver then only he can drive or accelerate

Composition: A particular object . It imply ownership
for example in this code:

Aggregation Association: It does not imply ownership

Here Department to SpanishCourse relation is composite

But Course to Student relationship is not composite because it does not imply ownership a student can take many courses or not

We find this relationship from above diagram, the block diamond and white diamond is the part of UML diagram

Forming Association between objects:

has a relationship in customer .

Now when to stop delivery

Overview of software deisgn:
For example: Hospital Employee Management System
Task of the software:
Hire and Terminate Employees
Print Reports(XML,CSV Formats)

Problem Statement:
Current status of the software

Tips for design:
You must draw design in paper or whiteboard don’t go to code directly
Don’t overdesign or overdraw
We have to develop iteratively but early steps should be kept simple
Class names should be nouns based on their intention

Single Responsibility Priniciple(SRP): Not all the things in the same class

Don’t repeat yourself(DRY):

Arrow sign always describe that it is depends on that dependency class:


DAO=Data Access Object

Source Imtiaz Ahmed Master OOP Design course

C# Constructor and Destructor




C# Object and Classes


Calling Method Example in C#


with object creation from class:

If we don’t want to use object we can use static keyword here:

Static method can be invoked with class name:

Can be invoked without creating objects:





Java OOP Examples


C++ OOP: Constructor Destructor

The class constructor:

A class constructor is a special member function of a class that is executed whenever we create neww objects of that class

A costructor will have exact same name as the class and it does not have any return type at all, not even void.Constructors can be very useful for setting initial values for certain member variables.

Following example wxpalins the concept of constructor:

Parameterized Constructor:

A default constructor does not have any parameter, but if you need, a constructor can have parameters.This helps yout to assign initial value to an object at the time of its creation as shown in the example:

2015-09-30 14_02_06-_D__desktop_desktop september_oop_param.exe_

Using Initialization Lists to Initialize Fields:

In case of parameterized constructor, you can use following syntax to initialize the fields:

Above syntax is equal to the following syntax:

If for a class C, you have multiple fields X,Y,Z etc. to be initialized, then can be use same syntax and separate the fields by comma as follows:


The class Destructor:

A destructor is a special member fucntion that is executed whenever an object of it’s class goes out of scope or whenever the delete expression is applied to a pointer to the object of that class.

A destructor will have exact same name as the class prefixed with a tilde(~) and it can neither return a value nor can it take any paramaters.Destructor can be very useful for releasing resources before coming out of the program liek

2015-09-27 00_53_49-_D__desktop_desktop september_oop_destructor.exe_