oop:composite_pattern
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| oop:composite_pattern [2026/05/25 08:08] – [Παράδειγμα Composite Pattern - Ιεραρχικό Σύστημα Αρχείων] gthanos | oop:composite_pattern [2026/05/25 09:12] (current) – [Πλεονεκτήματα του Composite Pattern] gthanos | ||
|---|---|---|---|
| Line 112: | Line 112: | ||
| ===== Πλεονεκτήματα του Composite Pattern ===== | ===== Πλεονεκτήματα του Composite Pattern ===== | ||
| - | * **Πολυμορφισμός & Ευκολία: | + | * **Πολυμορφισμός & Ευκολία: |
| - | * **Επεκτασιμότητα (Open/ | + | * **Επεκτασιμότητα (Open/ |
| + | |||
| + | <code java SymbolicLink.java> | ||
| + | // Leaf class representing a Symbolic Link (Συμβολικός Σύνδεσμος) | ||
| + | public class SymbolicLink implements FileSystemComponent { | ||
| + | // Κρατάμε αναφορά στο αντικείμενο-στόχο (target) που δείχνει το symlink | ||
| + | private FileSystemComponent target; | ||
| + | |||
| + | public SymbolicLink(FileSystemComponent target) { | ||
| + | this.target = target; | ||
| + | } | ||
| + | |||
| + | @Override | ||
| + | public void showDetails(String indent) { | ||
| + | if (target != null) { | ||
| + | target.showDetails(indent); | ||
| + | } else { | ||
| + | System.out.println(" | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
oop/composite_pattern.1779696495.txt.gz · Last modified: 2026/05/25 08:08 by gthanos
