相关疑难解决方法(0)

Java中的public,protected,package-private和private有什么区别?

在Java中,有没有关于何时使用每个访问修饰符,即默认明确的规则(包私有)public,protected并且private,同时使classinterface和处理继承?

java private protected public access-modifiers

3004
推荐指数
24
解决办法
201万
查看次数

抽象VS信息隐藏VS封装

你能告诉我在软件开发中抽象信息隐藏有什么区别吗?

我很迷惑.抽象隐藏了细节实现和信息隐藏抽象的东西的整个细节.

更新:我找到了这三个概念的好答案.请参见下面的单独答案从采取了一些引文出现.

glossary encapsulation ooad abstraction information-hiding

161
推荐指数
6
解决办法
14万
查看次数

在实践中私人与公共成员(封装有多重要?)

面向对象编程的最大优点之一是封装,我们(或者至少,我已经)教过的"真理"之一是成员应该始终保持私密并通过访问者和变异器提供方法,从而确保验证和验证更改的能力.

不过,我很好奇,这在实践中有多重要.特别是,如果你有一个更复杂的成员(例如集合),那么将它公开而不是制作一堆方法来获取集合的密钥,添加/删除集合中的项目是非常诱人的,等等

你一般遵守规则吗?你的答案是否会改变,取决于它是为自己编写的代码还是其他人使用的代码?这种混淆是否有更微妙的原因?

language-agnostic encapsulation

22
推荐指数
3
解决办法
3359
查看次数

Java类可访问性

与我的另一个问题略有关联:以下内容有何区别:

private class Joe
protected class Joe
public class Joe
class Joe
Run Code Online (Sandbox Code Playgroud)

再一次,最后两个之间的差异是我最感兴趣的.

java accessibility class

1
推荐指数
1
解决办法
9978
查看次数