/*
TCP
*/
server = new Socket(Name, Port);
output = new PrintWriter(server.getOutputStream(), false);
input = new BufferedReader(new InputStreamReader(server.getInputStream()));

//An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into 
//characters using a specified harset. The charset that it uses may be specified by name or may be given 
//explicitly, or the platform's default charset may be accepted.

while (true) {
     String serverReply = input.readLine(); //Erst hier werden bytes zu Strings umgewandelt?
     //....
}

/*
UDP
*/
socket = new DatagramSocket();
while (true) {
    byte[] data = new byte[1024];
    DatagramPacket packet = new DatagramPacket(data, data.length);
    socket.receive(packet);
    String serverReply = new String(packet.getData()); //Hier werden bytes zu Strings umgewandelt
    //...
}