相关疑难解决方法(0)

public,private和protected之间有什么区别?

何时以及为什么我应该在类中使用public,privateprotected函数和变量?他们之间有什么区别?

例子:

// Public
public $variable;
public function doSomething() {
  // ...
}

// Private
private $variable;
private function doSomething() {
  // ...
}

// Protected
protected $variable;
protected function doSomething() {
  // ...
}
Run Code Online (Sandbox Code Playgroud)

php oop private protected public

951
推荐指数
13
解决办法
47万
查看次数

什么是封装?它是如何实际隐藏数据的?

搜索提出了一个简单的定义:数据隐藏.

但是,请考虑以下两个示例:

1)第一个例子:

Class Employee
{
    public int age;
}
Run Code Online (Sandbox Code Playgroud)

2)第二个例子:

Class Employee
{
    private int age;

    public int getAge(){return age;}
}
Run Code Online (Sandbox Code Playgroud)

问题:
在上述两个示例中,没有数据隐藏,age要么被其他人修改,要么被其他人查看.数据隐藏在哪里?封装如何帮助上面的例子?

.net oop encapsulation design-patterns hidden-field

6
推荐指数
1
解决办法
2万
查看次数