> このように変数とメソッドが1対1で対応していることの利点は、
> 片方を知っていればもう片方を知る必要がなくなるということ。

???
片方を知っていれば、もう片方を知る必要が無い?何言ってんの?
おまえ、自分の書いたOOPのサンプルコードで、

> オブジェクトa.length();

このように、"オブジェクトa" と length() の両方を指定しているよな。
"オブジェクトa" だけでも、"length()" だけでも、思ったようには動いてくれないよな?
両方知ってる必要があるんだよな?片方だけを知ってれば良いってのはどんな寝言?

まったく、OOP信者はマジキチだな。