Play and learn 300 000+ tabs online

Saturday, January 23, 2010

OOPs Part-1

1)What is OOPs?
Ans: 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.
2)what is the difference between Procedural and OOPs?
Ans: a) In procedural program, programming logic follows certain procedures and the instructions are executed one after another. In OOPs 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.
3)What are Encapsulation, Inheritance and Polymorphism?
Ans: 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 general class actions.
4)What is the difference between Assignment and Initialization?
Ans: Assignment can be done as many times as desired whereas initialization can be done only once.
5)What are Class, Constructor and Primitive data types?
Ans: 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?
Ans: 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?  Ans: 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?
Ans: 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)What is the use of bin and lib in JDK?
Ans: Bin contains all tools such as javac, appletviewer, awt tool, etc., whereas lib contains API and all packages.
10)What is casting?
Ans: Casting is used to convert the value of one type to another.
11)How many ways can an argument be passed to a subroutine and explain them?
Ans: 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.
12)What is the difference between an argument and a parameter?
Ans: While defining method, variables passed in the method are called parameters. While using those methods, values passed to those variables are called arguments.
13)What are different types of access modifiers?
Ans: 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.
14)What is final, finalize() and finally?
Ans: final : final keyword can be used for class, method and variables.A final class cannot be subclassed and it prevents other programmers from subclassing a secure class to invoke insecure methods.A final method can’ t be overriddenA final variable can’t change from its initialized value.finalize( ) : finalize( ) method is used just before an object is destroyed and can be called just prior to garbage collecollection   finally : finally, a key word used in exception handling, creates a block of code that will be executed after a try/catch block has completed and before the code following the try/catch block. The finally block will execute whether or not an exception is thrown. this For example, if a method opens a file upon exit, then you will not want the code that closes the file to be bypassed by the exception-handling mechanism. This finally keyword is designed to address
contingency.      
15)What is UNICODE?
Ans: Unicode is used for internal representation of characters and strings and it uses 16 bits to represent each other.
16)What is Garbage Collection and how to call it explicitly?
Ans: When an object is no longer referred to by any variable, java automatically reclaims memory used by that object. This is known as garbage collection.System.gc() method may be used to call it explicitly.
17)What is  finalize() method ?
Ans: finalize () method is used just before an object is destroyed and can be called just prior to garbage collection.
18)What are Transient and Volatile Modifiers?
Ans: 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.
19)What is method overloading and method overriding?
Ans: 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.
20)What is difference between overloading and overriding?
Ans: 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.

21) What is meant by Inheritance and what are its advantages?
Ans: 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.
22)What is the difference between this() and super()?
Ans: this() can be used to invoke a constructor of the same class whereas super() can be used to invoke a super class constructor.
23)What is the difference between superclass and subclass?
Ans: A super class is a class that is inherited whereas sub class is a classthat does the inheriting.
24) What modifiers may be used with top-level class?
Ans: public, abstract and final can be used for top-level class.
25)What are inner class and anonymous class?
Ans: 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.
26)What is a package?
Ans: A package is a collection of classes and interfaces that provides a high-level layer of access protection and name space management.
27)    What is a reflection package? 
Ans: java.lang.reflect package has the ability to analyze itself in runtime.
28)    What is interface and its use?
Ans: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.
29)    What is an abstract class?
Ans: An abstract class is a class designed with implementation gaps for subclasses to fill in and is deliberately incomplete. 
30)    What is the difference between Integer and int?
Ans: 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.
31)    What is a cloneable interface and how many methods does it contain?
Ans- It is not having any method because it is a TAGGED or MARKER interface.
32)    What is the difference between abstract class and interface?
Ans: 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.

33)    Can you have an inner class inside a method and  what variables can you access?
Ans: Yes, we can have an inner class inside a method and final variables can be accessed.
34)    What is the difference between String and String Buffer?
Ans: a) String objects are constants and immutable whereasStringBuffer objects are not.
b) String class supports constant strings whereas StringBuffer class supports growable and modifiable strings.
35)    What is the difference between Array and vector?
Ans: Array is a set of related data type and static whereas vector is a growable array of objects and dynamic.
36)    What is the difference between exception and error?
Ans: The exception class defines mild error conditions that your program encounters.Ex: Arithmetic Exception, FilenotFound exception Exceptions can occur when try 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.
Ex: Running out of memory error, Stack overflow error.
45)    Are there any global variables in Java, which can be accessed by other part of your program?
Ans: No, it is not the main method in which you define variables. Global variables is not possible because concept of encapsulation is eliminated here.
63)    What are wrapper classes?
Ans: Wrapper classes are classes that allow primitive types to be accessed as objects.

11.What is the frontend in Java?.Also what is Backend?.
Frontend: Applet
Backend : Oracle, Ms-Access(Using JDBC).

21.Static binding occurs at
Compile Time
Runtime
Both at compile and runtime.
22.    Virtual Methods are default in
Java
C
C++ - Answer
All
6.    What are different types of Exceptions?.
Runtime exceptions, Errors, Program Exceptions

23.    Storage space in java is of the form
Stack
Queue
Heap
List

27.    What are AccessSpecifiers & Access Modifiers.
Access Specifiers: Give access previleges to outside applications or users. They are :-
Public: any one can access
private:only class members can access.cannot be inherited.
protected: can be accessed by a derived class.
default: can access data from the current directory.

Access Modifiers: Which gives additional meaning to data, methods and classes.
(i)    Final: cannot be modified at any point of time.

28.    Tools provided by JDK
(i)    javac - compiler
(ii)    java - interpretor
(iii)    jdb - debugger
(iv)    javap - Disassembles
(v)    appletviewer - Applets
(vi)    javadoc - documentation generator
(vii)    javah - ‘C’ header file generator


31.Compiling: Conversion of Programmer-readable Text into Bytecodes,which are platform independent,is known as Compiling.
32.Java Primitive Data Types:
Byte-8-bit
short-16-bit
int-32-bit
Long-64-bit
Float-32-bit floating point
Double-64-bit floating point
Char-16-bit Unicode

33.What is a unicode?Unicode is a standard that supports International Characters.
34. What are blocks?.
They are statements appearing within braces {}.

35. What are types of Java applications?.
(i) Standalone applications(No browser).
(ii) Applets(Browser).

36. What is the method that gets invoked first in a stand alone application?.
The main()method.
37. What is throwing an Exception?.
The act of passing an Exception Object to the runtime system is called Throwing an Exception.
38. What are the packages in JDK?.
There are 8 packages
(i) java.lang(ii)java.util(iii)java.io(iv)java.applet(v) java.awt
(vi) java.awt.image(vii)java.awt.peer(viii)java.awt.net

39. What is a thread?.
Its a single sequential stream of execution.

8. Is null a keyword?
The null value is not a keyword.
4. How are Observer and Observable used?
Objects that subclass the Observable class maintain a list of observers. When an Observable object is updated it invokes the update() method of each of its observers to notify the observers that it has changed state. The Observer interface is implemented by objects that observe Observable objects.
13. What is the Collections API?
The Collections API is a set of classes and interfaces that support operations on collections of objects.
14. Which characters may be used as the second character of an identifier,but not as the first character of an identifier?
The digits 0 through 9 may not be used as the first character of an identifier but they may be used after the first character of an identifier.
15. What is the List interface?
The List interface provides support for ordered collections of objects.
16. How does Java handle integer overflows and underflows?
It uses those low order bytes of the result that can fit into the size of the type allowed by the operation.
17. What is the Vector class?
The Vector class provides the capability to implement a growable array of
objects
18. What modifiers may be used with an inner class that is a member of an outerclass?
A (non-local) inner class may be declared as public, protected, private, static, final, or abstract.
19. What is an Iterator interface?
The Iterator interface is used to step through the elements of a Collection.
20. What is the difference between the >> and >>> operators?
The >> operator carries the sign bit when shifting right. The >>> zero-fills bits that have been shifted out.
22. How many bits are used to represent Unicode, ASCII, UTF-16, and UTF-8characters?
Unicode requires 16 bits and ASCII require 7 bits. Although the ASCII character set uses only 7 bits, it is usually represented as 8 bits. UTF-8 represents characters using 8, 16, and 18 bit patterns. UTF-16 uses 16-bit and larger bit patterns.
25. Is sizeof a keyword?
The sizeof operator is not a keyword
26. What are wrapped classes?
Wrapped classes are classes that allow primitive types to be accessed as objects.
27. Does garbage collection guarantee that a program will not run out ofmemory?
Garbage collection does not guarantee that a program will not run out ofmemory. It is possible for programs to use up memory resources faster than they are garbage collected. It is also possible for programs to create objects that are not subject to garbage collection
28. What restrictions are placed on the location of a package statement within a source code file?
A package statement must appear as the first line in a source code file (excluding blank lines and comments).
29. Can an object’s finalize() method be invoked while it is reachable?
An object’s finalize() method cannot be invoked by the garbage collector while the object is still reachable. However, an object’s finalize() method may be invoked by other objects.
36. What is a native method?
A native method is a method that is implemented in a language other than Java.
37. Can a for statement loop indefinitely?
Yes, a for statement can loop indefinitely. For example, consider the following: for(;;) ;
38. What are order of precedence and associativity, and how are they used?
Order of precedence determines the order in which operators are evaluated inexpressions. Associatity determines whether an expression is evaluatedleft-to-right or right-to-left
40. To what value is a variable of the String type automatically initialized?
The default value of an String type is null.
41. What is the catch or declare rule for method declarations?
If a checked exception may be thrown within the body of a method, the method must either catch the exception or declare it in its throws clause.
46. Can an anonymous class be declared as implementing an interface and extending a class?
An anonymous class may implement an interface or extend a superclass, but may not be declared to do both.
47. What is the range of the short type?
The range of the short type is -(2^15) to 2^15 - 1.
48. What is the range of the char type?
The range of the char type is 0 to 2^16 - 1.
51. What is the purpose of finalization?
The purpose of finalization is to give an unreachable object the opportunity to perform any cleanup processing before the object is garbage collected.
54. What is the difference between the Boolean & operator and the && operator?
If an expression involving the Boolean & operator is evaluated, both operands are evaluated. Then the & operator is applied to the operand. When an expression involving the && operator is evaluated, the first operand is evaluated. If the first operand returns a value of true then the second operand is evaluated. The && operator is then applied to the first and second operands.  If the first operand evaluates to false, the evaluation of the second operand is skipped.
58. What is the purpose of the Runtime class?
The purpose of the Runtime class is to provide access to the Java runtime system.
59. How many times may an object’s finalize() method be invoked by the garbage collector?
An object’s finalize() method may only be invoked once by the garbage collector.
60. What is the purpose of the finally clause of a try-catch-finally statement?
The finally clause is used to provide the capability to execute code no matter whether or not an exception is thrown or caught.
61. What is the argument type of a program’s main() method?
A program’s main() method takes an argument of the String[] type.
62. Which Java operator is right associative?
The = operator is right associative.
63. What is the Locale class?
The Locale class is used to tailor program output to the conventions of a particular geographic, political, or cultural region.
64. Can a double value be cast to a byte?
Yes, a double value can be cast to a byte.
65. What is the difference between a break statement and a continue statement?
A break statement results in the termination of the statement to which it applies (switch, for, do, or while). A continue statement is used to end the current loop iteration and return control to the loop statement.
66. What must a class do to implement an interface?
It must provide all of the methods in the interface and identify the interface in its implements clause.
71. How are commas used in the intialization and iteration  parts of a for statement?
Commas are used to separate multiple statements within the initialization and iteration parts of a for statement.
73. What is an abstract method?
An abstract method is a method whose implementation is deferred to a subclass.
74. How are Java source code files named?
A Java source code file takes the name of a public class or interface that isdefined within the file. A source code file may contain at most one public class or interface. If a public class or interface is defined within a source code file, then the source code file must take the name of the public class or interface. If no public class or interface is defined within a source code file, then the file must take on a name that is different than its classes and interfaces. Source code files use the .java extension.

78. Can a Byte object be cast to a double value?
No, an object cannot be cast to a primitive value.
79. What is the difference between a static and a non-static inner class?
A non-static inner class may have object instances that are associated with instances of the class’s outer class. A static inner class does not have any object instances.
80. What is the difference between the String and StringBuffer classes?
String objects are constants. StringBuffer objects are not.
81. If a variable is declared as private, where may the variable be accessed?
A private variable may only be accessed within the class in which it is declared.
85. What is the % operator?
It is referred to as the modulo or remainder operator. It returns the remainder of dividing the first operand by the second operand.


No comments:

Post a Comment

Note: Only a member of this blog may post a comment.