the evolution diagram of OOPS concept. Machine language ˘ Procedure language ˘ Assembly language ˘ OOPS 2) Draw the structure of Procedure oriented language or Typical organization of Procedure oriented language. 3) What is Procedure oriented language? Conventional programming, using high-level language such as COBOL, FORTRAN and C are commonly known as Procedure oriented language (POP). In POP number of functions are written to accomplish the tasks such as reading, calculating and printing. 4) Give some characteristics of procedure-oriented language. Emphasis is on doing things (algorithms). Larger programs are divided into smaller programs known as functions. Most of the functions share global data. Data move openly around the system from function to function. Employs top-down approach in program design. Function-1 Function-2 Function-3 Function-4 Function-5 Function-6 Function-7 Function-8 Main program 5) Write any four features of OOPS. Emphasis is on data rather than on procedure. Programs are divided into objects. Data is hidden and cannot be accessed by external functions. Follows bottom-up approach in program design. 6) What are the basic concepts of OOS? Objects. Classes. Data abstraction and Encapsulation. Inheritance. Polymorphism. Dynamic binding. Message passing. 7) What are objects? Objects are basic run-time entities in an object-oriented system. They may represent a person, a place, a bank account, a table of data or any item that the program has to handle. Each object has the data and code to manipulate the data and theses objects interact with each other.

8)What is a class? The entire set of data and code of an object can be made a user-defined data type with the help of a class. Once a class has been defined, we can create any number of objects belonging to the classes. Classes are user-defined data types and behave like built-in types of the programming language. 9) what is encapsulation? Wrapping up of data and function within the structure is called as encapsulation. 10)What is data abstraction? The insulation of data from direct access by the program is called as data hiding or information binding. The data is not accessible to the outside world and only those functions, which are wrapped in the class, can access it. 11)What are data members and member functions? Classes use the concept of abstraction and are defined as a list of abstract attributes such as size, weight, and cost and uses functions to operate on these attributes. The attributes are sometimes called as data members because they hold information. The functions that operate on these data are called as methods or member functions. Eg: int a,b; // a,b are data members Void getdata ( ) ; // member function 12)What is dynamic binding or late binding? Binding refers to the linking of a procedure to the code to be executed in response to the call. Dynamic binding means that the code associated with a given procedure call is not known until the time of the call at the run-time. 13)Write the process of programming in an object-oriented language? Create classes that define objects and their behavior. Creating objects from class definition. Establishing communication among objects. 14)Give any four advantages of OOPS. The principle of data hiding helps the programmer to build secure programs that cannot be invaded by code in other parts of the program. It is possible to have multiple instances of an object to co-exist without any interference. Object oriented programming can be easily upgraded from small to large systems. Software complexity can be easily managed. 15)What are the features required for object-based programming Language? Data encapsulation. Data hiding and access mechanisms. Automatic initialization and clear up of objects. Operator overloading. 16)What are the features required for object oriented language? Data encapsulation. Data hiding and access mechanisms.

Automatic initialization and clear up of objects. Operator overloading. Inheritance. Dynamic binding. 17)Give any four applications of OOPS • Real-time systems. • Simulation and modeling. • Object-oriented databases. • AI and expert systems. 18) Give any four applications of c++? Since c++ allows us to create hierarchy-related objects, we can build special object-oriented libraries, which can be used later by many programmers. C++ are easily maintainable and expandable. C part of C++ gives the language the ability to get close to the machine-level details. It is expected that C++ will replace C as a general-purpose language in the near future. 19) What are tokens? The smallest individual units in a program are known as tokens. C++ has the following tokens, o Keyword o Identifiers o Constants o Strings o Operator 20)What are keywords? The keywords implement specific C++ language features. They are explicitly reserved identifiers and cannot be used as names fro the program variables or other user defined program elements. Eg: go to, If, struct , else ,union etc. 21) Rules for naming the identifiers in C++. Only alphabetic characters, digits and underscore are permitted. The name cannot start with a digit. The upper case and lower case letters are distinct. A declared keyword cannot be used as a variable name. 22)What are the operators available in C++? All operators in C are also used in C++. In addition to insertion operator << and extraction operator >> the other new operators in C++ are, : Scope resolution operator : : * Pointer-to-member declarator ->* Pointer-to-member operator .* Pointer-to-member operator delete Memory release operator endl Line feed operator new Memory allocation operator setw Field width operator

// global variable m void main ( ) { int m=20. } output: 20 10 (: : m access global m) Scope resolution operator is used to define the function outside the class. Pointer-variable = new data type. endl are known as manipulators. The syntax of an enum statement is similar to that of the struct statesmen. New operator can be used to create objects of any data type. Eg: Cout<<setw(5)<<sum<<endl. Syntax: Return type <class name> : : <function name> Eg: Void x : : getdata() 24) What are free store operators (or) Memory management operators? New and Delete operators are called as free store operators since they allocate the memory dynamically. Eg: enum shape{ circle. square. yellow} 27) What are symbolic constants? There are two ways for creating symbolic constants in C++:
.23)What is a scope resolution operator? Scope resolution operator is used to uncover the hidden variables. Manipulators are operators that are used to format the display. It also allows access to global version of variables. This can be done as. thereby increasing comprehensibility of the code. The endl manipulator when used in an output statement causes a linefeed to be inserted and its effect is similar to that of the newline character”\n”. // local variable m cout<<”m=”<<m<<”\n”. green. Initialization of the memory using new operator can be done. Eg: #include<iostream. Pointer-variable = new data-type(value) Delete operator is used to release the memory space for reuse.h> int m=10. The general form of its use is Delete pointer-variable. 25) What are manipulators? Setw. which provides a way for attaching names to numbers. triangle} enum color{ red. cout<<”: : m=”<<: : m<<”\n”. 26) What do you mean by enumerated datatype? An enumerated datatype is another user-defined datatype. blue.

The inline functions are defined as Inline function-header
. : :* To declare a pointer to a member of a class. The program in any way cannot modify the value declared as constant in c++. This is referred to as dynamic initialization of variables. …….Using the qualifier constant. Char name [size].. In C++ . * To access a member using object name and a pointer to the member ->* To access a member using a pointer to the object and a pointer to that member.. …. 32)what is an inline function ? An inline function is a function that is expanded in line when it is invoked. 31)what is function prototype ? The function prototype describes function interface to the compiler by giving details such as number . if make the variable sum a reference to the variable total... then sum and total can be used interchancheably to represent that variable. float sum = total. float area=3. That is compiler replaces the function call with the corresponding function code. 29) What are reference variable? A reference variable provides an alias(alternative name) for a previously defined variable. Eg: Const int size =10. Eg float volume(int x.type of arguments and type of return values Function prototype is a declaration statement in the calling program and is of the following Type function_name(argument list).. Syntax: Data-type &reference-name = variable-name Eg: float total = 100. 30)What is member-dereferencing operator? C++ permits to access the class members through pointers. Defining a set of integer constants using enum keyword.14*rad*rad.. ……. 28)What do you mean by dynamic initialization of variables? C++ permits initialization of the variables at run-time. It provides three pointer-to-member operators for this purpose.. int n =strlen(string). For example . Thus declaration and initialization is done simultaneously at the place where the variable is used for the first time.a variable can be initialized at run-time using expressions at the place of declaration as.float y).

which does not have matching argument in the function call. function declaration.7). function declaration.7. The compiler will generate an error when this condition is violated. //memory for x is created
. we can create variables of that type by using the classname Eg:classname x. or a goto exists for functions not returning values .15 Value=amount(5000.0. }. public: variable declaration. The qualifier const tells the compiler that the function should not modify the argument. 36) How the class is specified ? Generally class specification has two parts class declaration It describes the type and scope of its member class function definition It describes how the class functions are implemented The general form is Class class_name { private: variable declarations.15) Function call is Value=amount(5000.34 to rate We must add default value from right to left 35) What are constant arguments ? keyword is const.{ function body } 33) Write some situations where inline expansion may not work for functions returning values.int period.34) Passes an explicit value 0f 0. This type of declaration is significant only when we pass arguments by reference or pointers eg: int strlen(const char *p). Default values are specified when the function is declared.float rate=0. a switch. if loop. Here it takes principle=5000& period=7 And default value for rate=0. Eg : float amount(float principle.if a return statement exists if function contain static variables if inline functions are recursive 34)what is a default argument ? Default arguments assign a default value to the parameter. 37) How to create an object ? Once the class has been declared.

getdata(100. void getdata(int x. but its life time is the entire class type and scope of each static member variable must be defined outside the class It is stored separately rather than objects Eg: static int count//count is initialized to zero when an object is created. 40) What is static data member? Static variable are normally used to maintain values common to the entire class. Feature: It is initialized to zero when the first object is created. 39) How the member functions are defined ? Member functions can be defined in two ways outside the class definition Member function can be defined by using scope resolution operator:: General format is Return type class_name::function-name(argument declaration) { } Inside the class definition This method of defining member function is to replace the function declaration by the actual function definition inside the class. b=y. No other initialization is permitted only one copy of that member is created for the entire class and is shared by all the objects It is only visible within the class.75.int y) { a=x.38) How to access a class member ? object-name. It is treated as inline function Eg:class item { int a. }. function-name(actual arguments) eg:x.b .5). 42) How the objects are used as function argument? This can be done in two ways A copy of the entire object is passed to the argument Only address of the objects is transferred to the function 43) What is called pass by reference?
. int classname::count.//definition of static data member 41) What is static member function? A member function that is declared as static has the following properties A static function can have access to only other static member declared in the same class A static member function can be called using the classname as follows classname ::function_name.

Eg. the called function works directly on the actual arguments. 47) When the deferencing operator . } 49) Define constructor A constructor is a special member function whose task is to initialize the objects of its class. student s1(a). The constructor is invoked whenever an object of its associated class is created. A::*->pointer to member of A class &A::m->address of the m member of A class 46) When the deferencing operator ->* is used? It is used to access a member when we use pointer to both the object and the member. 45) Define pointers to member It is possible to take the address of a member of a class and assign it to a pointer. pointer to member m is defined as int A::*ip=&A::m. It is special because its name is same as class name. It is called constructor because it constructs the values of data members of the class
. The address of a member can be obtained by applying the operator &to a “fully qualified” class member name. } class student { ……… }. }.* is used? It is used to access a member when the object itself is used as pointers. 48) Define local classes. such classes are called local classes. Eg: class A { int m. Classes can be defined and used inside a function or a block. then we may declare it as const member function as Void mul(int .int)const. 44) Define const member If a member function does not alter any data in the class. public: void show( ). void test(int a) { ……. A class member pointer can be declared using the operator::*with the class name. It can use global variables and static variables declared inside the function but cannot use automatic local variables.In this method address of an object is passed.

it becomes a default constructor.n).0) assign real=6.3 and imag=9. } 56) Define const object We can create constant object by using const keyword before object declaration. public: string( ) { length=0. Destructor name is same as class name preceded by tilde symbol(~)
.name3(Lagrange).0) assign real=2. When both these forms are used in a class . The process of initializing through a copy constructor is known as copy initialization. The ambiguity is whether to call A::A() or A::A(int i=0) 54) Define copy constructor A copy constructor is used to declare and initialize an object from another object. when called with no arguments .The default value of the argument imag is 0 The statement complex a(6.9. It takes a reference to an object of the same class as an argument Eg: integer i2(i1).0 and imag=0 the statement complex a(2. 55) Define dynamic constructor Allocation of memory to objects at time of their construction is known as dynamic constructor.3. } void main( ) { string name1(“Louis”).it cause ambiguity for a statement such as A a.0 53) What is the ambiguity between default constructor and default argument constructor ? The default argument constructor can be called with either one argument or no arguments. would define the object i2 at the same time initialize it to the values of i1. 57) Define destructor It is used to destroy the objects that have been created by constructor. Eg: Const matrix x(m. int length. The memory is allocated with the help of the NEW operator Eg: Class string { char *name. Another form of this statement is Eg: integer i2=i1. name=new char[length +1].

67). } void main() { integer i1. though a derived class can call the base class • They can have default arguments • Constructors cannot be virtual function 60) How the objects are initialized dynamically? To call parameterized constructor we should the pass values to the object
. } integer(int a.m. } integer(&i) //copy constructor { m=i.h> #include<conio.n. //invokes copy constructor } 59) Write some special characteristics of constructor • They should be declared in the public section • They are invoked automatically when the objects are created • They do not have return types. and they cannot return values • They cannot be inherited.n. The compiler upon exit from the program will invoke it. not even void and therefore. The class that has different types of constructor is called multiple constructors Eg: #include<iostream. n=i.int b) //parameterized constructor { m=a.//invokes parameterized constructor integer i3(i2). n=b. ~integer() { } A destructor never takes any arguments nor it does it return any value.Eg. Whenever new operator is used to allocate memory in the constructor. we should use delete to free that memory. //invokes default constructor integer i2(45. public: integer( ) //default constructor { m=0.h> class integer { int m. 58) Define multiple constructors (constructor overloading).n=0.

The statement max ( a .q.e. Usually it has object as arguments.ie.18) this value can be get during run time.int b) it is invoked by integer a(10. It can be declared either in the public or private part of a class.for the constructor integer(int a.. else return y. 64)Write some properties of friend functions. int &y) { if(x>y) return x. for above constructor int p. otherwise –1 to b. 66)Write some of the basic rules for virtual functions
. A function can also return a reference. } Since the return type of max ( ) is int & the function returns reference to x or y (and not the values).q). Friend function is preceded by the keyword ‘friend’. replaced by the statements that define the function. class of the object pointed to determine which function definition will be used. eg: ( A . Friend function is not in the scope of the class to which it has been declared as friend. integer a(p. x ) 65)What are virtual functions? A function qualified by the ‘virtual’ keyword is called virtual function. It is expanded in line when it is invoked. is legal and assigns –1 to a if it is larger. Consider the following function int & max( int &x . cin>>p>>q. It has to use an object name and dot membership operator with each member name. b) will yield a reference to either a or b depending on their values. When a virtual function is called through a pointer. Hence it cannot be called using the object of that class. b) = -1. i. 63) What are Friend functions? Write the syntax A function that has access to the private member of the class but is not itself a member of the class is called friend functions. The general form is friend data_type function_name( ). It cannot access member names directly. Then a function call such as max ( a . 61)Define Inline Function? Inline function is defined as a function definition such that each call to the function is in effect. The general form is inline function-header { function body } 62)Explain return by reference with an example.

it need not be redefined in the derived class. // Declarations i. //uses prototype ( iii. ) 70) What is operator overloading? C++ has the ability to provide the operators with a special meaning for a data type. //add function with 3 arguments of same type iii. In such cases. It is also known as “donothing” function. int b). Prototypes of base class version of a virtual function and all the derived class versions must be identical. Polymorphism is of two types. ) add (3. double add( int p. double q). A class containing pure virtual functions cannot be used to declare any object of its own. int add( int a. //uses prototype ( ii. int b. To define an additional task to an operator. 67) What are pure virtual functions? Write the syntax. //add function with 2 arguments of same type ii. //add function with 2 arguments of different type //Function calls add (3 . the compiler requires each derived class to either define the function or redeclare it as a pure virtual function. This mechanism of giving such special meanings to an operator is known as Operator overloading. //uses prototype ( i. we must specify what it means in
. 5).*) Scope resolution operator (::) Size operator ( sizeof ) Conditional operator (?:) 72) What is the purpose of using operator function? Write its syntax. 10. . int c). 68) What is polymorphism? What are its types? Polymorphism is the ability to take more than one form.0). int add( int a. They cannot be static members and they are accessed by using object pointers Virtual function in a base class must be defined. A pure virtual function is a function declared in a base class that has no definition relative to the base class. . ) add (3 . 71) List out the operators that cannot be overloaded. 4. The “do-nothing” function is defined as follows: virtual void display ( ) =0. If a virtual function is defined in the base class. The behavior depends upon the type of data used. Eg: An overloaded add ( ) function handles different data types as shown below. It provides a flexible option for the creation of new definitions for C++ operators. Class member access operator (.Virtual functions must be member of some class. They are Function overloading Operator overloading 69) What is function overloading? Give an example. 4). An operation may exhibit different behaviors in different. Function overloading means we can use the same function name to create functions that perform a variety of different tasks.

77) How an overloaded operator can be invoked using Friend functions? In case of unary operators. it takes two explicit arguments. The basic meaning of the operator should not be changed. it takes one reference argument (object of the relevant class) When binary operators are overloaded using friend function.relation to the class to which the operator is applied. The general form is return type classname :: operator (op-arglist ) { function body } where return type is the type of value returned by specified operation. Operator functions are either member functions or friend functions. operator op is the function name. 74) How will you overload Unary & Binary operator using member functions? When unary operators are overloaded using member functions it takes no explicit arguments and return no explicit values. The op is preceded by a keyword operator. which describes the task. Assignment operator = Function call operator ( ) Subscripting operator [ ] Class member access operator → 79) What is meant by casting operator and write the general form of overloaded casting operator. overloaded operator can be invoked as Operator op (x . 75) How will you overload Unary and Binary operator using Friend functions? When unary operators are overloaded using friend function. it takes one explicit argument. This is done by Operator function . The overloaded operator must have at least one operand that is of user defined data type. When binary operators are overloaded using member functions. 76) How an overloaded operator can be invoked using member functions? In case of Unary operators. overloaded operator can be invoked as Operator op (x). it would be invoked as Object . In case of binary operators. y) 78) List out the operators that cannot be overloaded using Friend function. 73) Write at least four rules for Operator overloading. Only the existing operators can be overloaded. Op-operator being overloaded. Overloaded operators follow the syntax rules of the original operators. operator op(y) where op is the overloaded operator and y is the argument. They cannot be overridden. A casting operator is a function that satisfies the following conditions
. overloaded operator can be invoked as op object_name or object_name op In case of binary operators. Also the left hand side operand must be an object of the relevant class.

Here constructor is used in destination class and casting operator function is used in source class. Constructor takes a single argument whose type is to be converted..I++) sum=sum+v[ i ] *u[ i ] . It must not specify a return type. Constructor will be called automatically while creating objects so that this conversion is done automatically. Conversion from one class type to another is the combination of class to basic and basic to class type conversion. Conversion from basic data type to class type can be done in destination class. Time ( int t) //constructor { hours= t/60 . // function statements } It is also known as conversion function. Eg: vector : : operator double( ) { double sum=0. Using constructors does it.
. public: …………. Using Type Casting operator. //t in minutes mins =t % 60. conversion from class to basic type conversion can be done. Here class Y is the source class and class X is the destination class. The general form of overloaded casting operator is operator type name ( ) { ………. for(int I=0. The class Y type data is converted into class X type data and the converted value is assigned to the obj X.I<size. Eg: Converting int type to class type class time { int hrs. } This function converts a vector to the corresponding scalar magnitude. 81) Explain class to basic type conversion with an example. 80) Explain basic to class type conversion with an example. 82) Explain one class to another class conversion with an example. return sqrt ( sum ) .mins.It must be a class member. } }. Eg: objX = objY objX is the object of class X and objY is an object of class Y. It is done in the source class itself. It must not have any arguments.

84) What is meant by single inheritance? If a single class is derived from a single base class is called single inheritance. Multilevel inheritance Multiple inheritance The class result will have both the multilevel and multiple inheritances. Eg: Base class Grand father Intermediate Base class Father Derived class Child 88) What is hybrid inheritance? It is the combination of one or more types of inheritance. It supports the concept of hierarchical classification. which in turn is derived from another class. Eg: Base class Derived class Here class A is the base class from which the class D is derived. 85) What is multiple inheritance? If a class is derived from more than one base class. it is called multiple inheritance. We can add additional features to an existing class without modifying it by deriving a new class from it. Student Arts Engineering M e d i c a l CSE ECE Civil
. This process can be extended to any number of levels. Class D is the public derivation of class B hence it inherits all the public members of B. But D cannot access private members of B. Eg: Base classes Derived class Here class C is derived from two base classes A & B. is called multilevel inheritance. It provides the idea of reusability.83) What is meant by inheritance? Inheritance is the process by which objects of one class acquire the properties of another class. 86) What is hierarchical inheritance? If a number of classes are derived from a single base class then it is called hierarchical inheritance. Eg : Hierarchical classification of students in University
A B
A C B
87) What is multilevel inheritance? If a class is derived from a class.

Class test is derived from class Student. For a virtual base class only one copy of members will be inherited regardless of number of inheritance paths between base class and derived class. 92)Mention some of the Separators used in Java Programming? () Contain a list of parameters in method definition & invocation. Student Test Result Sports Syntax: boolean variablename. true or false. In case of multiple inheritance. Separate package name from sub packages. Class result is derived from class Test and sports. if the base class is not virtual the derived class will inherit more than one copy of members of the base class. . Assume that class sports derive the roll number from class student.boolean is also required by the conditional expression that governs the control statements such as if for. Eg: Processing of students’ results. A base class that is qualified as virtual in the inheritance definition.
. 94)How dynamic initialization of variables is achieved in java? Java allows variables to be initialized dynamically. {} Contain the value of automatically initialized arrays.A B C
Student Test Result Sports 89) What is meant by Abstract base class? A class that serves only as a base class from which derived classes are derived. 90) Write short notes on virtual base class. As a virtual base class As a virtual base class 91)Define Polymorphism? Polymorphism is the feature that allows one interface to be used for a general class of actions.This helps reduce complexity by allowing the same interface to be used to specify a general class of action. A base class that contains pure virtual function is an abstract base class. [] Declare array types. 93)What is boolean data type? Java has simple type called boolean for logical values. This means that it is possible to design a generic interface to a group of related activites. Terminate statements.(ie) “one interface multiple methods”. No objects of an abstract base class are created. . using any expression valid at the time the variable is declared. It can have only one of two possible values. This is the type returned by all relational operators like a<b.

95)What is meant by Widening conversion? When one type of data is assigned to another type of variable .double a= 3. If any one operand is double. The result of ? operation is that of the expression evaluated. here “c” is initialized dynamically to the length of hypotenuse. allocate using new. byte.b=4. Syntax: (target-type)value target-type the desired type to convert the specified value to. For example the int type is always large enough to hold to hold all byte values 96)What is meant by narrowing conversion? We are explicitly making the value narrower so that it will fit into the target type.0 double c=Math.0. Syntax: type var-name[]. bb: array-var=new type[size]. . A cast is simply an explicit type conversion. If one operand is a float operand. physical array of integers. case value2: //statement sequence break.sqrt( a * a + b * b). . To create a conversion between two incompatible types. Syntax: expression1?expression2:expression3 Eg: ratio = denom = = 0 ? : num / denom. case valueN: //statement sequence
. 100)What is the use of ternary operator? The ternary operator replaces if-then-else statements. 99)Here var-name is set to null. 97)State Type Promotion Rules? All byte & short values are promoted to int. To link with an actual. If expression1 is true .the whole expression is promoted to long. short long float double 98)How to create a one dimensional arrays? A one dimensional array is a list of liked type variables.an automatic conversion will take place if the following conditions are met . 101)Write down the syntax of switch statement? Switch(expression){ case value1: //statement sequence break. the result is double. . the entire expression is promoted to float. you must use a cast.first create an array variable of desired data type. To create an array . if one operand is long .then expression2 is evaluated. otherwise expression3 is evaluated. The two types are compatible. The destination type is larger than the source type. The conversion is not performed automatically.

Eg: Box mybox1= new Box(10. It has the same names the class in which it resides & is syntactically similar to a method.
. height= h. 107)What is the use of This keyword? This is always a reference to the object on which the method was invoked. 3.){ //body } 103)What is the difference between break & continue statements? Break: We can force immediate termination of a loop. Box mybox1= new Box(7. but stop processing the remainder of the code in it’s body for this particular iteration 104)What are the uses of break statements? 1. 105)Define Constructors? A constructor initializes an object immediately upon creation. the loop expression & any remaining code in the body of the loop.It can be used to exit a loop.it can be used as a civilized form of goto. Continue: useful to force early termination. depth = d. 106)Define parameterized Constructors? To construct an object of various dimensions we can add parameters to the constructor.15). this can be used inside any method to refer to the current object. width = w. for: consists of three portions initialization. 2. When a break statement is encountered in a loop. the loop is terminated & the program control resumes at the next statement following the loop.termination. This.double h.conditon. before the new operator completes.It terminates a statement sequence in switch statement. Once defined the constructor is automatically called immediately after the object is created. default: //default statement sequence } 102)What are the iteration statements used in Java? While: repeats a statement or block while its controlling expression is true. Syntax: while(condition){ //body of loop } do-while: Executes its body atleast once Syntax: do{ //body of loop }while(condition).termination.15). it continue running the loop.20. This.conditon. bypassing the conditional. Box(double w.double d){ This. Syntax: for(initialization. Syntax: class-var = new classname( ).break.

if (n= =1) return 1.out.println(“a: “ +a). This means that changes made to the parameter will affect the argument used to call the subroutine. Call-by-Reference: In this method .println(“a and b: “ +a +” “ +b).} 108)Define Garbage collection? The technique used to handle the deal location automatically. or a window character font which might be freed before an object is destroyed. int fact(int n){ int result. Syntax: protected void finalize() { //finalization code } 110)Define Method overloading? In Java it is possible to define two or methods with the same class that share the same name.out.println(“a: “ +a). return result. To handle such situation Java provides a mechanism called finalization.a reference to an argument is passed to the parameter. When this is the case the methods are said to be overloaded &the process is referred to as method overloading. 109)What is the use of finalize() method? If an object is holding some non-java resource such as a file handle.int b){ System. void test(int a){ System.Recrsion is the attribute that allows a method to call itself. as long as the parameter declarations are different. } void test(int a. Define Recursion? Recursion is the process of defining something in terms of itself. Garbage collection occurs sporadically during the execution of your program. } void test(double a){ System. By using finalization we can define specific action that will occur when an objects just about to reclaimed by the Garbage collector.out.
.& the memory occupied by the object can be reclaimed. Therefore changes made to the parameter of the subroutine have no effect on the argument used to call it. When no references to an object exists. that object is assumed to be no longer needed.this reference is used to access the actual argument specified in the call. A method that call itself is said to be recursive. Inside this subroutine . } 111)What are the different ways of argument Passing? Call-by-value: This method copies the value of an argument in to the formal parameter of the subroutine. result= fact(n-1) * n.

rather than compile time. Java implements run time Polymorphism by means of Dynamic Method Dispatch.println(“Super class”) } class B extends A{ ……. class A{ ……. when ah overridden method is called through a super class reference. Super(parameter-list).super() must always be the first statement executed inside a subclass’s constructor. Eg: final int FILE_NEW=1.it acts like this. Void show(){ System. It is similar to const in C/C++.out.We must initialize a final variable when it is declared. Void show(){ System. java uses this to resolve calls to overridden methods at run time. } 117)Define Dynamic Method Dispatch? Dynamic Method Dispatch is the mechanism by which a call to an overridden function is resolved at run time. 114)How to call a Super class constructors? A subclass can call a constructor method defined by its super class by use of the following form of super. Principle: A super class reference variable can refer to a sub class object. 113)What is the use of final keyword? It is used to prevent its contents from being modified. except that it always refers to the super class of the subclass in which it is used.println(“sub class”) } class override{ B sub = new B( ). java determines which version of that method to execute based up on the type of the object being referred to at the time the call occurs.Using super we can call Super class constructor. Sub. Parameter list any parameters needed by the constructor in the superclass. They cannot refer to this or super any way. show( ). 115)What are the uses of super keyword? 1.out. It
. 2.when an overridden method is called from within a subclass it will always refer to the version of that method defined by the subclass.} 112)Mention some of the restrictions while using static keyword? They an call other static methods. 116)Define Method overriding? When a method in a subclass has the same name & type signature as a method in the subclass is said to override the method in the superclass. They must only access the static data.

pkg3]]. to create the equivalent of named constant. include the implements clause in a class definition.is the type of the object being referred to that determines which version of an overridden method will be executed. When an exceptional condition arises an object representing that exception is created & thrown in the method that caused error. Syntax: access class classname[extends super class] Implements interface[. 123)Write down the fundamentals of Exception Handling? A java exception is an object that describes an exceptional condition that has occurred in a piece of code. Syntax: package pkg1[pkg2[. type final –varname1 = value. import statements occur immediately following the package statements & before any class definitions. Pkg1 name of the Top level package. Java Exception handling is managed through five keywords:try. 121)Write down the syntax for defining Interface? An interface is defined similar to a class Syntax: access interfacename{ Return type method-name1(parameter list). 118)What are the uses of final keyword? 1. type final –varname1 = value.pkg2]. To prevent inheritance. To Prevent overriding 3. We can create a hierarchy of classes. Pkg name of the package.throw. } 122)What are the steps to be followed while implementing interfaces? To implement an interface.The package statement defines a name space in which classes are stored. type final –varname1 = value. For that separate each package name from the one above it by use of a period. 119)How to define a Package? Include package statement as the first statement in a java sourcefile.& then create the methods defined by the interface. Syntax: import pkg1[.interface…]]{ //class body } access either public or not used.( class name| *). 2.or entire packages in to visibility.catch. Return type method-name2(parameter list). 120)How to import packages? Java includes the import statements to bring certain classes .
. //… Return type method-nameN(parameter list). pkg2 name of the subordinate package inside the outer package separated by a dot. Syntax: package pkg.

finally{ //block of code to be executed before try block ends. 125)Mention some of the methods defined by Thread class? Method Meaning getName Obtain a thread’s name getPriority Obtain a thread’s priority isAlive Determine if a thread is still running join wait for a thread to terminate run Entry point for the thread sleep Suspend a thread for a period of time. The inline functions are defined as Inline function-header {
. • Polymorphism. Explain about inline function? An inline function is a function that is expanded in line when it is invoked. Each part of such a program is called a thread . • Dynamic binding. 126)What are the two ways for creating a Thread By implementing the runnable interface. Thus Multi threading is a specialized form of multitasking. • Classes. Class Newthread implements Runnable By Extending the Thread class Class Newthread extends Thread Sixteen Mark Questions 1. • Data abstraction and Encapsulation. and finally. • Inheritance. That is compiler replaces the function call with the corresponding function code. Syntax: try{ //block of code to monitor errors } catch(Expression type1 exob){ //exception handler for Exception type1 } catch(Expression type1 exob){ //exception handler for Exception type1 } //…. 2.throws. • Message passing. } 124)Define Multithreaded Programming? A Multithreaded program contains two or more parts that can run concurrently.What are the Features of Oop’s & how are they implemented in C++? • Objects.And each thread defines a separate path of execution.

The op is preceded by a keyword operator. Op-operator being overloaded. The general form is return type classname :: operator (op-arglist ) { function body } where return type is the type of value returned by specified operation. This is done by Operator function . Eg: An overloaded add ( ) function handles different data types as shown below. int c).function body } The situations where inline expansion may not work are • for functions returning values. // Declarations iv. //add function with 2 arguments of same type v. • The overloaded operator must have at least one operand that is of user defined data type. 10. or a goto exists • for functions not returning values . operator op is the function name. The rules for Operator overloading are • Only the existing operators can be overloaded. which describes the task. //add function with 2 arguments of different type //Function calls i. Operator functions are either member functions or friend functions. int b. Explain about Operator Overloading? C++ has the ability to provide the operators with a special meaning for a data type. 4.*) • Scope resolution operator (::) • Size operator ( size of ) • Conditional operator (?:) The purpose of using operator function is to define an additional task to an operator. The operators that cannot be overloaded are. if loop. double add( int p. • Class member access operator (. 5). This mechanism of giving such special meanings to an operator is known as Operator overloading. . int add( int a. . 4. //add function with 3 arguments of same type vi. we must specify what it means in relation to the class to which the operator is applied. 4). add (3. double q).
. add (3 .0). ii. iii. int add( int a. Explain Function Overloading? Function overloading means we can use the same function name to create functions that perform a variety of different tasks. add (3 . a switch. int b). It provides a flexible option for the creation of new definitions for C++ operators.if a return statement exists • if function contain static variables • if inline functions are recursive 3.

overloaded operator can be invoked as Operator op (x). Basic to class type conversion Conversion from basic data type to class type can be done in destination class. The operator can be invoked using member functions as follows In case of Unary operators. • Overloaded operators follow the syntax rules of the original operators. Conversion from class type to basic type. Using constructors does it. Also the left hand side operand must be an object of the relevant class. it takes one explicit argument. 5. operator op(y) where op is the overloaded operator and y is the argument. The general form of overloaded casting operator is operator type name ( ) { ………. • Assignment operator = • Function call operator ( ) • Subscripting operator [ ] • Class member access operator → 6. ii. Conversion from basic type to class type. Explain about Type conversions? The three types of data conversion are i. Constructor takes a single argument whose type is to be converted. it would be invoked as Object . They cannot be overridden.. it takes one reference argument (object of the relevant class) When binary operators are overloaded using friend function. Explain overloading Unary & Binary operator? When unary operators are overloaded using member functions it takes no explicit arguments and return no explicit values. • It must not specify a return type. A casting operator is a function that satisfies the following conditions • It must be a class member.
. i. overloaded operator can be invoked as Operator op (x. y) The operators that cannot be overloaded using Friend function. Conversion from one class type to another class type. overloaded operator can be invoked as op object_name or object_name op In case of binary operators. The overloaded operator can be invoked using Friend function as In case of unary operators. iii. When unary operators are overloaded using friend function. • It must not have any arguments. // function statements } It is also known as conversion function.• The basic meaning of the operator should not be changed. it takes two explicit arguments. When binary operators are overloaded using member functions. In case of binary operators.

We can add additional features to an existing class without modifying it by deriving a new class from it. conversion from class to basic type conversion can be done. } This function converts a vector to the corresponding scalar magnitude. Constructor will be called automatically while creating objects so that this conversion is done automatically.I<size. 7. Time ( int t) //constructor { hours= t/60 .
. The class Y type data is converted into class X type data and the converted value is assigned to the obj X. Using Type Casting operator. One class to another class conversion with an example. But D cannot access private members of B. Here constructor is used in destination class and casting operator function is used in source class. Eg: Base class Derived class Here class A is the base class from which the class D is derived. Here class Y is the source class and class X is the destination class. public: …………. Basic type conversion with an example. iii. It is done in the source class itself.mins. Explain inheritance? Inheritance is the process by which objects of one class acquire the properties of another class. i.Eg: Converting int type to class type class time { int hrs. Class D is the public derivation of class B hence it inherits all the public members of B. Eg: vector : : operator double( ) { double sum=0. It supports the concept of hierarchical classification. for(int I=0. return sqrt ( sum ) . //t in minutes mins =t % 60. Conversion from one class type to another is the combination of class to basic and basic to class type conversion. single inheritance If a single class is derived from a single base class is called single inheritance. } }. It provides the idea of reusability.I++) sum=sum+v[ i ] *u[ i ] . ii. Eg: objX = objY objX is the object of class X and objY is an object of class Y.

Hybrid inheritance It is the combination of one or more types of inheritance. iii. Hierarchical inheritance If a number of classes are derived from a single base class then it is called hierarchical inheritance. Eg : Hierarchical classification of students in University
A B
A C B
Student Arts Engineering M e d i c a l CSE ECE Civil iv. Define constructor A constructor is a special member function whose task is to initialize the objects of its class. This process can be extended to any number of levels. The constructor is invoked whenever an object of its associated class is created.ii.//constructor ……… }
. which in turn is derived from another class. is called multilevel inheritance. Eg: Base classes Derived class Here class C is derived from two base classes A & B. It is special because its name is same as class name. multiple inheritance If a class is derived from more than one base class.Multilevel inheritance If a class is derived from a class. The class result will have both the multilevel and multiple inheritances. Multilevel inheritance Multiple inheritance 8. Eg: Base class Grand father Intermediate Base class Father Derived class Child v. it is called multiple inheritance. It is called constructor because it constructs the values of data members of the class Eg: Class integer { …… public: integer( ).

} void main( ) { string name1(“Louis”).n. v.0) assign real=6.h> class integer { int m. Explain about Multiple constructors (constructor overloading)? The class that has different types of constructor is called multiple constructors Eg: #include<iostream. 9. It takes a reference to an object of the same class as an argument Eg: integer i2(i1). int length. public: integer( ) //default constructor { m=0.0) assign real=2. } use delete to free that memory. would define the object i2 at the same time initialize it to the values of i1. Copy constructor A copy constructor is used to declare and initialize an object from another object.3 and imag=9.n=0.0 and imag=0 the statement complex a(2.h> #include<conio.9. The memory is allocated with the help of the NEW operator Eg: Class string { char *name.The default value of the argument imag is 0 The statement complex a(6.
. The process of initializing through a copy constructor is known as copy initialization.3.name3(Lagrange). public: string( ) { length=0. name=new char[length +1]. Another form of this statement is Eg: integer i2=i1.0 iv.Dynamic constructor Allocation of memory to objects at time of their construction is known as dynamic constructor.

n=i. and they cannot return values • They cannot be inherited.m. They cannot be static members and they are accessed by using object pointers Virtual function in a base class must be defined. } void main() { integer i1. Explain virtual functions A function qualified by the ‘virtual’ keyword is called virtual function. Prototypes of base class version of a virtual function and all the derived class versions must be identical. The rules for virtual functions are Virtual functions must be member of some class. //invokes default constructor integer i2(45. The “do-nothing” function is defined as follows: virtual void display ( ) =0. 11. it need not be redefined in the derived class. When a virtual function is called through a pointer. not even void and therefore. In such cases.int b) //parameterized constructor { m=a. Explain the features of Java? • Compiled and Interpreted
. though a derived class can call the base class • They can have default arguments • Constructors cannot be virtual function 10. class of the object pointed to determine which function definition will be used.n. If a virtual function is defined in the base class.} integer(int a. Pure virtual functions A pure virtual function is a function declared in a base class that has no definition relative to the base class. It is also known as “donothing” function. A class containing pure virtual functions cannot be used to declare any object of its own.//invokes parameterized constructor integer i3(i2). n=b. //invokes copy constructor } The special characteristics of constructor are • They should be declared in the public section • They are invoked automatically when the objects are created • They do not have return types. the compiler requires each derived class to either define the function or redeclare it as a pure virtual function. } integer(&i) //copy constructor { m=i.67).

java • Compiling the program The program is compiled using the statement and it will create a class file named sample.class. What are the features of simple Java program? • Class declaration • Opening brace • Main Line • Output line Eg: class sample // Class declaration { // Opening brace public static void main(String args[]) // Main Line { System. Javac sample. 28.out. // Output line } }
.out. } } Save the program as sample.} } 26. How will you implement a Java program? • Creating the Java program class sample { public static void main(String args[]) { System.java • Running the program Java sample This statement will execute the program and display the output.println(“Hello”).println(“Hello”).{ return(length *width). Explain the various Java tokens? • Java character set • Keywords • Identifiers • Literals • Operators • Separators 27.