【java – 如何测试调用父类的受保护(不需要)方法的方法?】教程文章相关的互联网学习教程文章

Java通过反射得到其属性的值包含父类属性

public class ObjectUtils { private static final Logger LOG = LoggerFactory.getLogger(ObjectUtils.class); /** * 反射取得bean中对应属性的值 * @param bean * @param fieldName * @return */ public static Object getProperty(Object bean, String fieldName) { Object obj = getProperty(bean.getClass(),bean,fieldName); return obj; } private static Object getP...

java – 子类getter上的@NotNull影响父类表【代码】

我有一个与javax.validation.constraints.NotNull注释相关的问题.在我的项目中,我确实有类如下的类树:@Inheritance(strategy = InheritanceType.JOINED) class Ssss {@ManyToOneprivate Xxxx x;public Xxxx getXxxx() {return x;} }@Inheritance(strategy = InheritanceType.JOINED) class Yyyy extends Ssss {@Override//some not important annotationspublic Xxxx getXxxx() {return super.getXxxx();} }@Inheritance(...

java多态 成员访问特点(父类引用指向子类对象)

>父类 子类 package com.dareway.demo;public class Father {public String index="fatherLogo";public Father() {System.out.println("father creat");}public void Fly() {System.out.println("father Fly");}public static void eat(){System.out.println("father eat");} }package com.dareway.demo;public class Son extends Father {public String index="sonLogo";public String school="qinghua";public Son() {System.out...

java – 如何测试调用父类的受保护(不需要)方法的方法?【代码】

我陷入了一个非常奇怪的情况.我有一些我需要测试的特定代码. 这里是:public class A {/** The real method of real class is so big that I just don't want to test it.* That's why I use throwing an exception.*/protected void method(Integer result) {throw new RuntimeException("Oops!");}protected <T> T generifiedMethod(String s, T type) {throw new RuntimeException("Oops!");}protected void mainMethod(Integer...

java – 覆盖父类和接口中存在的方法(具有相同的签名)【代码】

我们有一个Class(比如Animal),我们有一个接口(比如Behave). Animal和Behave都有一个具有相同签名的方法(比如public void eat()). 当我们尝试在一个类(比如Dog)中编写方法eat()时,它扩展了Animal并实现了Behave,其中eat()方法实际上是指?动物或行为中的那个.无论发生哪种情况,为什么会这样? 编辑: 在发布此问题之前,我在Eclipse上尝试了这个场景. 这里有一个有趣的部分是,即使我正在实现Behave,如果我不在Dog内创建一个eat()方法...

Java基础 try...catch...catch 使用众多异常的父类 Exception,去捕 获 其所有子类异常

??? JDK :OpenJDK-11 ??? OS :CentOS 7.6.1810 ??? IDE :Eclipse 2019?03 typesetting :Markdowncode package per.jizuiku.base;/*** @author 给最苦* @date 2019/06/29* @blog www.cnblogs.com/jizuiku*/ class Demo {/*** @param args*/public static void main(String[] args) {try {int a = 1 / 0;} catch (Exception e) {// 使用众多异常的父类Exception,去捕获其所有子类异常System.out.println(e.toString() + " 被捕...

java – 为什么要调用父类方法?【代码】

为什么在创建子对象时调用父类方法.这甚至不是静态方法.class Parent {public String pubMethod(Integer i) {return "p";} }public class Child extends Parent {public String pubMethod(int i) {return "c";}public static void main(String[] args) {Parent u = new Child();System.out.println(u.pubMethod(1)); // Prints "p" why??} }在这里,我传递一个原始的int.仍然是父方法. 任何解释?解决方法:当你调用u.pubMetho...

java – Sonar重命名此方法;父类中有一个具有相同名称的“私有”方法【代码】

当我们使用父私有方法的相同名称时,Sonar在类中抱怨私有方法名称.在代码质量中,使用父私有方法的名称定义私有方法的缺点是什么? 或者我们是否需要将其归类为误报解决方法:IMO,因为这可能会让人感到困惑.考虑下面,阅读评论:class Child extends Super{public void myMethod() {System.out.println("in child");}}class Super{public static void main(String[] args) {Super s = new Child(); s.myMethod(); // At this point you...

java – 在父类中调用匿名内部类的方法【代码】

关于Anonymous内心阶级的冲浪,我对此产生了疑问 这是我下载的Original代码并正在解决它(请参阅下面的代码仅用于我的问题). 根据上面的链接,他们说我们不能超载&在Anonymous Inner类中添加其他方法. 但是当我编译下面的它工作正常,虽然我无法在Inner类之外调用那些公共方法. 最初我很惊讶为什么我无法访问Inner类之外的公共方法,但后来我意识到Object被“父”类引用所持有,它不知道这样的函数调用. 我可以在下面的代码中进行哪些更改...

java – 从父类中调用父方法【代码】

这是我的代码的摘录package dictionary;import java.util.Iterator; import java.util.LinkedList; import java.util.regex.*;public class IntelliCwDB extends CwDB {public IntelliCwDB(String filename) {super(filename);}@Overridepublic void add(String word, String clue) {System.out.println("inelli");} }和CwDB ……package dictionary;import java.util.LinkedList; import java.io.*; import java.util.Scanner;pub...

java – 使用泛型将super()调用到父类【代码】

我有几个类都扩展了相同的抽象类Encoder.抽象类要求其子代覆盖接受泛型类型参数的抽象方法(在此示例中为Subscriber< T>).覆盖此方法的每个子类对此参数使用不同的类型.abstract class Encoder<T> {protected String mSomeArg;public Encoder(String someArg) {mSomeArg = someArg+" super";}public abstract void start(Subscriber<T> subscriber); }class ExampleEncoder extends Encoder {public ExampleEncoder(String arg) {su...

在Java中如何引用子类变量而不在父类中声明该变量?【代码】

public class MyTest {public static void main(final String[] args) {B b = new B();b.print();} }class A {private final int x = 5;protected int getX() {return x;}public void print() {System.out.println(getX());} }class B extends A {private final int x = 10;@Overrideprotected int getX() {return x;}}在这个例子中,我需要在父类中打印子类值.它工作正常.没有任何问题.现在打印10.但我不想在父类A中定义该属性. 因...

java – 将派生类强制转换为父类时会丢失数据吗?【代码】

例如public class parentClass{//stuff done}public class derivedClass extends parentClass{// has data that parentClass does not }// some function public parentClass foo(parentClass myVar){return myVar }// ... later ...{...derivedClass dClass1 = new derivedClass();parentClass pClass = foo(dClass1);derivedClass dClass2 = (derivedClass)pClass;... }数据在dClass1和dClass2之间丢失了吗?我不确定,我认为答案...

Java – 继承Fluent方法返回类型以返回事件类的类型,而不是父类【代码】

当您采用流畅的方法时,您可能会遇到以下情况:public class Foo<T extends a>{public Foo<T> someMethod(){System.out.println("foo");return this;}}public class Bar<T extends b> extends Foo<T> {public Bar<T> barMethod(){System.out.println("bar");return this;}}public class a{} public class b extends a{}一个流畅的接口的优点是你可以链接方法调用,但是当Bar继承了someMethod()时,返回类型是Foo not Bar会破坏以下链:...

java – JAXB编组声明父类与实际运行时子类【代码】

我正在使用JAXB编组一个具有声明为类Foo的实例变量的类.在运行时,实例变量被设置为Foo的子类的实例,让我们说FooBar.类Foo和FooBar上都有基本的JAXB注释. XML输出显示正在封送Foo的实例而不是FooBar.是否有一些特定的东西我需要做注释告诉JAXB如何正确编组运行时子类来代替声明的超类? 我尝试了一个实验,其中我直接编组了一个Foo类型的实例变量foo,它在运行时被设置为FooBar的一个实例.它正确编组了一个FooBar实例. 这与编组包含Fo...