package composite; /** * Leaf — a single file with no children. * getSize() returns its own bytes. print() outputs a single line. * No knowledge of directories or nesting exists in this class. */ public class File implements FileSystemItem { private final String name; private final long size; public File(String name, long sizeBytes) { this.name = name; this.size = sizeBytes; } @Override public String getName() { return name; } @Override public long getSize() { return size; } @Override public void print(String indent) { System.out.printf("%s[FILE] %s (%,d bytes)%n", indent, name, size); } }