public interface PagedListInterface
{
//..
PageIndex
PageSize
TotalCount
TotalPages
//..
}
class PagedList implements PagedListInterface
{
//тут вся логика листалки
}
public interface NewsInterface
{
//Различные методы
//И среди прочих
PagedListInterface GetNewsList()
}
class News implements NewsInterface
{
public PagedListInterface GetNewsList()
}
abstract class Parent
{
abstract public function getName()
{
return "Родитель";
}
}
class Child1 extends Parent
{
public function getName()
{
return "Дочерний 1";
}
}
class Child2 extends Parent
{
public function getName()
{
return "Дочерний 2";
}
}