PHP
1. What are the differences between GET and POST methods in form submitting, give the case where we can use get and we can use post methods? |
On the server side, the main difference between GET and POST is where the submitted is stored. The $_GET array stores data submitted by the GET method. The $_POST array stores data submitted by the POST method. |
On the browser side, the difference is that data submitted by the GET method will be displayed in the browser’s address field. Data submitted by the POST method will not be displayed anywhere on the browser. |
GET method is mostly used for submitting a small amount and less sensitive data. POST method is mostly used for submitting a large amount or sensitive data. |
2. Who is the father of php and explain the changes in php versions? |
Rasmus Lerdorf for version changes go to http://php.net/ Marco Tabini is the founder and publisher ofphp|architect. |
3. How can we submit from without a submit button? |
We can use a simple JavaScript code linked to an event trigger of any form field. In the JavaScript code, we can call the document.form.submit() function to submit the form. For example: |
4. How many ways we can retrieve the date in result set of mysql Using php? |
As individual objects so single record or as a set or arrays. |
5. What is the difference between mysql_fetch_object and mysql_fetch_array? |
MySQL fetch object will collect first single matching record where mysql_fetch_array will collect all matching records from the table in an array. |
6. What is the difference between $message and $$message? |
They are both variables. But $message is a variable with a fixed name. $$message is a variable who’s name is stored in $message. For example, if $message contains "var", $$message is the same as $var. |
7. How can we extract string ‘abc.com ‘ from a string ‘http://info@a…’ using regular _expression of php? |
We can use the preg_match() function with "/.*@(.*)$/" as the regular expression pattern. For example:preg_match("/.*@(.*)$/","http://info@abc.com",$data); echo $data[1]; |
8. How can we create a database using php and mysql? |
PHP: mysql_create_db() |
Mysql: create database; |
9. What are the differences between require and include, include_once? |
File will not be included more than once. If we want to include a file once only and further calling of the file will be ignored then we have to use the PHP function include_once(). This will prevent problems with function redefinitions, variable value reassignments, etc. |
10. Can we use include ("abc.php") two times in a php page "makeit.php"? |
Yes we can include.. |
11. What are the different tables present in mysql, which type of table is generated when we are creating a table in the following |
syntax: create table employee(eno int(2),ename varchar(10)) ? |
Total 5 types of tables we can create |
1. MyISAM |
2. Heap |
3. Merge |
4. InnoDB |
5. ISAM |
6. BDB |
MyISAM is the default storage engine as of MySQL 3.23. |
12. Functions in IMAP, POP3 AND LDAP? |
Please visit: |
http://fi2.php.net/imap |
http://uk2.php.net/ldap |
13. How can I execute a php script using command line? |
Just run the PHP CLI (Command Line Interface) program and provide the PHP script file name as the command line argument. For example, "php myScript.php", assuming "php" is the command to invoke the CLI program. |
Be aware that if your PHP script was written for the Web CGI interface, it may not execute properly in command line environment. |
14. Suppose your ZEND engine supports the mode Then how can u configure your php ZEND engine to support mode ? |
If you change the line: short_open_tag = off in php.ini file. Then your php ZEND engine support only mode. |
15. Shopping cart online validation i.e. how can we configure the paypals? |
16. What is meant by nl2br()? |
nl2br — Inserts HTML line breaks before all newlines in a string string nl2br (string); Returns string with ”inserted before all newlines. For example: echo nl2br("god bless\n you") will output "god bless \n you" to your browser. |
17. Draw the architecture of ZEND engine? |
18. What are the current versions of apache, php, and mysql? |
PHP: php5.1.2 |
MySQL: MySQL 5.1 |
Apache: Apache 2.1 |
19. What are the reasons for selecting lamp (Linux, apache, mysql, php) instead of combination of other software programs, servers and operating systems? |
All of those are open source resource. Security of linux is very very more than windows. Apache is a better server that IIS both in functionality and security. Mysql is world most popular open source database. Php ismore faster that asp or any other scripting language. |
20. How can we encrypt and decrypt a data present in a mysql table using mysql? |
AES_ENCRYPT () and AES_DECRYPT () |
21. How can we encrypt the username and password using php? |
You can encrypt a password with the following Mysql>SET PASSWORD=PASSWORD("Password"); |
We can encode data using base64_encode($string) and can decode using base64_decode($string); |
22. How many ways I can redirect a php page? |
Here are the possible ways of php page redirection. |
Using Java script: |
'; echo 'window.location.href="'.$filename.'";'; echo ''; echo ''; echo ''; echo ''; } } redirect('http://maosjb.com'); ?> |
Using php function: |
Header("Location:http://maosjb.com "); |
23. List out different arguments in php header function? |
void header ( string string [, bool replace [, int http_response_code]]) |
24. What type of headers have to add in the mail function in which file a attached? |
$boundary = '—–=' . md5( uniqid ( rand() ) ); |
$headers = "From: \"Me\"\n"; |
$headers .= "MIME-Version: 1.0\n"; |
$headers .= "Content-Type: multipart/mixed; boundary=\"$boundary\""; |
25. What are the differences between public, private, protected, static, transient, final and volatile? |
element Class Interface |
Data field Method Constructor |
modifier top level nested top level nested |
(outer) (inner) (outer) (inner) |
final yes yes no yes yes no no |
private yes yes yes no yes no yes |
protected yes yes yes no yes no yes |
public yes yes yes yes yes yes yes |
static yes yes no no yes no yes |
transient yes no no no no no no |
volatile yes no no no no no no |
26. What are the different types of errors in php? |
Three are three types of errors: |
1. Notices: These are trivial, non-critical errors that PHP encounters while executing a script - for example, accessing a variable that has not yet been defined. By default, such errors are not displayed to the user at all - although, as you will see, you can change this default behaviour. |
2. Warnings: These are more serious errors - for example, attempting to include() a file which does not exist. By default, these errors are displayed to the user, but they do not result in script termination. |
3. Fatal errors: These are critical errors - for example, instantiating an object of a non-existent class, or calling a non-existent function. These errors cause the immediate termination of the script, and PHP's defaultbehaviour is to display them to the user when they take place. |
27. What is the functionality of the function strstr and stristr? |
strstr() returns part of a given string from the first occurrence of a given substring to the end of the string. For example: strstr("user@example.com","@") will return "@example.com". |
stristr() is idential to strstr() except that it is case insensitive. |
28. What are the differences between PHP 3 and PHP 4 and PHP 5? |
Go read the release notes at http://php.net. |
29. How can we convert asp pages to php pages? |
You can download asp2php front-end application from the site http://asp2php.naken.cc. |
30. What is the functionality of the function htmlentities? Answer: htmlentities — Convert all applicable characters to HTML entities |
This function is identical to htmlspecialchars() in all ways, except with htmlentities(), all characters which have HTML character entity equivalents are translated into these entities. |
31. How can we get second of the current time using date function? |
$second = date("s"); |
32. How can we convert the time zones using php? |
33. What is meant by urlencode and urldocode? |
urlencode() returns the URL encoded version of the given string. URL coding converts special characters into % signs followed by two hex digits. For example: urlencode("10.00%") will return "10%2E00%25?. URL encoded strings are safe to be used as part of URLs. |
urldecode() returns the URL decoded version of the given string. |
34. What is the difference between the functions unlink and unset? |
unlink() deletes the given file from the file system. |
unset() makes a variable undefined. |
35. How can we register the variables into a session? |
We can use the session_register ($ur_session_var) function. |
36. How can we get the properties (size, type, width, height) of an image using php image functions? |
To know the Image type use exif_imagetype () function |
To know the Image size use getimagesize () function |
To know the image width use imagesx () function |
To know the image height use imagesy() function |
37. How can we get the browser properties using php? |
38. What is the maximum size of a file that can be uploaded using php and how can we change this? |
You can change maximum size of a file set upload_max_filesize variable in php.ini file |
39. How can we increase the execution time of a php script? |
Set max_execution_time variable in php.ini file to your desired time in second. |
40. How can we take a backup of a mysql table and how can we restore it.? |
Answer: Create a full backup of your database: shell> mysqldump –tab=/path/to/some/dir –opt db_name Or: shell> mysqlhotcopy db_name /path/to/some/dir |
The full backup file is just a set of SQL statements, so restoring it is very easy: |
shell> mysql "."Executed"; |
mysql_close($link2); |
53. List out the predefined classes in php? |
Directory |
stdClass |
__PHP_Incomplete_Class |
exception |
php_user_filter |
54. How can I make a script that can be bilanguage (supports Eglish, German)? |
You can change charset variable in above line in the script to support bilanguage. |
Java
What is the difference between procedural and object-oriented programs?- a) In procedural program, programming logic follows certain procedures and the instructions are executed one after another. In OOP program, unit of program is object, which is nothing but combination of data and code. b) In procedural program, data is exposed to the whole program whereas in OOPs program, it is accessible with in the object and which in turn assures the security of the code. |
What is the difference between Assignment and Initialization?- Assignment can be done as many times as desired whereas initialization can be done only once. |
What is the difference between constructor and method?- Constructor will be automatically invoked when an object is created whereas method has to be called explicitly. |
What is the difference between an argument and a parameter?- While defining method, variables passed in the method are called parameters. While using those methods, values passed to those variables are called arguments. |
What is the difference between overloading and overriding?- a) In overloading, there is a relationship between methods available in the same class whereas in overriding, there is relationship between a superclass method and subclass method. b) Overloading does not block inheritance from the superclass whereas overriding blocks inheritance from the superclass. c) In overloading, separate methods share the same name whereas in overriding, subclass method replaces the superclass. d) Overloading must have different method signatures whereas overriding must have same signature. |
www.prepareinterview.com |
What is the difference between this() and super()?- this() can be used to invoke a constructor of the same class whereas super() can be used to invoke a super class constructor. |
What is the difference between superclass and subclass?- A super class is a class that is inherited whereas sub class is a class that does the inheriting. |
What is the difference between String and String Buffer?- a) String objects are constants and immutable whereas StringBuffer objects are not. b) String class supports constant strings whereas StringBuffer class supports growable and modifiable strings. |
What is the difference between Array and vector?- Array is a set of related data type and static whereas vector is a growable array of objects and dynamic. |
What is the difference between exception and error?- The exception class defines mild error conditions that your program encounters. Exceptions can occur when trying to open the file, which does not exist, the network connection is disrupted, operands being manipulated are out of prescribed ranges, the class file you are interested in loading is missing. The error class defines serious error conditions that you should not attempt to recover from. In most cases it is advisable to let the program terminate when such an error is encountered. |
What is the difference between process and thread?- Process is a program in execution whereas thread is a separate path of execution in a program. |
What is the difference between abstract class and interface?- a) All the methods declared inside an interface are abstract whereas abstract class must have at least one abstract method and others may be concrete or abstract. b) In abstract class, key word abstract must be used for the methods whereas interface we need not use that keyword for the methods. c) Abstract class must have subclasses whereas interface can’t have subclasses. |
What is the difference between Integer and int?- a) Integer is a class defined in the java. lang package, whereas int is a primitive data type defined in the Java language itself. Java does not automatically convert from one to the other. b) Integer can be used as an argument for a method that requires an object, whereas int can be used for calculations. |
What is the difference between choice and list?- A Choice is displayed in a compact form that requires you to pull it down to see the list of available choices and only one item may be selected from a choice. A List may be displayed in such a way that several list items are visible and it supports the selection of one or more list items. |
What is the difference between scrollbar and scrollpane?- A Scrollbar is a Component, but not a Container whereas Scrollpane is a Conatiner and handles its own events and perform its own scrolling. |
What is the difference between applications and applets?- a)Application must be run on local machine whereas applet needs no explicit installation on local machine. b)Application must be run explicitly within a java-compatible virtual machine whereas applet loads and runs itself automatically in a java-enabled browser. d)Application starts execution with its main method whereas applet starts execution with its init method. e)Application can run with or without graphical user interface whereas applet must run within a graphical user interface. |
What is the difference between set and list?- Set stores elements in an unordered way but does not contain duplicate elements, whereas list stores elements in an ordered way but may contain duplicate elements. |
What is the difference between an applet and a servlet?- a) Servlets are to servers what applets are to browsers. b) Applets must have graphical user interfaces whereas servlets have no graphical user interfaces. |
What is the difference between doPost and doGet methods?- a) doGet() method is used to get information, while doPost() method is used for posting information. b) doGet() requests can’t send large amount of information and is limited to 240-255 characters. However, doPost()requests passes all of its data, of unlimited length. c) A doGet() request is appended to the request URL in a query string and this allows the exchange is visible to the client, whereas a doPost() request passes directly over the socket connection as part of its HTTP request body and the exchange are invisible to the client. |
What is the difference between TCP/IP and UDP?- TCP/IP is a two-way communication between the client and the server and it is a reliable and there is a confirmation regarding reaching the message to the destination. It is like a phone call. UDP is a one-way communication only between the client and the server and it is not a reliable and there is no confirmation regarding reaching the message to the destination. It is like a postal mail. |
Sap
1 What is SAP? |
SAP is the name of the company founded in 1972 under the German name (Systems, Applications, and Products in Data Processing) is the leading ERP (Enterprise Resource Planning) software package. |
2 What is ERP? |
ERP(Enterprises Resource Planning) is a package with the techniques and concepts for the integrated management of business as a whole, for effective use of management resources, to improve the efficiency of an enterprise. Initially, ERP was targeted for manufacturing industry mainly for planning and managing core business like production and financial market. As the growth and merits of ERP package ERP software is designed for basic process of a company from manufacturing to small shops with a target of integrating information across the company. |
3 Different types of ERP? |
SAP, BAAN, JD Edwards, Oracle Financials, Siebel, PeopleSoft. Among all the ERP’s most of the companies implemented or trying to implement SAP because of number of advantages aver other ERP packages. |
4 Explain the concept of “Business Content” in SAP Business Information Warehouse? |
Business Content is a pre-configured set of role and task-relevant information models based on consistent Metadata in the SAP Business Information Warehouse. Business Content provides selected roles within a company with the information they need to carry out their tasks. These information models essentially contain roles, workbooks, queries, InfoSources, InfoCubes, key figures, characteristics, update rules and extractors for SAP R/3, mySAP.com Business Applications and other selected applications. |
5 Why do you usually choose to implement SAP? |
There are number of technical reasons numbers of companies are planning to implement SAP. It’s highly configurable, highly secure data handling, min data redundancy, max data consistency, you can capitalize on economics of sales like purchasing, tight integration-cross function. |
6 Can BW run without a SAP R/3 implementation? |
Certainly. You can run BW without R/3 implementation. You can use pre-defined business content in BW using your non-SAP data. Here you simply need to map the transfer structures associated with BW data sources (InfoCubes, ODS tables) to the inbound data files or use 3rd part tool to connect your flat files and other data sources and load data in BW. Several third party ETL products such as Acta, Infomatica, DataStage and others will have been certified to load data in BW. |
7 What is IDES? |
International Demonstration and Education System. A sample application provided for faster learning and implementation. |
8 What is the Business Work Flow of IDES? |
Business Work Flow: Tool for automatic control and execution of cross-application processes. This involves coordinating the persons involved, the work steps required, the data, which needs to be processed (business objects). The main advantage is reduction in throughput times and the costs involved in managing business processes. Transparency and quality are enhanced by its use. |
9 What is SAP R/3? |
A third generation set of highly integrated software modules that performs common business function based on multinational leading practice. Takes care of any enterprise however diverse in operation, spread over the world. In R/3 system all the three servers like presentation, application server and database server are located at different system. |
10 What are presentation, application and database servers in SAP R/3? |
The application layer of an R/3 System is made up of the application servers and the message server. Application programs in an R/3 System are run on application servers. The application servers communicate with the presentation components, the database, and also with each other, using the message server. All the data are stored in a centralized server. This server is called database server. |
11 What should be the approach for writing a BDC program? |
Convert the legacy system data to a flat file and convert flat file into internal table. Transfer the flat file into sap system called “sap data transfer”. Call transaction(Write the program explicitly) or create sessions (sessions are created and processed ,if success data will transfer). |
12 Explain open SQL vs native SQL? |
ABAP Native SQL allows you to include database-specific SQL statements in an ABAP program. Most ABAP programs containing database-specific SQL statements do not run with different databases. If different databases are involved, use Open SQL. To execute ABAP Native SQL in an ABAP program, use the statement EXEC. Open SQL (Subset of standard SQL statements), allows you to access all database tables available in the R/3 System, regardless of the manufacturer. To avoid conflicts between database tables and to keep ABAP programs independent from the database system used, SAP has generated its own set of SQL statements known as Open SQL. |
13 What are datasets? |
The sequential files (processed on application server) are called datasets. They are used for file handling in SAP. |
14 What are internal tables check table, value table, and transparent table? |
Internal table: It is a standard data type object, which exists only during the runtime of the program. Check table: Check table will be at field level checking. Value table: Value table will be at domain level checking ex: scarr table is check table for carrid. Transparent table: - Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. |
15 What are the major benefits of reporting with BW over R/3? Would it be sufficient just to Web-enable R/3 Reports? |
Performance — Heavy reporting along with regular OLTP transactions can produce a lot of load both on the R/3 and the database (cpu, memory, disks, etc). Just take a look at the load put on your system during a month end, quarter end, or year-end — now imagine that occurring even more frequently. Data analysis — BW uses a Data Warehouse and OLAP concepts for storing and analyzing data, where R/3 was designed for transaction processing. With a lot of work you can get the same analysis out of R/3 but most likely would be easier from a BW. |
16 How can an ERP such as SAP help a business owner learn more about how business operates? |
In order to use an ERP system, a business person must understand the business processes and how they work together from one functional area to the other. This knowledge gives the student a much deeper understanding of how a business operates. Using SAP as a tool to learn about ERP systems will require that the people understand the business processes and how they integrate. |
17 What is the difference between OLAP and Data Mining? |
OLAP - On line Analytical processing is a reporting tool configured to understand your database schema ,composition facts and dimensions . By simple point-n-clicking, a user can run any number of canned or user-designed reports without having to know anything of SQL or the schema. Because of that prior configuration, the OLAP engine “builds” and executes the appropriate SQL. Mining is to build the application to specifically look at detailed analyses, often algorithmic; even more often misappropriate called “reporting. |
18 What is “Extended Star Schema” and how did it emerge? |
The Star Schema consists of the Dimension Tables and the Fact Table. The Master Data related tables are kept in separate tables, which has reference to the characteristics in the dimension table(s). These separate tables for master data is termed as the Extended Star Schema. |
19 Define Meta data, Master data and Transaction data |
Meta Data: Data that describes the structure of data or MetaObjects is called Metadata. In other words data about data is known as Meta Data. Master Data: Master data is data that remains unchanged over a long period of time. It contains information that is always needed in the same way. Characteristics can bear master data in BW. With master data you are dealing with attributes, texts or hierarchies. Transaction data: Data relating to the day-to-day transactions is the Transaction data. |
20 Name some drawbacks of SAP |
Interfaces are huge problem, Determine where master data resides, Expensive, very complex, demands highly trained staff, lengthy implementation time. |
C++
1. What is virtual constructors/destructors?Virtual destructors: If an object (with a non-virtual destructor) is destroyed explicitly by applying the delete operator to a base-class pointer to the object, the base-class destructor function (matching the pointer type) is called on the object.
There is a simple solution to this problem – declare a virtual base-class destructor. This makes all derived-class destructors virtual even though they don’t have the same name as the base-class destructor. Now, if the object in the hierarchy is destroyed explicitly by applying the delete operator to a base-class pointer to a derived-class object, the destructor for the appropriate class is called.
Virtual constructor: Constructors cannot be virtual. Declaring a constructor as a virtual function is a syntax error. Does c++ support multilevel and multiple inheritance?
Yes.
2. Why Garbage collection?
Since C++ does not provide automatic garbage collection like some other languages, smart pointers can be used for that purpose. The simplest garbage collection scheme is reference counting or reference linking, but it is quite possible to implement more sophisticated garbage collection schemes with smart pointers.
3. How to write a swap( ) function which swaps the values of the variables using bitwise operators.?
Ans: Here is the swap( ) function.
swap ( int *x, int *y )
{
*x ^= *y ;
*y ^= *x ;
*x ^= *y ;
}
The swap( ) function uses the bitwise XOR operator and does not require any temporary variable for swapping.
4. What are the advantages of inheritance?• It permits code reusability.
• Reusability saves time in program development.
• It encourages the reuse of proven and debugged high-quality software, thus reducing problem
after a system becomes functional.
5. What is the difference between declaration and definition?The declaration tells the compiler that at some later point we plan to present the definition of this declaration.
E.g.: void stars () //function declaration
The definition contains the actual implementation.
E.g.: void stars () // declarator
{
for(int j=10; j>=0; j--) //function body
cout<<”*”; cout<>
function_declaration;
The only difference between both prototypes is the use of keyword class or typename, its use is
indistinct since both expressions have exactly the same meaning and behave exactly the same way.
6. What do you mean by inline function?The idea behind inline functions is to insert the code of a called function at the point where the
function is called. If done carefully, this can improve the application's
performance in exchange for increased compile time and possibly (but not always) an increase in the size of the generated binary executables.
7. What is virtual class and friend class?Friend classes are used when two or more classes are designed to work together and need access
to each other's implementation in ways that the rest of the world
shouldn't be allowed to have. In other words, they help keep private things private. For instance, it may be desirable for class DatabaseCursor to have more privilege to the internals of class Database than main() has.
8. What is function overloading and operator overloading?Student Resources Function overloading: C++ enables several functions of the same name to be defined, as long as these functions have different sets of parameters (at least as far as their types are concerned). This capability is called function overloading. When an overloaded function is called, the C++ compiler selects the proper function by examining the number, types and order of the arguments in the call.
Function overloading is commonly used to create several functions of the same name that perform similar tasks but on different data types.
Operator overloading allows existing C++ operators to be redefined so that they work on objects
of user-defined classes. Overloaded operators are syntactic sugar for
equivalent function calls. They form a pleasant facade that doesn't add anything fundamental to the language (but they can improve understandability and reduce
maintenance costs).
9. Difference between realloc() and free()?The free subroutine frees a block of memory previously allocated by the malloc subroutine.
Undefined results occur if the Pointer parameter is not a valid pointer. If the Pointer parameter is a null value, no action will occur. The realloc subroutine changes the size of the block of memory pointed to by the Pointer parameter to the number of bytes specified by the Size parameter and returns a new pointer to the block. The pointer specified by the Pointer parameter must have been created with the malloc, calloc, or realloc subroutines and not been deallocated with the free or realloc subroutines. Undefined results occur if the Pointer parameter is not a valid pointer
10. What do you mean by binding of data and functions?Encapsulation.
11. What is abstraction?Abstraction is of the process of hiding unwanted details from the user.
12. What is encapsulation?Packaging an object’s variables within its methods is called encapsulation.
13. What is the difference between an object and a class?Classes and objects are separate but related concepts. Every object belongs to a class and every
class contains one or more related objects.
Ø A Class is static. All of the attributes of a class are fixed before, during, and after the execution of a program. The attributes of a class don't change.
Ø The class to which an object belongs is also (usually) static. If a particular object belongs to a
certain class at the time that it is created then it almost certainly will still belong to that class right up until the time that it is destroyed.
Ø An Object on the other hand has a limited lifespan. Objects are created and eventually destroyed. Also during that lifetime, the attributes of the object may undergo significant change.
14. What is polymorphism? Explain with an example?"Poly" means "many" and "morph" means "form". Polymorphism is the ability of an object (or
reference) to assume (be replaced by) or become many different forms of
object.
Example: function overloading, function overriding, virtual functions. Another example can be a plus ‘+’ sign, used for adding two integers or for using it to concatenate two strings.
15. What do you mean by inheritance?Inheritance is the process of creating new classes, called derived classes, from existing classes or
base classes. The derived class inherits all the capabilities of the base class, but can add
embellishments and refinements of its own.
16. What is a scope resolution operator?A scope resolution operator (::), can be used to define the member functions of a class outside the class.
17. What are virtual functions?A virtual function allows derived classes to replace the implementation provided by the base class. The compiler makes sure the replacement is always called whenever
the object in question is actually of the derived class, even if the object is accessed by a base pointer rather than a derived pointer. This allows algorithms in the base class to be replaced in the derived class, even if users don't know about the derived class.
18. What is friend function?As the name suggests, the function acts as a friend to a class. As a friend of a class, it can access its private and protected members. A friend function is not a member of
the class. But it must be listed in the class definition.
19. What is the difference between class and structure?Structure: Initially (in C) a structure was used to bundle different type of data types together to
perform a particular functionality. But C++ extended the structure to contain functions also. The
major difference is that all declarations inside a structure are by default public.
Class: Class is a successor of Structure. By default all the members inside the class are private.
20. What is public, protected, private?Ø Public, protected and private are three access specifiers in C++.
Ø Public data members and member functions are accessible outside the class.
Ø Protected data members and member functions are only available to derived classes.
Ø Private data members and member functions can’t be accessed outside the class.
However there is an exception can be using friend classes.
21. What is an object?Object is a software bundle of variables and related methods. Objects have state and behavior.
22. What is a class?Class is a user-defined data type in C++. It can be created to solve a particular kind of problem.
After creation the user need not know the specifics of the working of a class.
Q. When linking C or Assembly language modules with C++ modules I get undefined symbol errors at link time. It appears that none of the C or Assembly public symbols can be found.
A. C++ is a strongly typed language. In order to support the language to its fullest, Turbo C++ must attach information to the symbols generated for function names and variables. When this is done, the symbol will no longer match the standard C style function name. In order to link correctly, the compiler must be notified that the symbol is declared in an external module without type information tacked on to the symbol. This is done by prototyping the function as type extern "C". Here is a quick example: extern "C" int normal_c_func( float, int, char ); // name not altered void cplusplus_function( int ); // name altered See related comments under Linker Errors and in the Paradox Engine question in this section.
Q. Classes with static data members are getting linker errors ("undefined").
A. This code is built into Turbo C++ 1.0 but not in version 3.0. In the 1.0 compiler, static members without definitions were given a default value of 0. This default definition will no longer be made in the compiler. The programmer must now give an explicit definition for each static member. Here is a quick example:
class A
{
static int i;
};
A linker error saying that A::i is not defined will result unless the source also contains a line such as:
int A::i = 1;
Q. What potential problems can arise from typecasting a base class pointer into a derived class pointer so that the derived class's member functions can be called?
A. Syntactically this is allowable. There is always the possibility of a base pointer actually pointing to a base class. If this is typecast to a derived type, the method being called may not exist in the base class. Therefore, you would be grabbing the address of a function that does not exist.
Q: What's the difference between the keywords STRUCT and CLASS?
A: The members of a STRUCT are PUBLIC by default, while in CLASS, they default to PRIVATE. They are otherwise functionally equivalent.
Q: I have declared a derived class from a base class, but I can't access any of the base class members with the derived class function.
A: Derived classes DO NOT get access to private members of a base class. In order to access members of a base class, the base class members must be declared as either public or protected. If they are public, then any portion of the program can access them. If they are protected, they are accessible by the class members, friends, and any derived classes.
Q: How can I use the Paradox Engine 1.0 with C++?,
A: Because the Paradox Engine functions are all compiled as C functions, you will have to assure that the names of the functions do not get "mangled" by the C++ compiler. To do this you need to prototype the Engine functions as extern "C". In the pxengine.h header file insert the following code at the lines indicated.
/* inserted at line # 268 */
#ifdef __cplusplus
extern "C" {
#endif
/* inserted at line # 732, just before the final #endif */
#ifdef __cplusplus
}
#endif
Paradox Engine version 2.0 is "aware" of C++ and thus does not require any modifications to its header file.
Q: I have a class that is derived from three base classes. Can I insure that one base class constructor will be called before all other constructors?
A: If you declare the base class as a virtual base class, its constructor will be called before any non-virtual base class constructors. Otherwise the constructors are called in left-to-right order on the declaration line for the class.
Q: Are the standard library I/O functions still available for use with the C++ iostreams library?
A: Yes, using
#include
functions such as printf() and scanf() will continue to be available. However, using them in conjunction with stream oriented functions can lead to unpredictable behaviour.
Q. In C++, given two variables of the same name, one local and one global, how do I access the global instance within the local scope?
A. Use the scope (::) operator.
int x = 10;
for(int x=0; x < ::x; x++)
{
cout << "Loop # " <<>
}
Q. Will the following two functions be overloaded by the compiler, or will the compiler flag it as an error? Why?
void test( int x, double y); & int test( int a, double b);
A. The compiler will flag this as a redeclaration error because neither return types nor argument names are considered when determining unique signatures for overloading functions. Only number and type of arguments are considered.
Q. If I pass a character to a function which only accepts an int, what will the compiler do? Will it flag it as an error?
A. No. The compiler will promote the char to an int and use the integer representation in the function instead of the character itself.
Q. I was trying to allocate an array of function pointers using the new operator but I keep getting declaration syntax errors using the following
syntax: new int(*[10])(); What's wrong?
A. The new operator is a unary operator and binds first to the int keyword producing the following: (new int) (*[10])();
You need to put parentheses around the expression to produce the expected results: new (int (*[10]());
Q. What are inline functions? What are their advantages? How are they declared?
A. An inline function is a function which gets textually inserted by the compiler, much like macros. The advantage is that execution time is shortened because linker overhead is minimized. They are declared by using the inline keyword when the function is declared:
inline void func(void) { cout << "printing inline function \n"; }
or by including the function declaration and code body within a class:
class test
{
tv public:
void func(void) { cout << "inline function within a class.\n"}
};
Q. If I don't specify either public or private sections in a class, what is the default?
A. In a class, all members are private by default if neither public nor private sections are declared.
Q. What does the _seg modifier do?
A. Using _seg causes a pointer to become a storage place for a segment value, rather than an offset ( or a segment/offset ). For instance, if "int _seg *x" contains the value 0x40, then when you use "*x", the value pointed to will be at segment 0x40, offset 0. If you add a value to the pointer, the value is multiplied by the size of the pointer type. That new value is used as an offset, and is combined with the segment value contained in the pointer. For instance,
int _seg *x;
int value;
x = (int _seg *)0x40;
value = *(x + 20);
value is assigned the value of the integer at 0x40:0x28
(Remember, 20 * sizeof(int) = 40 = 0x28).
Q. Can I statically allocate more than 64K of data in a single module?
A. Yes. Far data items are now supported:
...
char far array1[60000L];
char far array2[60000L];
...
For arrays larger than 64k use:
char huge array3[100000L];
Q. What is a friend member function?
A. Declaring a friend gives non-members of a class access to the non-public members of a class.
Q. Why do I get a "Type name expected" error on my definition of a friend class in my new class?
A You need to let the compiler know that the label you use for your friend class is another class. If you do not want to define your entire class, you can simply have "class xxx", where xxx is your label.
Q: How can I output hex values in upper case using the iostream libraries?
A: You need to set the state of the stream using setf(). For example,
#include
int main(void)
{
cout <<>
cout << "\nNot upper-case : " <<>
cout.setf(ios::upper-case);
cout << "\nUppercase : " <<>
return 0;
}
Q. What is the "this" pointer?
A. "this" is a local variable in the body of a non-static member function. It is a pointer to the object for which the function was invoked. It cannot be used outside of a class member function body.
Q. Why does a binary member function only accept a single argument?
A. The first argument is defined implicitly.
Q. Looking through the class libraries there are definitions in classes which look like:
class test {
int funct( void ) const;
};
What is the const keyword doing here?
A. There is a pointer to the object for which a function is called known as the 'this' pointer. By default the type of 'this' is X *const ( a constant pointer). The const keyword changes the type to const X *const ( a constant pointer to constant data ).
Q: I want to use _new_handler and set_new_handler.
A: Turbo C++ supports _new_handler and set_new_handler. The type of _new_handler is as follows.
typedef void (*vfp)(void);
vfp _new_handler;
vfp set_new_handler( vfp );
Q: I would like to use C++ fstreams on a file opened in binary mode, how is this done?
A: Use ios::binary as the open mode for the file:
#include
ifstream binfile;
binfile.open("myfile.bin", ios::binary);
Q: How can I get at the DOS file handle associated with my iostream?
A: Using a combination of member functions fd() and rdbuf() you can get at the file handle.
#include
#define fstrno(s) (((s).rdbuf())->fd())
ifstream test("test.txt");
cout << "handle is " <<>
There is a simple solution to this problem – declare a virtual base-class destructor. This makes all derived-class destructors virtual even though they don’t have the same name as the base-class destructor. Now, if the object in the hierarchy is destroyed explicitly by applying the delete operator to a base-class pointer to a derived-class object, the destructor for the appropriate class is called.
Virtual constructor: Constructors cannot be virtual. Declaring a constructor as a virtual function is a syntax error. Does c++ support multilevel and multiple inheritance?
Yes.
2. Why Garbage collection?
Since C++ does not provide automatic garbage collection like some other languages, smart pointers can be used for that purpose. The simplest garbage collection scheme is reference counting or reference linking, but it is quite possible to implement more sophisticated garbage collection schemes with smart pointers.
3. How to write a swap( ) function which swaps the values of the variables using bitwise operators.?
Ans: Here is the swap( ) function.
swap ( int *x, int *y )
{
*x ^= *y ;
*y ^= *x ;
*x ^= *y ;
}
The swap( ) function uses the bitwise XOR operator and does not require any temporary variable for swapping.
4. What are the advantages of inheritance?• It permits code reusability.
• Reusability saves time in program development.
• It encourages the reuse of proven and debugged high-quality software, thus reducing problem
after a system becomes functional.
5. What is the difference between declaration and definition?The declaration tells the compiler that at some later point we plan to present the definition of this declaration.
E.g.: void stars () //function declaration
The definition contains the actual implementation.
E.g.: void stars () // declarator
{
for(int j=10; j>=0; j--) //function body
cout<<”*”; cout<>
function_declaration;
The only difference between both prototypes is the use of keyword class or typename, its use is
indistinct since both expressions have exactly the same meaning and behave exactly the same way.
6. What do you mean by inline function?The idea behind inline functions is to insert the code of a called function at the point where the
function is called. If done carefully, this can improve the application's
performance in exchange for increased compile time and possibly (but not always) an increase in the size of the generated binary executables.
7. What is virtual class and friend class?Friend classes are used when two or more classes are designed to work together and need access
to each other's implementation in ways that the rest of the world
shouldn't be allowed to have. In other words, they help keep private things private. For instance, it may be desirable for class DatabaseCursor to have more privilege to the internals of class Database than main() has.
8. What is function overloading and operator overloading?Student Resources Function overloading: C++ enables several functions of the same name to be defined, as long as these functions have different sets of parameters (at least as far as their types are concerned). This capability is called function overloading. When an overloaded function is called, the C++ compiler selects the proper function by examining the number, types and order of the arguments in the call.
Function overloading is commonly used to create several functions of the same name that perform similar tasks but on different data types.
Operator overloading allows existing C++ operators to be redefined so that they work on objects
of user-defined classes. Overloaded operators are syntactic sugar for
equivalent function calls. They form a pleasant facade that doesn't add anything fundamental to the language (but they can improve understandability and reduce
maintenance costs).
9. Difference between realloc() and free()?The free subroutine frees a block of memory previously allocated by the malloc subroutine.
Undefined results occur if the Pointer parameter is not a valid pointer. If the Pointer parameter is a null value, no action will occur. The realloc subroutine changes the size of the block of memory pointed to by the Pointer parameter to the number of bytes specified by the Size parameter and returns a new pointer to the block. The pointer specified by the Pointer parameter must have been created with the malloc, calloc, or realloc subroutines and not been deallocated with the free or realloc subroutines. Undefined results occur if the Pointer parameter is not a valid pointer
10. What do you mean by binding of data and functions?Encapsulation.
11. What is abstraction?Abstraction is of the process of hiding unwanted details from the user.
12. What is encapsulation?Packaging an object’s variables within its methods is called encapsulation.
13. What is the difference between an object and a class?Classes and objects are separate but related concepts. Every object belongs to a class and every
class contains one or more related objects.
Ø A Class is static. All of the attributes of a class are fixed before, during, and after the execution of a program. The attributes of a class don't change.
Ø The class to which an object belongs is also (usually) static. If a particular object belongs to a
certain class at the time that it is created then it almost certainly will still belong to that class right up until the time that it is destroyed.
Ø An Object on the other hand has a limited lifespan. Objects are created and eventually destroyed. Also during that lifetime, the attributes of the object may undergo significant change.
14. What is polymorphism? Explain with an example?"Poly" means "many" and "morph" means "form". Polymorphism is the ability of an object (or
reference) to assume (be replaced by) or become many different forms of
object.
Example: function overloading, function overriding, virtual functions. Another example can be a plus ‘+’ sign, used for adding two integers or for using it to concatenate two strings.
15. What do you mean by inheritance?Inheritance is the process of creating new classes, called derived classes, from existing classes or
base classes. The derived class inherits all the capabilities of the base class, but can add
embellishments and refinements of its own.
16. What is a scope resolution operator?A scope resolution operator (::), can be used to define the member functions of a class outside the class.
17. What are virtual functions?A virtual function allows derived classes to replace the implementation provided by the base class. The compiler makes sure the replacement is always called whenever
the object in question is actually of the derived class, even if the object is accessed by a base pointer rather than a derived pointer. This allows algorithms in the base class to be replaced in the derived class, even if users don't know about the derived class.
18. What is friend function?As the name suggests, the function acts as a friend to a class. As a friend of a class, it can access its private and protected members. A friend function is not a member of
the class. But it must be listed in the class definition.
19. What is the difference between class and structure?Structure: Initially (in C) a structure was used to bundle different type of data types together to
perform a particular functionality. But C++ extended the structure to contain functions also. The
major difference is that all declarations inside a structure are by default public.
Class: Class is a successor of Structure. By default all the members inside the class are private.
20. What is public, protected, private?Ø Public, protected and private are three access specifiers in C++.
Ø Public data members and member functions are accessible outside the class.
Ø Protected data members and member functions are only available to derived classes.
Ø Private data members and member functions can’t be accessed outside the class.
However there is an exception can be using friend classes.
21. What is an object?Object is a software bundle of variables and related methods. Objects have state and behavior.
22. What is a class?Class is a user-defined data type in C++. It can be created to solve a particular kind of problem.
After creation the user need not know the specifics of the working of a class.
Q. When linking C or Assembly language modules with C++ modules I get undefined symbol errors at link time. It appears that none of the C or Assembly public symbols can be found.
A. C++ is a strongly typed language. In order to support the language to its fullest, Turbo C++ must attach information to the symbols generated for function names and variables. When this is done, the symbol will no longer match the standard C style function name. In order to link correctly, the compiler must be notified that the symbol is declared in an external module without type information tacked on to the symbol. This is done by prototyping the function as type extern "C". Here is a quick example: extern "C" int normal_c_func( float, int, char ); // name not altered void cplusplus_function( int ); // name altered See related comments under Linker Errors and in the Paradox Engine question in this section.
Q. Classes with static data members are getting linker errors ("undefined").
A. This code is built into Turbo C++ 1.0 but not in version 3.0. In the 1.0 compiler, static members without definitions were given a default value of 0. This default definition will no longer be made in the compiler. The programmer must now give an explicit definition for each static member. Here is a quick example:
class A
{
static int i;
};
A linker error saying that A::i is not defined will result unless the source also contains a line such as:
int A::i = 1;
Q. What potential problems can arise from typecasting a base class pointer into a derived class pointer so that the derived class's member functions can be called?
A. Syntactically this is allowable. There is always the possibility of a base pointer actually pointing to a base class. If this is typecast to a derived type, the method being called may not exist in the base class. Therefore, you would be grabbing the address of a function that does not exist.
Q: What's the difference between the keywords STRUCT and CLASS?
A: The members of a STRUCT are PUBLIC by default, while in CLASS, they default to PRIVATE. They are otherwise functionally equivalent.
Q: I have declared a derived class from a base class, but I can't access any of the base class members with the derived class function.
A: Derived classes DO NOT get access to private members of a base class. In order to access members of a base class, the base class members must be declared as either public or protected. If they are public, then any portion of the program can access them. If they are protected, they are accessible by the class members, friends, and any derived classes.
Q: How can I use the Paradox Engine 1.0 with C++?,
A: Because the Paradox Engine functions are all compiled as C functions, you will have to assure that the names of the functions do not get "mangled" by the C++ compiler. To do this you need to prototype the Engine functions as extern "C". In the pxengine.h header file insert the following code at the lines indicated.
/* inserted at line # 268 */
#ifdef __cplusplus
extern "C" {
#endif
/* inserted at line # 732, just before the final #endif */
#ifdef __cplusplus
}
#endif
Paradox Engine version 2.0 is "aware" of C++ and thus does not require any modifications to its header file.
Q: I have a class that is derived from three base classes. Can I insure that one base class constructor will be called before all other constructors?
A: If you declare the base class as a virtual base class, its constructor will be called before any non-virtual base class constructors. Otherwise the constructors are called in left-to-right order on the declaration line for the class.
Q: Are the standard library I/O functions still available for use with the C++ iostreams library?
A: Yes, using
#include
functions such as printf() and scanf() will continue to be available. However, using them in conjunction with stream oriented functions can lead to unpredictable behaviour.
Q. In C++, given two variables of the same name, one local and one global, how do I access the global instance within the local scope?
A. Use the scope (::) operator.
int x = 10;
for(int x=0; x < ::x; x++)
{
cout << "Loop # " <<>
}
Q. Will the following two functions be overloaded by the compiler, or will the compiler flag it as an error? Why?
void test( int x, double y); & int test( int a, double b);
A. The compiler will flag this as a redeclaration error because neither return types nor argument names are considered when determining unique signatures for overloading functions. Only number and type of arguments are considered.
Q. If I pass a character to a function which only accepts an int, what will the compiler do? Will it flag it as an error?
A. No. The compiler will promote the char to an int and use the integer representation in the function instead of the character itself.
Q. I was trying to allocate an array of function pointers using the new operator but I keep getting declaration syntax errors using the following
syntax: new int(*[10])(); What's wrong?
A. The new operator is a unary operator and binds first to the int keyword producing the following: (new int) (*[10])();
You need to put parentheses around the expression to produce the expected results: new (int (*[10]());
Q. What are inline functions? What are their advantages? How are they declared?
A. An inline function is a function which gets textually inserted by the compiler, much like macros. The advantage is that execution time is shortened because linker overhead is minimized. They are declared by using the inline keyword when the function is declared:
inline void func(void) { cout << "printing inline function \n"; }
or by including the function declaration and code body within a class:
class test
{
tv public:
void func(void) { cout << "inline function within a class.\n"}
};
Q. If I don't specify either public or private sections in a class, what is the default?
A. In a class, all members are private by default if neither public nor private sections are declared.
Q. What does the _seg modifier do?
A. Using _seg causes a pointer to become a storage place for a segment value, rather than an offset ( or a segment/offset ). For instance, if "int _seg *x" contains the value 0x40, then when you use "*x", the value pointed to will be at segment 0x40, offset 0. If you add a value to the pointer, the value is multiplied by the size of the pointer type. That new value is used as an offset, and is combined with the segment value contained in the pointer. For instance,
int _seg *x;
int value;
x = (int _seg *)0x40;
value = *(x + 20);
value is assigned the value of the integer at 0x40:0x28
(Remember, 20 * sizeof(int) = 40 = 0x28).
Q. Can I statically allocate more than 64K of data in a single module?
A. Yes. Far data items are now supported:
...
char far array1[60000L];
char far array2[60000L];
...
For arrays larger than 64k use:
char huge array3[100000L];
Q. What is a friend member function?
A. Declaring a friend gives non-members of a class access to the non-public members of a class.
Q. Why do I get a "Type name expected" error on my definition of a friend class in my new class?
A You need to let the compiler know that the label you use for your friend class is another class. If you do not want to define your entire class, you can simply have "class xxx", where xxx is your label.
Q: How can I output hex values in upper case using the iostream libraries?
A: You need to set the state of the stream using setf(). For example,
#include
int main(void)
{
cout <<>
cout << "\nNot upper-case : " <<>
cout.setf(ios::upper-case);
cout << "\nUppercase : " <<>
return 0;
}
Q. What is the "this" pointer?
A. "this" is a local variable in the body of a non-static member function. It is a pointer to the object for which the function was invoked. It cannot be used outside of a class member function body.
Q. Why does a binary member function only accept a single argument?
A. The first argument is defined implicitly.
Q. Looking through the class libraries there are definitions in classes which look like:
class test {
int funct( void ) const;
};
What is the const keyword doing here?
A. There is a pointer to the object for which a function is called known as the 'this' pointer. By default the type of 'this' is X *const ( a constant pointer). The const keyword changes the type to const X *const ( a constant pointer to constant data ).
Q: I want to use _new_handler and set_new_handler.
A: Turbo C++ supports _new_handler and set_new_handler. The type of _new_handler is as follows.
typedef void (*vfp)(void);
vfp _new_handler;
vfp set_new_handler( vfp );
Q: I would like to use C++ fstreams on a file opened in binary mode, how is this done?
A: Use ios::binary as the open mode for the file:
#include
ifstream binfile;
binfile.open("myfile.bin", ios::binary);
Q: How can I get at the DOS file handle associated with my iostream?
A: Using a combination of member functions fd() and rdbuf() you can get at the file handle.
#include
#define fstrno(s) (((s).rdbuf())->fd())
ifstream test("test.txt");
cout << "handle is " <<>
OOPS
1. What is the difference between procedural and object-oriented programs?- a) In procedural program, programming logic follows certain procedures and the instructions are executed one after another. In OOP program, unit of program is object, which is nothing but combination of data and code. b) In procedural program, data is exposed to the whole program whereas in OOPs program, it is accessible with in the object and which in turn assures the security of the code.
2. What are Encapsulation, Inheritance and Polymorphism?- Encapsulation is the mechanism that binds together code and data it manipulates and keeps both safe from outside interference and misuse. Inheritance is the process by which one object acquires the properties of another object. Polymorphism is the feature that allows one interface to be used for general class actions.
3. What is the difference between Assignment and Initialization?- Assignment can be done as many times as desired whereas initialization can be done only once.
4. What is OOPs?- Object oriented programming organizes a program around its data, i. e. , objects and a set of well defined interfaces to that data. An object-oriented program can be characterized as data controlling access to code.
5. What are Class, Constructor and Primitive data types?- Class is a template for multiple objects with similar features and it is a blue print for objects. It defines a type of object according to the data the object can hold and the operations the object can perform. Constructor is a special kind of method that determines how an object is initialized when created. Primitive data types are 8 types and they are: byte, short, int, long, float, double, boolean, char.
6. What is an Object and how do you allocate memory to it?- Object is an instance of a class and it is a software unit that combines a structured set of data with a set of operations for inspecting and manipulating that data. When an object is created using new operator, memory is allocated to it.
7. What is the difference between constructor and method?- Constructor will be automatically invoked when an object is created whereas method has to be called explicitly.
8. What are methods and how are they defined?- Methods are functions that operate on instances of classes in which they are defined. Objects can communicate with each other using methods and can call methods in other classes. Method definition has four parts. They are name of the method, type of object or primitive type the method returns, a list of parameters and the body of the method. A method’s signature is a combination of the first three parts mentioned above.
9. How many ways can an argument be passed to a subroutine and explain them?- An argument can be passed in two ways. They are passing by value and passing by reference. Passing by value: This method copies the value of an argument into the formal parameter of the subroutine. Passing by reference: In this method, a reference to an argument (not the value of the argument) is passed to the parameter.
10. What is the difference between an argument and a parameter?- While defining method, variables passed in the method are called parameters. While using those methods, values passed to those variables are called arguments.
11. What are different types of access modifiers?- public: Any thing declared as public can be accessed from anywhere. private: Any thing declared as private can’t be seen outside of its class. protected: Any thing declared as protected can be accessed by classes in the same package and subclasses in the other packages. default modifier : Can be accessed only to classes in the same package.
12. What are Transient and Volatile Modifiers?- Transient: The transient modifier applies to variables only and it is not stored as part of its object’s Persistent state. Transient variables are not serialized. Volatile: Volatile modifier applies to variables only and it tells the compiler that the variable modified by volatile can be changed unexpectedly by other parts of the program.
13. What is method overloading and method overriding?- Method overloading: When a method in a class having the same method name with different arguments is said to be method overloading. Method overriding : When a method in a class having the same method name with same arguments is said to be method overriding.
14. What is difference between overloading and overriding?- a) In overloading, there is a relationship between methods available in the same class whereas in overriding, there is relationship between a superclass method and subclass method. b) Overloading does not block inheritance from the superclass whereas overriding blocks inheritance from the superclass. c) In overloading, separate methods share the same name whereas in overriding, subclass method replaces the superclass. d) Overloading must have different method signatures whereas overriding must have same signature.
15. What is meant by Inheritance and what are its advantages?- Inheritance is the process of inheriting all the features from a class. The advantages of inheritance are reusability of code and accessibility of variables and methods of the super class by subclasses.
16. What is the difference between this() and super()?- this() can be used to invoke a constructor of the same class whereas super() can be used to invoke a super class constructor.
17. What is the difference between superclass and subclass?- A super class is a class that is inherited whereas sub class is a class that does the inheriting.
18. What modifiers may be used with top-level class?- public, abstract and final can be used for top-level class.
19. What are inner class and anonymous class?- Inner class : classes defined in other classes, including those defined in methods are called inner classes. An inner class can have any accessibility including private. Anonymous class : Anonymous class is a class defined inside a method without a name and is instantiated and declared in the same place and cannot have explicit constructors.
20. What is interface and its use?- Interface is similar to a class which may contain method’s signature only but not bodies and it is a formal set of method and constant declarations that must be defined by the class that implements it. Interfaces are useful for: a)Declaring methods that one or more classes are expected to implement b)Capturing similarities between unrelated classes without forcing a class relationship. c)Determining an object’s programming interface without revealing the actual body of the class.
21. What is an abstract class?- An abstract class is a class designed with implementation gaps for subclasses to fill in and is deliberately incomplete.
22. What is the difference between abstract class and interface?- a) All the methods declared inside an interface are abstract whereas abstract class must have at least one abstract method and others may be concrete or abstract. b) In abstract class, key word abstract must be used for the methods whereas interface we need not use that keyword for the methods. c) Abstract class must have subclasses whereas interface can’t have subclasses.
23. Can you have an inner class inside a method and what variables can you access?- Yes, we can have an inner class inside a method and final variables can be accessed.
24. What is the difference between Array and vector?- Array is a set of related data type and static whereas vector is a growable array of objects and dynamic.
25. What is the difference between exception and error?- The exception class defines mild error conditions that your program encounters. Exceptions can occur when trying to open the file, which does not exist, the network connection is disrupted, operands being manipulated are out of prescribed ranges, the class file you are interested in loading is missing. The error class defines serious error conditions that you should not attempt to recover from. In most cases it is advisable to let the program terminate when such an error is encountered.
26. What is the difference between process and thread?- Process is a program in execution whereas thread is a separate path of execution in a program.
27. What is multithreading and what are the methods for inter-thread communication and what is the class in which these methods are defined?- Multithreading is the mechanism in which more than one thread run independent of each other within the process. wait (), notify () and notifyAll() methods can be used for inter-thread communication and these methods are in Object class. wait() : When a thread executes a call to wait() method, it surrenders the object lock and enters into a waiting state. notify() or notifyAll() : To remove a thread from the waiting state, some other thread must make a call to notify() or notifyAll() method on the same object.
ASP.NET
Life cycle of an ASP .NET page.
Stage Events/Method
Page Initialization Page_Init
View State Loading LoadViewState
Postback data processin LoadPostData
Page Loading Page_Load
PostBack Change Notification RaisePostDataChangedEvent
PostBack Event Handling RaisePostBackEvent
Page Pre Rendering Phase Page_PreRender
View State Saving SaveViewState
Page Rendering Page_Render
Page Unloading Page_UnLoad
Page Initialization Page_Init
View State Loading LoadViewState
Postback data processin LoadPostData
Page Loading Page_Load
PostBack Change Notification RaisePostDataChangedEvent
PostBack Event Handling RaisePostBackEvent
Page Pre Rendering Phase Page_PreRender
View State Saving SaveViewState
Page Rendering Page_Render
Page Unloading Page_UnLoad
1) Explain the .NET architecture.
a) All .Net supported Languages
b) Common Language specification
c) Windows forms / web pages
d) ADO.Net / web services
e) Base class library
f) Common language runtime
g) Operating system.
a) All .Net supported Languages
b) Common Language specification
c) Windows forms / web pages
d) ADO.Net / web services
e) Base class library
f) Common language runtime
g) Operating system.
2) How does u create multiple inheritances in c# and .net?
Multiple inheritances are created by using interfaces.
Multiple inheritances are created by using interfaces.
3) When web.config is called ?
Web.config is an xml configuration file.this never gets called directly unless we need to retrieve the configuration setting.
Web.config is an xml configuration file.this never gets called directly unless we need to retrieve the configuration setting.
4) How many weg.configs a application can have
one.
one.
5) How does u set language in weg.config
a) set the ‘defaultlanguage’ attribute.
a) set the ‘defaultlanguage’ attribute.
6) What does connection string consists of
a) connection string consist of : server name, userid , password , database name.
a) connection string consist of : server name, userid , password , database name.
7) Where do u store connection string
a) connection string can stored in web.config file under configuration / connection string tab.
a) connection string can stored in web.config file under configuration / connection string tab.
8) What is abstract class?
Abstract class is a class which cannot be instantiated but inherited by derived classes. This class contains abstract as well as non-abstract methods and members.
Abstract class is a class which cannot be instantiated but inherited by derived classes. This class contains abstract as well as non-abstract methods and members.
9) What is diff b/w interface inheritance and class inheritance
A class can have multiple interface inheritance, but only one.
In interface inheritance : Inherited class must implement all the methods define in that interface. Class inheritance : inherited class may or may not implement all methods of that base class.
A class can have multiple interface inheritance, but only one.
In interface inheritance : Inherited class must implement all the methods define in that interface. Class inheritance : inherited class may or may not implement all methods of that base class.
10) What are the collection classes?
1) Array list
2) Hash table
3) stack
4) Dictionary
5) Queue
1) Array list
2) Hash table
3) stack
4) Dictionary
5) Queue
12) What inheritance support vb.net?
a) Single class inheritance and multiple interface inheritance.
a) Single class inheritance and multiple interface inheritance.
13) What is runtime host?
a) Runtime host is local environment where CLR is running.
a) Runtime host is local environment where CLR is running.
14) OOPS CONCEPTS
1) Encapsulation : Hiding internal implementation of the objects and provide global interface access to object.
2) Inheritance : The ability of a class to reuse the members and member functions of its base class.
3) Polymorphism : The ability of the objects to be represented in multiple forms. This is possible with overriding and overloading.
4) Abstraction : Describing an object with its unique and relevant characteristics according to specific need.
1) Encapsulation : Hiding internal implementation of the objects and provide global interface access to object.
2) Inheritance : The ability of a class to reuse the members and member functions of its base class.
3) Polymorphism : The ability of the objects to be represented in multiple forms. This is possible with overriding and overloading.
4) Abstraction : Describing an object with its unique and relevant characteristics according to specific need.
Object-Oriented concepts?
Class: The formal definition of an object. The class acts as the template from which an instance of an object is created at run time. The class defines the properties of the object and the methods used to control the object’s behaviour.
Class: The formal definition of an object. The class acts as the template from which an instance of an object is created at run time. The class defines the properties of the object and the methods used to control the object’s behaviour.
Object: An object is an instance of a class.
Encapsulation: hides detailed internal specification of an object, and publishes only its external interfaces. Thus, users of an object only need to adhere to these interfaces. By encapsulation, the internal data and methods of an object can be changed without changing the way of how to use the object.
Inheritance: A class that derives from another class - known as the base class - inherits the same methods and properties. This promotes reuse and maintainability.
Abstraction: the describing of objects by defining their unique and relevant characteristics (properties). Whilst an object may have 100s of properties normally only those properties of importance to the situation are described. (eg life policies premiums are normally important; whereas the time of day a policy was purchased is not usually of value).
Polymorphism: Allows objects to be represented in multiple forms. Even though classes are derived or inherited from the same parent class, each derived class will have its own behavior. (Overriding and hiding methods)
15) optimization technique description
1) Avoid unnecessary use of view state which lowers the performance.
2) Avoid the round trips to server.
3) Use connection pooling.
4) Use stored procedures.
1) Avoid unnecessary use of view state which lowers the performance.
2) Avoid the round trips to server.
3) Use connection pooling.
4) Use stored procedures.
16) Diff b/w application and session
a) Application object maintains state on application basis whereas session object maintain the state of the client visited to the application.
a) Application object maintains state on application basis whereas session object maintain the state of the client visited to the application.
17) What is web application virtual directory?
a) Virtual directory is a physical location where actually application folder is situated.
a) Virtual directory is a physical location where actually application folder is situated.
18) Diff b/w Active.exe and Dll
1) Exe has an entry point.
2) If Dll is getting destroyed, exe also destroyed.
1) Exe has an entry point.
2) If Dll is getting destroyed, exe also destroyed.
20) If cookies are disabled in client browser will session work
a) No. Identities of client gets destroy.
a) No. Identities of client gets destroy.
23) The following code executes successfully
response. Write (“value of i=â€+i) ;
a) Yes.
response. Write (“value of i=â€+i) ;
a) Yes.
25) What are a Process, Session and Cookie?
1) Process : Is a running thread of application.
2) Session : state used to maintain user state in application.
3) cookie : used to store user identification data on client machine.
1) Process : Is a running thread of application.
2) Session : state used to maintain user state in application.
3) cookie : used to store user identification data on client machine.
29) How is Polymorphism supports in .net?
Polymorphism supports to objects to be represent in different forms..
Polymorphism supports to objects to be represent in different forms..
30) What r the 2 types of polymorphism support in .net?
Overriding and overloading
Overriding and overloading
35) ASP.NET OBJECTS?
Request, Response, Server, Session, application,
Request, Response, Server, Session, application,
38) What is side by side execution
Asynchronous execution in which application keeps on running instead of waiting for the result of previous stage execution.
Asynchronous execution in which application keeps on running instead of waiting for the result of previous stage execution.
39) What serialization?
Serialization is a process of conversion an objects into stream of bytes so that they can transfer through the channels.
Serialization is a process of conversion an objects into stream of bytes so that they can transfer through the channels.
40) About a class access specifiers and method access specifiers
1) Public : available throughout application.
2) Private : available for class and its inherited class.
3) Protected : restricted to that class only.
4) Internal : available throughout that assembly.
1) Public : available throughout application.
2) Private : available for class and its inherited class.
3) Protected : restricted to that class only.
4) Internal : available throughout that assembly.
41) What diff b/w overloading and overriding? How can this be .net
Overriding : derived classes follow the same base class method signatures.
Overloading : Derived classes may have different method signature with different parameters.
42) About virtual function and then use
Virtual function is that which is get override by the derived class to implement polymorphism.
Overriding : derived classes follow the same base class method signatures.
Overloading : Derived classes may have different method signature with different parameters.
42) About virtual function and then use
Virtual function is that which is get override by the derived class to implement polymorphism.
How do u implement inheritance in .net?
In c# : we use :
In c# : we use :
44)if I want to override a method 1 of class A and this class B then how do u declared
answer :
public virtual void method1(){ } ..In class A. public override void method1(){}…………..In class B.
answer :
public virtual void method1(){ } ..In class A. public override void method1(){}…………..In class B.
45) About friend and protected friend
Friend / internal : provides access throughout that particular assembly.
Protected friend : provides access for that particular class and to its child classes.
Friend / internal : provides access throughout that particular assembly.
Protected friend : provides access for that particular class and to its child classes.
46) About multiple and multilevel Inheritance how to a chive in .net?
Multiple Inheritance: ex. Public void Employee : Persons, Iemployee. Means a class can be inherited by more than one interface OR inherited by one class and
more than one interfaces.
Multi level inheritance: ex. Public void Person () {}, Public void Customer : person {} , Public void employee : customer{}.
Multiple Inheritance: ex. Public void Employee : Persons, Iemployee. Means a class can be inherited by more than one interface OR inherited by one class and
more than one interfaces.
Multi level inheritance: ex. Public void Person () {}, Public void Customer : person {} , Public void employee : customer{}.
50) What is isPostback property?
Is postback is a property of page to check weather the page is loaded first time or in response to the client callback.
Is postback is a property of page to check weather the page is loaded first time or in response to the client callback.
Java
|
ORACLE
1. What is Log Switch? - The point at which ORACLE ends writing to one online redo log file and begins writing to another is called a log switch.
2. What is On-line Redo Log? - The On-line Redo Log is a set of tow or more on-line redo files that record all committed changes made to the database. Whenever a transaction is committed, the corresponding redo entries temporarily stores in redo log buffers of the SGA are written to an on-line redo log file by the background process LGWR. The on-line redo log files are used in cyclical fashion.
3. Which parameter specified in the DEFAULT STORAGE clause of CREATE TABLESPACE cannot be altered after creating the tablespace? - All the default storage parameters defined for thetablespace can be changed using the ALTER TABLESPACE command. When objects are created their INITIAL and MINEXTENS values cannot be changed.
4. What are the steps involved in Database Startup? - Start an instance, Mount the Database and Open the Database.
5. What are the steps involved in Instance Recovery? - Rolling forward to recover data that has not been recorded in data files, yet has been recorded in the on-line redo log, including the contents of rollback segments. Rolling back transactions that have been explicitly rolled back or have not been committed as indicated by the rollback segments regenerated in step a. Releasing any resources (locks) held by transactions in process at the time of the failure. Resolving any pending distributed transactions undergoing a two-phase commit at the time of the instance failure.
6. Can Full Backup be performed when the database is open? - No.
7. What are the different modes of mounting a Database with the Parallel Server? - Exclusive Mode If the first instance that mounts a database does so in exclusive mode, only that Instance can mount the database. Parallel Mode If the first instance that mounts a database is started in parallel mode, other instances that are started in parallel mode can also mount the database.
8. What are the advantages of operating a database in ARCHIVELOG mode over operating it in NO ARCHIVELOG mode? - Complete database recovery from disk failure is possible only in ARCHIVELOG mode. Online database backup is possible only in ARCHIVELOG mode.
9. What are the steps involved in Database Shutdown? - Close the Database, Dismount the Database and Shutdown the Instance.
10. What is Archived Redo Log? - Archived Redo Log consists of Redo Log files that have archived before being reused.
11. What is Restricted Mode of Instance Startup? - An instance can be started in (or later altered to be in) restricted mode so that when the database is open connections are limited only to those whose user accounts have been granted the RESTRICTED SESSION system privilege.
12. What is Partial Backup? - A Partial Backup is any operating system backup short of a full backup, taken while the database is open or shut down.
13. What is Mirrored on-line Redo Log? - A mirrored on-line redo log consists of copies of on-line redo log files physically located on separate disks, changes made to one member of the group are made to all members.
14. What is Full Backup? - A full backup is an operating system backup of all data files, on- line redo log files and control file that constitute ORACLE database and the parameter.
15. Can a View based on another View? - Yes.
16. Can a Tablespace hold objects from different Schemes? - Yes.
17. Can objects of the same Schema reside in different tablespaces? - Yes.
18. What is the use of Control File? - When an instance of an ORACLE database is started, its control file is used to identify the database and redo log files that must be opened for database operation to proceed. It is also used in database recovery.
19. Do View contain Data? - Views do not contain or store data.
20. What are the Referential actions supported by FOREIGN KEY integrity constraint? - UPDATE and DELETE Restrict - A referential integrity rule that disallows the update or deletion of referenced data. DELETE Cascade - When a referenced row is deleted all associated dependent rows are deleted.
21. What are the type of Synonyms? - There are two types of Synonyms Private and Public
22. What is a Redo Log? - The set of Redo Log files YSDATE,UID,USER or USERENV SQL functions, or the pseudo columns LEVEL or ROWNUM.
23. What is an Index Segment? - Each Index has an Index segment that stores all of its data.
24. Explain the relationship among Database, Tablespace and Data file.? - Each databases logically divided into one or more tablespaces one or more data files are explicitly created for each tablespace
25. What are the different type of Segments? - Data Segment, Index Segment, Rollback Segment and Temporary Segment.
26. What are Clusters? - Clusters are groups of one or more tables physically stores together to share common columns and are often used together.
27. What is an Integrity Constrains? - An integrity constraint is a declarative way to define a business rule for a column of a table.
28. What is an Index? - An Index is an optional structure associated with a table to have direct access to rows, which can be created to increase the performance of data retrieval. Index can be created on one or more columns of a table.
29. What is an Extent? - An Extent is a specific number of contiguous data blocks, obtained in a single allocation, and used to store a specific type of information.
30. What is a View? - A view is a virtual table. Every view has a Query attached to it. (The Query is a SELECT statement that identifies the columns and rows of the table(s) the view uses.)
31. What is Table? - A table is the basic unit of data storage in an ORACLE database. The tables of a database hold all of the user accessible data. Table data is stored in rows and columns.
32. What is a Synonym? - A synonym is an alias for a table, view, sequence or program unit.
33. What is a Sequence? - A sequence generates a serial list of unique numbers for numerical columns of a database’s tables.
34. What is a Segment? - A segment is a set of extents allocated for a certain logical structure.
35. What is schema? - A schema is collection of database objects of a User.
36. Describe Referential Integrity? - A rule defined on a column (or set of columns) in one table that allows the insert or update of a row only if the value for the column or set of columns (the dependent value) matches a value in a column of a related table (the referenced value). It also specifies the type of data manipulation allowed on referenced data and the action to be performed on dependent data as a result of any action on referenced data.
37. What is Hash Cluster? - A row is stored in a hash cluster based on the result of applying a hash function to the row’s cluster key value. All rows with the same hash key value are stores together on disk.
38. What is a Private Synonyms? - A Private Synonyms can be accessed only by the owner.
39. What is Database Link? - A database link is a named object that describes a “path” from one database to another.
40. What is a Tablespace? - A database is divided into Logical Storage Unit called tablespaces. Atablespace is used to grouped related logical structures together
41. What is Rollback Segment? - A Database contains one or more Rollback Segments to temporarily store “undo” information.
42. What are the Characteristics of Data Files? - A data file can be associated with only one database. Once created a data file can’t change size. One or more data files form a logical unit of database storage called a tablespace.
43. How to define Data Block size? - A data block size is specified for each ORACLE database when the database is created. A database users and allocated free database space in ORACLE datablocks. Block size is specified in INIT.ORA file and can’t be changed latter.
44. What does a Control file Contain? - A Control file records the physical structure of the database. It contains the following information. Database Name Names and locations of a database’s files and redologfiles. Time stamp of database creation.
45. What is difference between UNIQUE constraint and PRIMARY KEY constraint? - A column defined as UNIQUE can contain Nulls while a column defined as PRIMARY KEY can’t contain Nulls. 47.What is Index Cluster? - A Cluster with an index on the Cluster Key 48.When does a Transaction end? - When it is committed or Rollbacked.
46. What is the effect of setting the value “ALL_ROWS” for OPTIMIZER_GOAL parameter of the ALTER SESSION command? - What are the factors that affect OPTIMIZER in choosing an Optimization approach? - Answer The OPTIMIZER_MODE initialization parameter Statistics in the Data Dictionary the OPTIMIZER_GOAL parameter of the ALTER SESSION command hints in the statement.
47. What is the effect of setting the value “CHOOSE” for OPTIMIZER_GOAL, parameter of the ALTER SESSION Command? - The Optimizer chooses Cost_based approach and optimizes with the goal of best throughput if statistics for atleast one of the tables accessed by the SQL statement exist in the data dictionary. Otherwise the OPTIMIZER chooses RULE_based approach.
48. What is the function of Optimizer? - The goal of the optimizer is to choose the most efficient way to execute a SQL statement.
49. What is Execution Plan? - The combinations of the steps the optimizer chooses to execute a statement is called an execution plan.
50. What are the different approaches used by Optimizer in choosing an execution plan? - Rule-based and Cost-based.
0 comments:
Post a Comment