GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing www.tutorialspoint.com — Marker Interface in Java
Selected Reading
Marker Interface in JavaIn Java, an interface without methods, fields, or constants is known as a Marker interface. The Marker interface is also known as the tagged interface, and this type of interface is used to tag or mark a class, so that the program understands that the class is a special type of class. Marker interface is a type of empty interface, and the markings are interpreted at runtime by the JVM (Java Virtual Machine), affecting how classes or objects behave without needing explicit method declarations. SyntaxThe following is the syntax of the marketr interface in Java: public class MyClass implements Marker_Interface_Name {
// no field and no methods
}
A Marker interface does not have any methods or fields, but provides information about the class in the form of metadata. What is the role of the Marker Interface?The Marker interface plays an important role in Java, as it makes Java an extensible and robust language. The Marker interface helps developers to create highly structured, modular systems whose behavior can be customised based on the markers a certain class has.
Types of Marker InterfacesThe JDK mainly provides three Marker interfaces in Java, which are as follows: Serializable InterfaceThe Serializable interface is a type of Marker interface that is defined in the java.io package. In Java, when we need to make a class serializable, we implement the Serializable interface. Then that object of that class can be serialized or deserialized according to the requirement. In Java, serialization is a process of converting the state of an object into a byte stream. If a class does not implement this interface, attempting to serialize the class will throw a NotSerializableException error. SyntaxThe following is the syntax for the Serializable interface declaration in Java: package java.io;
public interface Serializable {
}
ExampleBelow is an example of implementing a Serializable interface in Java: import java.io.Serializable;
class MyClass implements Serializable {
String name = "Welcome to TutorialsPoint";
}
public class Demo {
public static void main(String[] args) {
MyClass obj = new MyClass();
System.out.println("Serializable object is created\n" + obj.name);
}
}
OutputSerializable object is created Welcome to TutorialsPoint Cloneable InterfaceThe Cloneable interface is a type of Marker interface that is defined in java.lang package. When a class implements Cloneable, it allows objects of that class to be cloned using the Object.clone() method. If this interface is not implemented in the class, and we call the clone() method, it will throw the ClassNotSupportedException error. SyntaxThe following is the syntax for the Cloneable Interface declaration in Java: package java.lang;
public interface Cloneable {
}
ExampleBelow is an example of implementing a Cloneable interface in Java: import java.lang.Cloneable;
class MyClass implements Cloneable {
String name = "Welcome to TutorialsPoint";
public Object clone() throws CloneNotSupportedException {
return super.clone();
}
}
public class Demo {
public static void main(String[] args) throws Exception {
MyClass obj1 = new MyClass();
MyClass obj2 = (MyClass) obj1.clone();
System.out.println("Cloneable object is created\n" + obj2.name);
}
}
OutputCloneable object is created Welcome to TutorialsPoint Remote InterfaceThe Remote interface is a type of Marker interface that is defined in java.rmi package. It marks an object as remote, which is accessible by another machine (host machine). An object can be used as a remote after implementing the remote interface. SyntaxThe following is the syntax for the Remote interface declaration in Java: package java.rmi;
public interface Remote {
}
ExampleBelow is an example of implementing a Remote interface in Java: import java.rmi.Remote;
import java.rmi.RemoteException;
interface MyClass extends Remote {
String say() throws RemoteException;
}
class MyClassRMI implements MyClass {
public String say() {
return "Welcome to TutorialsPoint";
}
}
public class Demo {
public static void main(String[] args) throws Exception {
MyClass obj = new MyClassRMI();
System.out.println("Remote object is created\n" + obj.say());
}
}
OutputRemote object is created Welcome to TutorialsPoint Custom Marker InterfaceThe Custom interfaces are also empty interfaces. They are created by the user, and it is not a built-in interface like that of the rest of the JDK-provided Marker interfaces. SyntaxThe following is the syntax for the Custom Marker interface declaration in Java: interface Custome_Marker_Name {
//custom marker interface
}
ExampleBelow is an example of implementing a Custom Marker interface in Java: interface Marker {
}
class MyClass implements Marker {
// implementing the custom marker
String msg = "Welcome to TutorialsPoint";
}
public class Demo {
public static void main(String[] args) {
MyClass obj = new MyClass();
System.out.println("Custom Marker object is marked\n" + obj.msg);
}
}
OutputCustom Marker object is marked Welcome to TutorialsPoint Advertisements
|
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |