LinkedListクラスのContainsメソッドでは
引数のオブジェクトと同じものがあるかを調べる際に
equalメソッドを使用していると思うのですが
オリジナルクラスのオブジェクトを引数とするときは
そのオリジナルクラスでオーバーライドしたequalメソッドを
containsメソッドが使用してくれると考えてよいのでしょうか?

あと、オリジナルクラスのオブジェクトをリストに入れているので
getFirstメソッド等の戻り値がオリジナルクラスになるものだと
考えているのですが、オリジナルクラスの変数に代入しようとすると
コンパイラで期待値がオリジナルクラス、検出値がObjectクラスであり
違うと怒られます。
これはキャストして代入するしかないのでしょうか?