mirror of
https://github.com/pepaskopec-blip/Graduately.git
synced 2026-10-27 15:14:35 +00:00
Add a C# course with a side-by-side code runner.
Each lesson explains a topic and runs the edited program next to the text through the local .NET SDK. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
6662eb185e
commit
333085ee53
86 changed files with 2482 additions and 5 deletions
50
content/programovani/3-rocnik/07-rozhrani.md
Normal file
50
content/programovani/3-rocnik/07-rozhrani.md
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
---
|
||||
id: cs-3-rozhrani
|
||||
nazev: Rozhraní
|
||||
popis: Smlouva: které metody typ musí mít.
|
||||
---
|
||||
|
||||
# Výklad
|
||||
|
||||
## interface
|
||||
*I*
|
||||
|
||||
- interface nemá hotový kód, jen hlavičky metod.
|
||||
- class Pes : IMluvici slíbí, že Mluv napíše.
|
||||
- Jedna třída může splnit víc rozhraní. Dědit může jen jednu třídu.
|
||||
|
||||
> Tip: Jméno rozhraní se často píše s I na začátku: IMluvici.
|
||||
|
||||
## Společný typ
|
||||
*seznam*
|
||||
|
||||
- Proměnná typu rozhraní udrží kohokoli, kdo smlouvu splnil.
|
||||
- Pes a Radio nemají společného předka, ale oba umí Mluv.
|
||||
- Smyčka jim rozumí přes smlouvu, ne přes původ.
|
||||
|
||||
> Tip: Rozhraní neříká, jak metoda funguje. To napíše až třída.
|
||||
|
||||
# Kód
|
||||
|
||||
```
|
||||
IMluvici[] veci = { new Pes(), new Radio() };
|
||||
foreach (IMluvici v in veci)
|
||||
{
|
||||
Console.WriteLine(v.Mluv());
|
||||
}
|
||||
|
||||
interface IMluvici
|
||||
{
|
||||
string Mluv();
|
||||
}
|
||||
|
||||
class Pes : IMluvici
|
||||
{
|
||||
public string Mluv() { return "haf"; }
|
||||
}
|
||||
|
||||
class Radio : IMluvici
|
||||
{
|
||||
public string Mluv() { return "hudba"; }
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue