Skip to main content

Core Java Basic Classes

😏 Core Java Classes Brief Introduction Topics :

#Abstract Class :
An Abstract Class is a class that is declared keyword abstract. it may  or may not include an abstract method

Abstract method:
A method that is a declared as abstract and does not have an implementation.

The abstract class can look something like this:
abstract class GraphicObject {
    int x, y;
    ...
    void moveTo(int newX, int newY) {
        ...
    }
    abstract void draw();
    abstract void resize();
}

#Interface class :
An interface class in java is a blueprint of a class, it has static constant and abstract method.there  can be the only abstract method in Java interface .(is-a relationship)

The Interface class can look something like this:
interface Bicycle {
    //  wheel revolutions per minute
    void changeCadence(int newValue);

    void changeGear(int newValue);

    void speedUp(int increment);

    void applyBrakes(int decrement);
}

#Marker Interface :
it is an empty interface (on field or method )

The Interface class can look something like this:
interface Bicycle {
//empty 
}
Cloneable Interface :
The Cloneable interface is present in java.lang.package. there is a method clone() in the object class
A class that implements the Cloneable interface indicates that itis legal for clone() method to make a field for field copy of an instance of that class.

Serializable Interface :
The Serializable interface is present in the java.io package. It is used to make an object eligible for saving its state into a file. This is called Serialization.
Classes that do not implement this interface will not have any of their state serialized or deserialized. All subtypes of a serializable class are themselves serializable.

Remote interface : 
The remote interface is present in java.rmi package. A remote object is an object which is stored at one machine and accessed from another machine. So, to make an object a remote object, we need to flag it with the Remote interface.
Here, Remote interface serves to identify interfaces whose methods may be invoked from a non-local virtual machine.Any object that is a remote object must directly or indirectly implement this interface.
RMI (Remote Method Invocation) provides some convenience classes that remote object implementations can extend which facilitate remote object creation.
  


#Wrapper Class : 
A wrapper class is a class where object wraps or contains a primitive type.
when we create an object to wrapper class, it contains a field and infield, we can store a primitive datatype, in other words, we can wrap a primitive value into a wrapper class object.

Need od wrapper class :
  • They convert primitive datatype into the object, object are needed if we wish to modify the arguments passed into a method.
  • the classes in java.util package handle only object and hance wrapper classes help in the case also 
  • A data structure in the collection framework, such as ArrayList and vector, store the only object and not the primitive type.
  • An object is needed to support synchronized in multithreading 
Primitive Datatype and their corresponding wrapper class :
Autoboxing : 
Automatic conversion of primitive type to the object of their corresponding wrapper class is known as autoboxing. 
                          
Unboxing :
it is just the reverse process of autoboxing. automatically converting an object of wrapper class to it corresponding primitive type is known as unboxing.

#Casting  Class  :
Casting Really means in taking an object of one particular type and "turning it into" another object type. this process is called casting a variable.

Type Casting :
Assigning a value of one type to a variable of another type is known as typecasting.

Type Casting is classification into two type :

Widening casting (Implicit) :
  • The target type is larger than the source type.
  • it is automatic type conversion.
  • JVM will create new object type.
Narrowing casting (Explicitly):
when you are assigning a larger type value to a variable of small type, the need to perform explicitly.
Related image
  • Larger type value to the variable of small type value.
  • the program will create new object typeset.
#Stream Class:
A stream can be defined as a sequence of data. hierarchy of classes for input and output streams. 
the input stream is used to read data from a source and the output stream is used for writing data to a destination. to perform read and write operation on binary files we need a mechanism to read that binary data on file / to write binary (i.e. in the form of byte)


#Generics Class :
We can define our own classes with generics type. A generic type is a class or interface that is parameterized over types. We use angle brackets (<>) to specify the type parameter.

class MyGen <T> {
 T obj;
 void add (T obj){ this.obj=obj; }
 T.get(){
  return obj;
 }
}
Generic method :
Like a generic class, we can create the generic method that can accept any type of argument.

public static<E> void printArray(E[] elements){
 
 for(E element:elements){
  System.out.println(element);
 }
}

Comments

Post a Comment

Popular posts from this blog

Java Loops II print each element of our series as a single line of space-separated values.

We use the integers  ,  , and   to create the following series: You are given   queries in the form of  ,  , and  . For each query, print the series corresponding to the given  ,  , and   values as a single line of   space-separated integers. Input Format The first line contains an integer,  , denoting the number of queries.  Each line   of the   subsequent lines contains three space-separated integers describing the respective  ,  , and   values for that query. Constraints Output Format For each query, print the corresponding series on a new line. Each series must be printed in order as a single line of   space-separated integers. Sample Input 2 0 2 10 5 3 5 Sample Output 2 6 14 30 62 126 254 510 1022 2046 8 14 26 50 98 Explanation We have two queries: We use  ,  , and   to produce some series  : ... and so on. Once we hit  , we print the first ten terms as a single line of space-separate

Java Currency Formatter Solution

Given a  double-precision  number,  , denoting an amount of money, use the  NumberFormat  class'  getCurrencyInstance  method to convert   into the US, Indian, Chinese, and French currency formats. Then print the formatted values as follows: US: formattedPayment India: formattedPayment China: formattedPayment France: formattedPayment where   is   formatted according to the appropriate  Locale 's currency. Note:  India does not have a built-in Locale, so you must  construct one  where the language is  en  (i.e., English). Input Format A single double-precision number denoting  . Constraints Output Format On the first line, print  US: u  where   is   formatted for US currency.  On the second line, print  India: i  where   is   formatted for Indian currency.  On the third line, print  China: c  where   is   formatted for Chinese currency.  On the fourth line, print  France: f , where   is   formatted for French currency. Sample

Java Substring Comparisons

We define the following terms: Lexicographical Order , also known as  alphabetic  or  dictionary  order, orders characters as follows:  For example,  ball < cat ,  dog < dorm ,  Happy < happy ,  Zoo < ball . A  substring  of a string is a contiguous block of characters in the string. For example, the substrings of  abc  are  a ,  b ,  c ,  ab ,  bc , and  abc . Given a string,  , and an integer,  , complete the function so that it finds the lexicographically  smallest  and  largest substrings of length  . Input Format The first line contains a string denoting  . The second line contains an integer denoting  . Constraints  consists of English alphabetic letters only (i.e.,  [a-zA-Z] ). Output Format Return the respective lexicographically smallest and largest substrings as a single newline-separated string. Sample Input 0 welcometojava 3 Sample Output 0 ava wel Explanation 0 S