[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Изменить public на private
BorodinKO
Мне нужно в наследующем классе изменить свойство $a с public на private
перед тем как задать вопрос, погуглил и нашел что в Си нельзя так делать, но вот очень нужно так сделать в php как мне это реализовать?
xlebosol
Доступ к закрытому свойству класса возможен только внутри самого класса или через методы доступа.

<?php
/**
* Определение MyClass
*/

class MyClass
{

private $_private = 'Закрытый';

function printPrivate()
{
echo $this->_private;
}

public function getPrivate()
{
return $this->_private;
}

}


$obj = new MyClass();
$obj->printPrivate();


/**
* Определение MyClass2
*/

class MyClass2 extends MyClass
{

public function printPrivate()
{
echo $this->getPrivate();
}
}


$obj2 = new MyClass2();
$obj2->printPrivate();

?>
Invis1ble
BorodinKO
не получится, будет ошибка:
class A {
public $a;
}

class B extends A {
private $a; // fatal error
}

А зачем тебе это?

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

dancedance
не будет ошибки, будет предупреждение
Invis1ble
Цитата (dancedance @ 24.01.2013 - 20:33)
не будет ошибки, будет предупреждение

Fatal error (в 5.4.0 по крайней мере) на этапе компиляции, так что не надо smile.gif

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

SlavaFr
и в 5.3 будет тоже ошибка


_____________
↓↓↓↓↓↓↓↓↓↓
ответ может быть здесь
или в mysql_error();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.