1) What is abstraction? Explain how you have implemented this oops concept in your project?
Data abstraction is a process of representing the essential features without including implementation or background details.
Example is a bank account. People own savings accounts, checking accounts, credit accounts, investment accounts, but not generic bank accounts. In this case, a bank account can be an abstract class and all the other specialized bank accounts inherit from bank account.
2) What is encapsulation? Explain how you have implemented this oops concept in your project?
Encapsulation is a process of binding or wrapping the data and the codes that operates on the data into a single entity. This keeps the data safe from outside interface and misuse. One way to think about encapsulation is as a protective wrapper that prevents code and data from being arbitrarily accessed by other code defined outside the wrapper.
Encapsulation means hiding the internal details from other parts of the program. Encapsulation protects an implementation from unintended actions and inadvertent access. 3) Explain Polymorphism with an example on how you have implemented this in your project?
The meaning of Polymorphism is something like one name many forms. Polymorphism enables one entity to be used as as general category for different types of actions. The specific action is determined by the exact nature of the situation. The concept of polymorphism can be explained as "one interface, multiple methods".
4) What are the different types of polymorphism?
There are 2 types of Polymorphism
1. Compile time Polymorphism
2. Run Time Polymorphism
Compile time polymorphism is used for Function overloading
Runtime is used for implementing virtual functions overriding etc.
C#
5)What is an indexer?
Indexers are used for treating an object as an array. The indexers are usually known as smart arrays in C# community. Defining a C# indexer Is much like defining