草庐IT

private-inheritance

全部标签

python - Python中的"Private"(实现)类

我正在编写一个由两部分组成的小型Python模块:一些定义公共(public)接口(interface)的函数,上述函数使用的实现类,但在模块外没有意义。起初,我决定通过在使用它的函数中定义它来“隐藏”这个实现类,但这会妨碍可读性,并且如果多个函数重用同一个类,则无法使用。那么,除了注释和文档字符串之外,是否还有一种机制可以将类标记为“私有(private)”或“内部”?我知道下划线机制,但据我了解,它仅适用于变量、函数和方法名称。 最佳答案 使用单个下划线前缀:class_Internal:...这是“内部”符号的官方Python

java - 使用返回整数列表的 power mock 测试私有(private)方法

我有一个私有(private)方法,它采用整数值列表返回整数值列表。我如何使用powermock来测试它。我是powermock的新手。我可以用简单的模拟进行测试吗..?怎么样.. 最佳答案 来自thedocumentation,在名为“Common-Bypassencapsulation”的部分中:UseWhitebox.invokeMethod(..)toinvokeaprivatemethodofaninstanceorclass.您还可以在同一部分中找到示例。 关于java-使用

java - 无法定义私有(private)静态最终变量,因为它会引发异常

我有这样的课:publicclassSomeClassImplimplementsSomeClass{privatestaticfinalSomeLibsomeLib=newSomeLib();}我不能这样做,因为SomeLib会引发UnknownHostException。我知道我可以将实例化移动到构造函数,但是有没有办法让我按照我上面的方式来做呢?这样我就可以将var标记为final。我试图寻找如何在类级别引发异常,但找不到任何东西。 最佳答案 你可以使用静态初始化器:publicclassSomeClassImplimplem

java - 通过来自另一个包的公共(public)子类使用包私有(private)类的公共(public)方法引用时出现 IllegalAccessError

昨天我在Tomcat8上部署我的Java8webapp后遇到了一个有趣的问题。我更感兴趣的是了解为什么会发生这种情况,而不是如何解决这个问题。但是,让我们从头开始吧。我有两个类定义如下:Foo.javapackagepackage1;abstractclassFoo{publicStringgetFoo(){return"foo";}}Bar.javapackagepackage1;publicclassBarextendsFoo{publicStringgetBar(){return"bar";}}如您所见,它们在同一个包中,最终都在同一个jar中,我们称之为commons.jar。

java - 使用private关键字

我是编程新手。我现在正在学习Java,有一点我不太确定,那就是使用private。为什么程序员将变量设置为私有(private)然后write,getter和setter来访问它。既然我们都在使用它,为什么不把所有东西都公之于众。publicclassBadOO{publicintsize;publicintweight;...}publicclassExploitBadOO{publicstaticvoidmain(String[]args){BadOOb=newBadOO();b.size=-5;//Legalbutbad!!}}我发现了一些这样的代码,我看到评论合法但不好。我不明

java - 为什么Java中的实例变量总是私有(private)的?

我是Java新手,我正在学习封装,并看到了一个示例,其中实例变量在类中声明为私有(private)。http://www.tutorialspoint.com/java/java_encapsulation.htm我有2个查询:为什么实例变量是私有(private)的?为什么不公开?如果将实例变量公开并直接访问会怎样?我们是否看到任何限制?您能否举例说明如果实例变量在Java中的类中声明为public会出现什么问题? 最佳答案 实例变量被设为私有(private)以强制这些类的用户使用方法来访问它们。在大多数情况下,有简单的gett

java - 我应该如何在 Java 中测试私有(private)方法?

这个问题在这里已经有了答案:关闭12年前.PossibleDuplicate:What’sthebestwayofunittestingprivatemethods?我是一名初级程序员,我不知道如何编写一个结构良好的应用程序,以便进行单元测试。我想编写能够在之后添加有效单元测试的应用程序。问题在于private方法-它们无法在其类之外进行测试。我是否应该通过将所有private的方法更改为protected来解决这个问题,并让测试类扩展源类?还是有更好的解决方案?我的解决方案(私有(private)splitLetters=>protectedsplitLetters)会这样工作:源类

java - 私有(private)类声明

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:Java:Whycanwedefineatoplevelclassasprivate?为什么我们不能声明一个private外部类?如果我们可以有内部私有(private)类,那么为什么我们不能有外部私有(private)类...? 最佳答案 私有(private)外部类将毫无用处,因为没有任何东西可以访问它。查看更多详情:Java:Whycanwedefineatoplevelclassasprivate? 关于

java - 'TAG' 在 'android.support.v4.app.FragmentActivity' 具有私有(private)访问权限

除了引用TAG的地方外,我Activity中的几乎所有内容都运行良好。TAG得到一条红线并表示:'TAG'hasprivateaccessin'android.support.v4.app.FragmentActivity'。MainActivity(没有导入)-publicclassMainActivityextendsAppCompatActivity{publicstaticfinalStringDATA_PATH=Environment.getExternalStorageDirectory().toString()+"/MainActivity";publicstaticfi

Java:如何实现私有(private)抽象方法?

是否可以在Java中定义私有(private)抽象类?Java开发人员如何编写如下结构?publicabstractclassMyCommand{publicvoidexecute(){if(areRequirementsFulfilled()){executeInternal();}}privateabstractvoidexecuteInternal();privateabstractbooleanareRequirementsFulfilled();} 最佳答案 Java中不能有privateabstract方法。当一个方法是