Dimenticando per un attimo le novità di Java 8 riguardo le interfacce, sì una interfaccia rappresenta una pura astrazione che indica quali comportamenti (metodi) deve avere un oggetto ma non come deve implementarli.
Le interfacce vengono tipicamente usate per rappresentare la capacità di saper fare qualcosa, vedi interfacce es. Runnable, Comparable, Iterable, ecc... Ma ovviamente si possono usare anche in modo più generico.
Di per sé, sì è tecnicamente corretto. Le classi però poi chiamale Quadrato e Rettangolo, specialmente quando farai le modifiche che ti indico sotto.
Innanzitutto devi fare in modo che le tue classi Quadrato/Rettangolo possano ricevere i dati per poter impostare lo stato degli oggetti. Lo "stato" ce l'hanno (nel senso di avere i campi per i dati) ma adesso hai cablato dei valori fissi. Quindi dovresti iniziare a mettere costruttore/i, metodi getter e/o setter e altro che può essere utile (es. toString() ).
Poi l'input di quei dati è un altro discorso.