PR2-Roboterfabrik/Roboterfabrik/doc/tpe/exceptions/roboter/RobotInstructions.html

188 lines
10 KiB
HTML
Raw Normal View History

2023-01-07 21:51:09 +01:00
<!DOCTYPE HTML>
<html lang="en">
<head>
2023-01-09 14:08:22 +01:00
<!-- Generated by javadoc (17) on Mon Jan 09 14:07:39 CET 2023 -->
2023-01-07 21:51:09 +01:00
<title>RobotInstructions</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
2023-01-09 14:08:22 +01:00
<meta name="dc.created" content="2023-01-09">
2023-01-07 21:51:09 +01:00
<meta name="description" content="declaration: package: tpe.exceptions.roboter, interface: RobotInstructions">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/RobotInstructions.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">tpe.exceptions.roboter</a></div>
<h1 title="Interface RobotInstructions" class="title">Interface RobotInstructions</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Known Subinterfaces:</dt>
<dd><code><a href="Robot.html" title="interface in tpe.exceptions.roboter">Robot</a></code></dd>
</dl>
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="../../../Dom%C3%A4ne/C3PO.html" title="class in Domäne">C3PO</a></code>, <code><a href="../../../Dom%C3%A4ne/Nexus6.html" title="class in Domäne">Nexus6</a></code>, <code><a href="../../../Dom%C3%A4ne/R2D2.html" title="class in Domäne">R2D2</a></code>, <code><a href="../../../Dom%C3%A4ne/Roboter.html" title="class in Domäne">Roboter</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">RobotInstructions</span></div>
<div class="block">Das Interface repräsentiert den Befehlssatz eines einfachen Roboters.
Jeder Roboter kann zwei grundlegende Operationen durchführen: das Umwandeln
einer Menge von Zahlen in einen String (<code>speak(...)</code>) und das
sortieren eines Arrays von Zahlen (<code>think(...)</code>). Wie genau das
Sortieren oder die Umwandlung erfolgt, hängt vom jeweiligen Typ des Roboters ab.
Zu beachten ist, dass die Methoden dieses Interfaces nur auf Robotern benutzt
werden können, die eingeschaltet sind. Versucht man sie auf einem
ausgeschalteten Roboter zu benutzen, werfen sie eine <a href="exceptions/RobotIllegalStateException.html" title="class in tpe.exceptions.roboter.exceptions"><code>RobotIllegalStateException</code></a>.
Weiterhin haben alle Roboter einen kleinen technischen Defekt, der dazu führt
dass die Methoden dieses Interfaces abstürzen, wenn in den Eingabedaten ein
spezieller Wert vorkommt. Immer wenn (<code>speak(...)</code>) oder (
<code>think(...)</code>) mit einem Array aufgerufen werden, das irgendwo die
Zahl 42 enthält, verweigern sie ihren Dienst und werfen eine
<a href="exceptions/RobotMagicValueException.html" title="class in tpe.exceptions.roboter.exceptions"><code>RobotMagicValueException</code></a>.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#speak(int%5B%5D)" class="member-name-link">speak</a><wbr>(int[]&nbsp;zahlen)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gibt ein Array von Zahlen als String zurück.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>int[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#think(int%5B%5D)" class="member-name-link">think</a><wbr>(int[]&nbsp;zahlen)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sortiert ein Array von Zahlen.</div>
</div>
</div>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="speak(int[])">
<h3>speak</h3>
<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">speak</span><wbr><span class="parameters">(int[]&nbsp;zahlen)</span>
throws <span class="exceptions"><a href="exceptions/RobotException.html" title="class in tpe.exceptions.roboter.exceptions">RobotException</a></span></div>
<div class="block">Gibt ein Array von Zahlen als String zurück. Die Zahlen werden
<b>nicht</b> sortiert.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>zahlen</code> - Zahlen, die ausgegeben werden sollen.</dd>
<dt>Returns:</dt>
<dd>Zahlen als String</dd>
<dt>Throws:</dt>
<dd><code><a href="exceptions/RobotException.html" title="class in tpe.exceptions.roboter.exceptions">RobotException</a></code> - wenn der Roboter in einem ungültigen Zustand ist,
oder das Array nicht seinen Vorstellungen entspricht.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="think(int[])">
<h3>think</h3>
<div class="member-signature"><span class="return-type">int[]</span>&nbsp;<span class="element-name">think</span><wbr><span class="parameters">(int[]&nbsp;zahlen)</span>
throws <span class="exceptions"><a href="exceptions/RobotException.html" title="class in tpe.exceptions.roboter.exceptions">RobotException</a></span></div>
<div class="block">Sortiert ein Array von Zahlen. Die Reihenfolge hängt von dem Typ des
Roboters ab.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>zahlen</code> - Zahlen, die sortiert werden sollen.</dd>
<dt>Returns:</dt>
<dd>Sortierte Zahlen</dd>
<dt>Throws:</dt>
<dd><code><a href="exceptions/RobotException.html" title="class in tpe.exceptions.roboter.exceptions">RobotException</a></code> - wenn der Roboter in einem ungültigen Zustand ist,
oder das Array nicht seinen Vorstellungen entspricht.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>