Mohamed Salah is "selfish" for publicly expressing his disappointment at Liverpool's failure to offer him a new contract, says former Reds defender Jamie Carragher.