Hola Guille!
Primeramente he de darte la bienvenida al foro ya que veo que es tu primera publicación, bienvenido!
Analizando tu ejercicio veo que lo has hecho muy bien, felicitaciones por ello.
Lo único para observar que tengo por mi parte es respecto a la utilización de la sentencia 'break' que empleas para salir del bucle while.
Si bien es válida la utilización de 'break' siempre trataremos de eviarla, diseñando los bucles de tal manera que nuestra salida del while sea más limpia, es decir: cuando la condición impuesta en while deja de cumplirse.
En este caso particular de tu ejercicio, la utilización del break no era necesaria. Reescribo el código eliminando el último 'else' (y convietiendo el último 'else if' en 'else').
import java.util.Scanner;
public class Ejercicio
{
public static void main(String [] args)
{
String entrada1 = "";
String entrada2 = "";
System.out.println("Introduce la primera palabra:");
Scanner scanner1 = new Scanner(System.in);
entrada1 = scanner1.nextLine();
System.out.println("Introduce la segunda palabra:");
Scanner scanner2 = new Scanner(System.in);
entrada2 = scanner2.nextLine();
int k = 0;
while (entrada1.length() > k || entrada2.length() > k)
{
k+=1;
System.out.println("¿Letra " +k+ " igual en las dos palabras?");
if(entrada1.length() >=k && entrada2.length() >= k)
{
if(entrada1.substring(k-1,k).equals(entrada2.substring(k-1,k)))
{
System.out.println("Si");
}
else
{
System.out.println("No");
}
}
else if (entrada1.length() < k)
{
System.out.println("La primera palabra no tiene letra " + k);
}
else
{
System.out.println("La segunda palabra no tiene letra " + k);
}
}
}
}
Analízalo y cualquier duda estamos aquí para volverlo a revisar.