Download Java Tutorial

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
TUTORIAL: UNIT 1
1. List out concepts of object oriented programming.
Class
Object
Method
Instance
Message passing
Decoupling
2. Give the benefits of oop.
Reusability
Reliability
Robustness
Extension ability
Maintainability
3. What is java?
Java was conceived by James Gosling at Sun Microsystems, Inc. in 1991. This language was initially
called "Oak" but was renamed "Java" in 1995. Gosling and others began work on a portable,platformindependent language that could be used to produce code that would run on a variety of CPUs under
differing environments. This effort ultimately led to the creation of Java.
4. With a simple program write the steps to compile and execute java program.
class Example {
// Your program begins with a call to main().
public static void main(String args[]) {
System.out.println("This is a simple Java program.");
}
}
To compile the Example program, execute the compiler, javac, specifying the name of
the source file on the command line, as shown here:
C:\\>javac Example.java
To actually run the program, you must use the Java interpreter, called java. To do so,
pass the class name Example as a command-line argument, as shown here:
C:\\>java Example
When the program is run, the following output is displayed:
This is a simple Java program.
5. Differentiate java and c++.
Java does not support operator overloading as in c++.
Java does not have threaded classes as in c++.
Java does not support multiple inheritance of classes. This is accomplished using a new feature called
“interface”.
Java does not support global variables. Every variable and method is declared within a class and forms
part of class .
Java does not use pointers.
Java has replaced the destructor function with a finalize() function.
There are no header files in java.
6. Why java is called as fully oop?
Java is a rue object-oriented language. Almost everything in java is an object. All program code and data
reside within objects and classes. Java comes with an extensive set of classes , arranged in packages, that
we can use in our programs by inheritance. The object model in java is simple and easy to extend.
7. Define keyword. Write 5 java reserved keywords.
There are 48 reserved keywords currently defined in the Java language.
These keywords, combined with the syntax of the operators and separators, form the
definition of the Java language. These keywords cannot be used as names for a variable,
class, or method.
KEYWORDS:
abstract
const
Finally
int
Public
this
Boolean…
8. What is an identifier?
Identifiers are used for class names, method names, and variable names. An identifier
may be any descriptive sequence of uppercase and lowercase letters, numbers, or the
underscore and dollar-sign characters. They must not begin with a number, lest they be
confused with a numeric literal. Again, Java is case-sensitive, so VALUE is a different
identifier than Value. Some examples of valid identifiers are:
AvgTemp
count
a4
$test
this_is_ok
Invalid variable names include:
2count
hightemp
Not/ok.
9.Write the data types in java ?
Java defines eight simple (or elemental) types of data: byte, short, int, long, char, float,
double, and boolean. These can be put in four groups:
• Integers This group includes byte, short, int, and long, which are for whole-valued
signed numbers.
• Floating-point numbers This group includes float and double, which represent
numbers with fractional precision.
• Characters This group includes char, which represents symbols in a character set, like
letters and numbers.
• Boolean This group includes boolean, which is a special type for representing
true/false values.
10. List the conditions how an automatic type conversion will take place?
When one type of data is assigned to another type of variable, an automatic type
conversion will take place if the following two conditions are met:
• The two types are compatible.
• The destination type is larger than the source type.
11. List the type promotion rules?
In addition to the elevation of bytes and shorts to int, Java defines several type
promotion rules that apply to expressions. They are as follows. First, all byte and short
values are promoted to int, as just described. Then, if one operand is a long, the whole
expression is promoted to long. If one operand is a float operand, the entire expression
is promoted to float. If any of the operands is double, the result is double.
12. Define array. Give examples for type of arrays.
An array is a group of like-typed variables that are referred to by a common name. Arrays
of any type can be created and may have one or more dimensions. A specific element in
an array is accessed by its index. Arrays offer a convenient means of grouping related
information.
Types:
One-Dimensional Arrays
The general form of new as it applies to one-dimensional arrays appears as follows:
array-var = new type[size];
int month_days[];
Multidimensional Arrays
For example, the following
declares a two-dimensional array variable called twoD.
int twoD[][] = new int[4][5];
13. List out and write example for arithmetic operators in java.
Arithmetic operators are used in mathematical expressions in the same way that they are
used in algebra. The following table lists the arithmetic operators:
Operator
+
Addition
Subtraction (also unary minus)
*
Multiplication
/
Division
%
Modulus
++
Increment
+=
Addition assignment
-=
Subtraction assignment
*=
Multiplication assignment
/=
%=
--
Division assignment
Modulus assignment
Decrement
14. List out and write example for bitwise operators in java.
Java defines several bitwise operators which can be applied to the integer types, long,
int, short, char, and byte. These operators act upon the individual bits of their operands.
They are summarized in the following table:
Operator
~
Bitwise unary NOT
&
Bitwise AND
|
Bitwise OR
^
Bitwise exclusive OR
>>
Shift right
>>> Shift right zero fill
<<
Shift left
&=
Bitwise AND assignment
|=
Bitwise OR assignment
^=
Bitwise exclusive OR assignment
>>= Shift right assignment
>>>= Shift right zero fill assignment
<<= Shift left assignment.
15. List out and write example for relational operators in java.
The relational operators determine the relationship that one operand has to the other.
Specifically, they determine equality and ordering. The relational operators are shown
here:
Operator
==
Equal to
!=
Not equal to
>
Greater than
<
Less than
>=
Greater than or equal to
<=
Less than or equal to
16. With a table specify the precedence of java operators.
Highest
()
[]
.++
-~
!
*
/
%
+
>>
>>>
<<
>
>=
<
<=
==
!=
&
^
|
&&
||
?:
=
Lowest
op=
17. List out the control statements in java.
Java supports two selection statements: if and switch. These statements allow you to
control the flow of your program's execution based upon conditions known only during run time.
1. Selection statements: if,switch.
2. Iteration statements: for,while,do while.
3. Jump statement: break, continue, return.
18. Define and give the general form of class.
class is a template for an object, and an object is an instance of a class. The data, or variables, defined
within a class are called instance variables. The code iscontained within methods. Collectively, the
methods and variables defined within a classare called members of the class.
The general form of a class definition is shown
here:
class classname {
type instance-variable1;
type instance-variable2;
// ...
type instance-variableN;
type methodname1(parameter-list) {
// body of method
}
type methodname2(parameter-list) {
// body of method
}
// ...
type methodnameN(parameter-list) {
// body of method
}
}
19 Define object.
An object in java is essentially a block of memory that contains space to store all the instance variables.
Creating an object is also referred to as instantiating an object. Objects in java are created using the new
operator. The new operator creates an object of the specified class and returns a reference to that object.
Rectangle rect1;
// declare
rect1=new Rectangle();
// instantiate
20. what is method? Give its general form.
The general form of a method:
type name(parameter-list) {
// body of method
}
Here, type specifies the type of data returned by the method. This can be any valid type,
including class types that you create. If the method does not return a value, its return type
must be void. The name of the method is specified by name. This can be any legal
identifier other than those already used by other items within the current scope. The
parameter-list is a sequence of type and identifier pairs separated by commas.
Parameters are essentially variables that receive the value of the arguments passed to
the method when it is called. If the method has no parameters, then the parameter list will
be empty.
21. What is constructor? Give example.
A constructor initializes an object immediately upon creation. It has the same name as
the class in which it resides and is syntactically similar to a method. Once defined, the
constructor is automatically called immediately after the object is created, before the new
operator completes.
class Box {
double width;
double height;
double depth;
// This is the constructor for Box.
Box() {
System.out.println("Constructing Box");
width = 10;
height = 10;
depth = 10;
}
return width * height * depth;
}
}
22. What is parameterized constructor?
Adding parameters to the constructor. For example, the following version of Box defines a
parameterized constructor which sets the dimensions of a box as specified by those parameters. Pay
special attention to how Box objects are created.
/* Here, Box uses a parameterized constructor to
initialize the dimensions of a box.
*/
class Box {
double width;
double height;
double depth;
// This is the constructor for Box.
Box(double w, double h, double d) {
width = w;
height = h;
depth = d;
}
// compute and return volume
double volume() {
return width * height * depth;
}
}
23. What is this keyword?
This can be used inside any method to refer to the current object. That is, this is always a reference to
the object on which the method was invoked.
// A redundant use of this.
Box(double w, double h, double d) {
this.width = w;
this.height = h;
this.depth = d;
}
24. What is garbage collection in java? How it differs from c++.
In some languages, such as C++, dynamically allocated objects must be manually released by use of a
delete operator. Java takes a different approach; it handles deallocation automatically. The technique
that accomplishes this is called garbage collection(i.e., )when no references to an object exist, that
object is assumed to be no longer needed, and the memory occupied by the object can be reclaimed.
There is no explicit need to destroy objects as in C++. Garbage collection only occurs sporadically (if at
all) during the execution of your program.
25. What is finalize() method? Give its general form.
If an object is holding some non-Java resource such as a file handle or window character font, then you
might want to make sure these resources are freed before an object is destroyed. This is called
finalization.
The finalize( ) method has this general form:
protected void finalize( )
{
// finalization code here
}
26. What is method 0verloading? Give example.
Defining two or more methods within the same class that share the same name, as long as their
parameter declarations are different. The methods are said to be overloaded, and the process is referred
to as method overloading. Method overloading is one of the ways that Java implements polymorphism.
// Demonstrate method overloading.
class OverloadDemo {
void test() {
System.out.println("No parameters");
}
// Overload test for one integer parameter.
void test(int a) {
System.out.println("a: " + a);
}
// Overload test for two integer parameters.
void test(int a, int b) {
System.out.println("a and b: " + a + " " + b);
}
// overload test for a double parameter
double test(double a) {
System.out.println("double a: " + a);
return a*a;
}
}
class Overload {
public static void main(String args[]) {
OverloadDemo ob = new OverloadDemo();
double result;
// call all versions of test()
ob.test();
ob.test(10);
ob.test(10, 20);
result = ob.test(123.2);
System.out.println("Result of ob.test(123.2): " + result);
}
}
27. How to overload a constructor? Give example.
In addition to overloading normal methods, we can also overload constructor methods.
/* Here, Box defines three constructors to initialize
the dimensions of a box various ways.
*/
class Box {
double width;
double height;
double depth;
// constructor used when all dimensions specified
Box(double w, double h, double d) {
width = w;
height = h;
depth = d;
}
// constructor used when no dimensions specified
Box() {
width = -1; // use -1 to indicate
height = -1; // an uninitialized
depth = -1; // box
}
// constructor used when cube is created
Box(double len) {
width = height = depth = len;
}
// compute and return volume
double volume() {
return width * height * depth;
}
}
class OverloadCons {
public static void main(String args[]) {
// create boxes using the various constructors
Box mybox1 = new Box(10, 20, 15);
Box mybox2 = new Box();
Box mycube = new Box(7);
double vol;
// get volume of first box
vol = mybox1.volume();
System.out.println("Volume of mybox1 is " + vol);
// get volume of second box
vol = mybox2.volume();
System.out.println("Volume of mybox2 is " + vol);
// get volume of cube
vol = mycube.volume();
System.out.println("Volume of mycube is " + vol);
}
}
28. What is static keyword? List out the restrictions that a method to be declared as static.
When a member is declared static, it can be accessed before any objects of its class are created, and
without
reference to any object. You can declare both methods and variables to be static. The most common
example of a static member is main( ). main( ) is declared as static because it must be called before any
objects exist.
Methods declared as static have several restrictions:
• They can only call other static methods.
• They must only access static data.
• They cannot refer to this or super in any way.
29 What is final keyword in java? Give its equivalent c++ keyword.
A variable can be declared as final so that the contents cannot be modified.
This means that you must initialize a final variable when it is declared. (In this usage,
final is similar to const in C/C++.) For example:
final int FILE_NEW = 1;
final int FILE_OPEN = 2;
final int FILE_SAVE = 3;
final int FILE_SAVEAS = 4;
final int FILE_QUIT=5;.
Variables declared as final do not occupy memory on a per-instance basis. Thus, a final
variable is essentially a constant.
30. What is nested class? Give its types.
It is possible to define a class within another class; such classes are known as nested classes. A nested
class has access to the members, including private members, of the class in which it is nested. However,
the enclosing class does not have access to the members of the nested class. There are two types of
nested classes: static and non-static.
31. What is inner class?
The most important type of nested class is the inner class. An inner class is a non-static nested class. It
has access to all of the variables and methods of its outer class and may refer to them directly in the
same way that other non-static members of the outer class do. Thus, an inner class is fully within the
scope of its enclosing class.
32. What is command line argument? Give example.
A command-line argument is the information that directly follows the program's name on the command
line when it is executed. To access the command-line arguments inside a Java program is quite easy they
are stored as strings in the String array passed to main( ). For example, the following program displays
all of the command-line arguments that it is called with:
// Display all command-line arguments.
class CommandLine {
public static void main(String args[]) {
for(int i=0; i<args.length; i++)
System.out.println("args[" + i + "]: " +
args[i]);
}
}