A string in C is just an array of chars. There is nothing but the convention that when a NUL character (\0) is found, the string ends.
All string support depends on functions in the C standard library, such as strlen(), strcpy() and so on.
To tell the size of a C "string", you have to pass a pointer to a separate function. You could argue that there are no strings in C at all, just conventions for arrays of char.
Java, on the other hand, has strings built in as a part of the language itself. The Java String has methods, which can tell you its size for instance.
Java has primitive types, like C: float and int.
But it also has "Objects" and String is a kind of object.
This is so far very much like the difference between C and C++ too.