Как реализовать интерфейс маркеров в Java?



Эта статья проинформирует вас об интересном аспекте интерфейсов, который в Java называется Marker Interface, и продолжит его реализацию.

Эта статья расскажет вам об интересном аспекте интерфейсов, который называется интерфейсом маркеров и продолжите реализацию. Следующие указатели будут рассмотрены в этой статье,

Итак, давайте начнем,





Интерфейс маркера - это пустой интерфейс, то есть не содержащий никаких методов или полей. Он также известен как интерфейс тегов и используется для указания или информирования JVM о том, что класс, реализующий этот интерфейс, будет иметь особое поведение. Эффективный способ классификации кода может быть достигнут с помощью интерфейса маркера. Примеры такого интерфейса: Serializable, Cloneable и Remote Interface.

Переходя к этой статье об интерфейсе маркеров в Java



Сериализуемый интерфейс

Сериализацию в java можно определить как процесс преобразования состояния объекта в поток байтов. Это может быть достигнуто с помощью сериализуемого интерфейса, который присутствует в java.io.package. Следует отметить, что все подтипы сериализуемого класса сами сериализуемы.

Пример:

import java.io. * class Main реализует Serializable {int j String s // Конструктор класса public Main (int j, String s) {this.j = j this.s = s}} открытый класс Test {public static void main (String [] args) выбрасывает IOException, ClassNotFoundException {Main obj = new Main (25, 'HelloWorld') // Сериализация 'obj' FileOutputStream fos = new FileOutputStream ('pqr.txt') ObjectOutputStream oos = new ObjectOutputStream (fos) oos .writeObject (obj) // Десериализация 'obj' FileInputStream fis = new FileInputStream ('pqr.txt') ObjectInputStream ois = new ObjectInputStream (fis) Main b = (Main) ois.readObject () // понижающее преобразование объекта System.out.println (b.j + '' + bs) // закрытие потоков oos.close () ois.close ()}}

Вывод:
25 HelloWorld



Переходя к этой статье об интерфейсе маркеров в Java

Клонируемый интерфейс:

Этот интерфейс можно найти в пакете java.lang. Клонирование - это механизм создания реплики или точной копии объекта с другим именем.
Клонируемый интерфейс реализуется классом, чтобы указать методу object.clone (), что для этого метода разрешено создавать копии экземпляров этого класса «поле за полем».
CloneNotSupportedException выбрасывается для класса, который вызывает метод клонирования без реализации клонируемого интерфейса.

ограничения в sql с примером

Пример:

import java.lang.Cloneable class javaClone реализует Cloneable {int j String s // Определение конструктора класса public javaClone (int j, String s) {this.j = j this.s = s} // Переопределение метода clone () @ Переопределить защищенный объект clone () генерирует CloneNotSupportedException {return super.clone ()}} открытый класс Main {public static void main (String [] args) выбрасывает CloneNotSupportedException {javaClone c = new javaClone (18, 'HelloWorld') // клонирование » c 'и удерживает // ссылку на новый клонированный объект в b // понижающее преобразование javaClone b = (javaClone) c.clone () System.out.println (bj) System.out.println (bs)}}

Вывод:
18
Привет мир

Переходя к этой статье об интерфейсе маркеров в Java

Удаленный интерфейс:

Удаленный объект можно определить как объект, методы которого могут быть вызваны из другой JVM, возможно, на другом хосте. Этот интерфейс находится в пакете java.rmi. Удаленный объект должен реализовывать этот метод прямо или косвенно.

RMI:

Архитектура MVC в Java с диаграммой

Remote Method Convocation - это API, который позволяет объекту вызывать методы для объекта, запущенного в другой JVM. Он обеспечивает удаленную связь между двумя приложениями с использованием следующих объектов: заглушки и скелета.

Заглушка:

Заглушку можно определить как объект, который присутствует на стороне клиента и представляет удаленный объект. Создает информационный блок, который состоит из:
α Идентификатор удаленного объекта
α Название метода, который должен быть вызван
α Параметры удаленной JVM

Скелет:

Основная задача скелетного объекта - передавать запросы от заглушки удаленному объекту. Кроме того, он выполняет следующие задачи:
α вызывает нужный метод на исходном удаленном объекте
α Считывает параметр, указанный для удаленного объекта

Переходя к этой статье об интерфейсе маркеров в Java

Шаги по реализации удаленного интерфейса:

Определите удаленный интерфейс:

import java.rmi. * public interface AddAll extends Remote {public int add (int r, int s) throws RemoteException}

Здесь удаленный интерфейс расширен, и RemoteException объявляется со всеми методами удаленного интерфейса.

Переходя к этой статье об интерфейсе маркеров в Java

Реализуйте удаленный интерфейс:

Есть два способа реализовать удаленный интерфейс:
α Расширить класс UnicastRemoteObject
α Используйте метод exportObject () класса UnicastRemoteObject

ng-change против onchange
import java.rmi. * import java.rmi.server. * открытый класс AddAllRemote расширяет UnicastRemoteObject реализует Adder {AddAllRemote () выдает RemoteException {super ()} public int add (int r, int s) {return r + s}}

Используя rmic (компилятор rmi), создайте объекты-заглушки и скелет.

Заглушки и скелетные объекты могут быть созданы с помощью компилятора rmi. Инструмент rmi вызывает компилятор RMI для создания объектов.
rmic AddAllRemote

Используя инструмент rmiregistry, запустите службу реестра.

Службу реестра можно запустить с помощью инструмента rmregistry. Номер порта по умолчанию используется, если он не указан пользователем.
rmiregistry 5000

Переходя к этой статье об интерфейсе маркеров в Java

Создайте и запустите удаленное приложение.

import java.rmi. * import java.rmi.registry. * public class Server {public static void main (String args []) {try {AddAll stub = new AddAllRemote () Naming.rebind ('rmi: // localhost: 5000 / sak ', заглушка)} catch (исключение e) {System.out.println (e)}}}

В приведенном выше примере удаленный объект привязан к имени sak.

Переходя к этой статье об интерфейсе маркеров в Java

Создайте и запустите клиентское приложение.

В приведенном примере сервер и клиентские приложения запускаются на одном компьютере. Таким образом, используется localhost.

import java.rmi. * public class Client {public static void main (String args []) {попробуйте {AddAll stub = (AddAll) Naming.lookup ('rmi: // localhost: 5000 / sak') System.out.println (stub.add (29,18))} catch (Исключение e) {}}}

Чтобы получить доступ к удаленному объекту с другого компьютера, имя локального хоста должно быть изменено на IP-адрес или имя хоста, на котором расположен удаленный объект.

Эффективный способ классификации кода может быть достигнут с помощью интерфейса маркера.

На этом мы подошли к концу этой статьи. Если вы хотите узнать больше, ознакомьтесь с от Edureka, надежной компании онлайн-обучения. Курс обучения и сертификации по Java J2EE и SOA от Edureka разработан, чтобы обучить вас базовым и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев этого блога, и мы свяжемся с вами как можно скорее.