self-defined String class