Koenig, Kfile::data
такие имена допустимо использовать только в случае, если метод является как setter так и getter, на пример:
public function size($size = null){
if(!is_null($size)){
$this->size = $size;
}
return $this->size;
}у тебя это чистый getter, потому надо getData.
Метод generatehash лучше сделать protected, так как он не будет вызываться из вне класса. Я бы еще переименовал его в generateHash.
public function __construct($file)Тут нужно либо документировать, что такое $file, либо изменить имя аргумента на $filePath или $fileAddress.