为什么Java中缺少friend指令? [英] Why friend directive is missing in Java?

查看:175
本文介绍了为什么Java中缺少friend指令?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道为什么Java的设计没有C ++中提供的 friend 指令,以便更好地控制从包外部获得哪些方法和实例变量已经定义了一个类。

I was wondering why Java has been designed without the frienddirective that is available in C++ to allow finer control over which methods and instance variables are available from outside the package in which a class has been defined.

我没有看到任何实际的原因或任何特定的缺点,它似乎只是一个设计问题,但不会产生任何问题如果添加到语言中。

I don't see any practical reason nor any specific drawback, it seems just a design issue but something that wouldn't create any problem if added to the language.

推荐答案

以下几个原因让我失望:

Here are a few reasons off the top of my head:


  • 朋友不是必需的。它很方便,但不是必需的

  • 朋友支持糟糕的设计。如果一个班级要求朋友访问另一个班级,那你就错了。 (见上文,方便,不需要)。

  • 朋友打破封装。基本上,我所有的私人都属于我,那个人(我的朋友)。

这篇关于为什么Java中缺少friend指令?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆