String class has only compareTo method. Because whenever we declare string as literal or by new operator it always create object of string class. no need of compare method here.
Integer class has both compareTo and static compare method. Because integer can be define primitive(int) as well as wrapper(Integer). if we don't have static compare method how it will compare.