classA{privatevoidsayA(){System.out.println("PrivatemethodofA");}publicstaticvoidmain(Stringargs[]){AinstanceA=newB();instanceA.sayA();}}classBextendsA{}我原以为它会抛出一个运行时异常,因为在编译时编译器检查是否可以在A的引用上调用sayA()并在运行时-time它将检查sayA()是否可以在B的对象上调用。但它反而打印了“A的私有(private)方法”。 最佳答案 可访问性是一个
我有5或6个类,我希望它们在内部遵循相同的基本结构。实际上,类应该遵循的大多数只是为了使用函数本身,所以我真的希望这些方法是私有(private)的。有什么办法可以实现吗?我知道接口(interface)会很好用,但它们不会采用私有(private)成员,也不允许您在已实现的方法中重新定义范围。有什么解决方法吗?谢谢 最佳答案 我认为你能得到的最接近的方法是使用一个带有abstractprotected方法的abstract类:abstractclassA{protectedabstractvoidfoo();}classBexte
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:AbsenceofpropertysyntaxinJava看下面的情况:classTestextendsObject{privateintx;publicgetX(){returnx;}publicsetX(int_x){x=_x;}}如您所见,没什么特别的。但是,我想知道是否有可能以一种使用该类的人不需要使用getX()的方式保留“私有(private)x”,换句话说,如果我可以映射一些自动调用的变量获取和设置。类似于Delphi中的“属性”。它会避免在复杂表达式中使用setX()和getX()的需要,并且
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion我喜欢正确记录的代码,拥有正确记录的描述契约(Contract)的公共(public)方法对我来说是轻而易举的事,同样适用于解释代码内部/实现的私有(private)或包内部方法。但是我不确定我是否应该使用非公开和非protected方法:遵守所有手续,如参数、返回值和异常的描述如果我应该记录不言自明的私有(private)方法,例如fireSomeEvent,它的作用一目了然,因为这只会
我正在为Liferay6.1EEGA3开发应用程序。在控制面板下,我们有私有(private)插件安装程序部分,我们可以在其中安装/部署新的portlet。我正在使用面板并且该部分工作正常。然后我尝试安装自定义portlet。由于某种原因,安装失败,我从“部署”文件夹中删除了portlet,甚至重新启动了服务器。这个portlet没有做任何特别的事情,它只是针对Liferay的Lucene搜索引擎运行一些自定义查询。然后,在此过程之后,“服务器>插件安装>私有(private)插件安装程序”部分从我的屏幕上“消失”了。下面是我访问“服务器>服务器管理”和“服务器>插件安装”部分时看到的
我使用反射来调用类的私有(private)构造函数,以解决Sonar扫描报告显示的分支覆盖不足问题。这是我正在工作的代码片段://reflectiontoaccessaprivateconstructorofaclassConstructorc=CMISBridgeMaps.class.getDeclaredConstructor(newClass[0]);c.setAccessible(true);cmisBridgeMaps=c.newInstance(newObject[0]);以上代码解决了我的Sonar扫描关键问题。但不幸的是,fortify现在在以下行中显示访问说明符操作问
我认为我们的Sonar安装(5.6和java插件4.0)存在误报。对于以下代码,应删除未使用的“私有(private)”方法问题:publicbooleanorderLineHasDetails(OrderLineorderLine){booleanresult=orderLine.getContractDevices()!=null&&orderLine.getContractDevices().size()>0;if(result){result=asLeastOneUniqueId(orderLine.getContractDevices());}returnresult;}pr
我想获得对java.lang.String包私有(private)构造函数的反射访问。即,这个:/**Packageprivateconstructorwhichsharesvaluearrayforspeed.*thisconstructorisalwaysexpectedtobecalledwithshare==true.*aseparateconstructorisneededbecausewealreadyhaveapublic*String(char[])constructorthatmakesacopyofthegivenchar[].*/String(char[]valu
这个问题在这里已经有了答案:Howmockprivatemethodthatmodifyprivatevariables?(3个答案)关闭7年前。我有一个要测试的类(class)。它看起来类似于:publicclassClassUnderTest{privateDependency1dep1;privateDependency1getDependency1(){if(dep1==null)dep1=newDependency1();returndep1;}publicvoidmethodUnderTest(){....dosomethinggetDependency1().Invoke
几周来我的IntelliJ一直在生成私有(private)getter,这很奇怪,因为它不遵守默认模板:public###if($field.modifierStatic)static###end$field.type###set($name=$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field,$project))))#if($field.boolean&&$field.primitive)#if($StringUti