Q: What is the difference between object based programming and object oriented programming?
- If the programming methodology supports encapsulation,Inheritance and polymorphiam then, it is called object oriented programming language, it supports code extendability.
- If the programming methodology supports only encapsulation then, it is called object based programming language, it supports code extendability.
Q: What are the fundamental concepts of oops?
Q: What is encapsulation and its advantage?
Ans: Grouping related thing together is called Encapsulation, we can acheive Portabily.
Q: How to implement the encapsulation in c#?
Ans: By using class,struct,properties,interface etc.
Q: What is DataHiding ?
Ans: Hiding unnecessary details from the user.
Q: What is the Advantage of DataHiding ?
Ans: Due to DataHiding behavior of the product can be protected, so that developers logic can be secured.
Q: What is Abstraction ?
Ans: Hiding complete implementation details from the user is called abstraction.
Due to abstraction user will feel comfortable while working with the product.
Q: Difference between DataHiding and Abstraction ?
- DataHiding: Hiding unnecessary data from the user, programmer is benifited.
- Abstraction: Hiding complete implementation details from the user, user is benifited.
Q: What is Class ?
Ans: Class is a model or template regarding the thing.
Q: What is an Object ?
Ans: An instance of the class.
Q: What is the difference between Encapsulation and Class ?
- Encapsulation: Is a objcet oriented programming concept.
- Class: it is a feature of the language by which we can implement encapsulation.
Q: What is the default access modifier for the class?
Q: What is the default access modifier for the members of the class?
Q: What is the default access modifier for the members of the struct?
Q: Difference between Class and Struct ?
|1. Class is Object type||1. Struct is Value type|
|2. All accessmodifiers are allowed||2. Protected is not supported|
|3. Inheritance is possible||3. Not possible|
|4. Supports all types of constructors||4. Default Constructor is not supported|
|5. Distructor allowed||5. Not allowed|
|6. method overriding possible||6. Not possible|
Q: What is Accessor Method and Mutator method ?
- Accessor Method: Any of the method is defined to access the value from the instance variable.
- Mutator Method: Any of the method is defined to modify the value from the instance variable.
Q: What is the use of base keyword ?
Ans: To access the base class members in the derived class we can use base keyword. (or) To invoke the base class constructor from the derived calss constructor.
Q: What is the difference between property and indexer ?
- If we use property we can get and modify the values from the instance variables .
- By using indexer we can access the object by applying subscript with index position.
Q: What is Constructor ?
Ans: Constructor is a special method in the class, which is used to initialize the instance variables to some meaning full initial values, when the class is instantiated.
Q: Why the name of Constructor and class is same ?
Ans: For easy identification purpose of the compiler.
Q: Can we overload distructor() ?
Ans: No, because it is parameter less.
Q: What is namespace ?
Ans: NameSpace is a logical container. Where in we can find classes, enumerations, interfaces delegates.
Q: What is the purpose of namespace?
Ans: To avoid the name collisions.
Q: What is the difference between namespace and class ?
- Namespace is used to avoid the name collisions
- Class is used to implement encapsulation.
Q: What is the alias name for namespaces and when it is required?
Ans: When ever there is a conflict among the members in the included namespaces, then we can avoid it by providing alias nameto the member where there is a conflict.
Q: What is the purpose of params keyword ?
Ans: Params keyword is used to specify the array of parameters to the method.
Q: What is the difference between out and ref parameters ?
- Out parameters are write only parameters in side the method.
- Ref parameters are read - write parameters in side the method.
Q: What is Binding ?
Ans: Replacing method invokation with its appropriate base reference is called Binding.
Q: What is static Binding ?
Ans: If the binding process is carried out at the time of compilation is called Static bonding.
Q: What is Dynamic binding ?
Ans: If the binding process is carried out at the run time is called Dynamic bonding.
Q: What are the difference between Method overloding and overriding ?
|1. Nothing but no.of methods defined with the same name by showing the difference in signature part||1. Nothing but no.of methods defined with same name and same signature|
|2. Possible with in the same class and derived class||2. Possible in the derived class by the override keyword|
|3. Possible for static, non-static methods||3. Possible for only abstract and virtual methods|
Q: What is polymorphism ?
Ans: Performing different actions by invoking same invocation.
Q: What is the diff between abstract calss and interface ?
|1. partially unimplemented||1. Fully unimplipmented|
|2. Complete abstraction is not possible||2. Complete abstraction is possble|
|3. All the types of members are allowed||3. Onlymethods,properties,indexers and events are allowed|
Q: What is sealed class ?
Ans: If a class is declared as sealed calss, then it can not be inherited ex: Thread class.
Q: What is extension method?
- From c# 3.0 we can find this.
- We can extend the functionality of existing data type by defining extension method.
- Always extension methos must be declared as static and defined in static class.
Q: What is the use of Dispose Method()?
Ans: It is used to Invoke the Garbage collector dynamically.
Q: What is the difference between string and stringBuilder?
- String: String class objects will return another instance of the string for each operation.
- StringBuilder: Manipulation can be done with is the object itself.
Q: What is the difference between Abstract method and Virtual method ?
|Abstract Method||Virtual Method|
|1. Must be inside abstract class||1. It can be declared any where|
|2. Must be overrided in its derived class||2. It may or may not be overrided in its derived class|
|3. Should not have the body in base class||3. Must have the body in base class|