草庐IT

objc_requires_super

全部标签

Java:父类(super class)在某些条件下构造子类,可能吗?

我有这个条件publicclassA{publicaction(){System.out.println("ActiondoneinA");}}publicclassBextendsA{publicaction(){System.out.println("ActiondoneinB");}}当我创建B的实例时,该操作将只执行B中的操作,因为它会覆盖父类(superclass)的操作。问题是在我的项目中,父类(superclass)A已经被使用了太多次,我正在寻找一种方法,在某些条件下,当我创建A的实例时,它会检查它是否为真,用B替换自己。publicclassA{publicA(){i

java - 为 super 构造函数准备参数

我有一个必须用参数构造的基类。在子类中,我需要在构造基类之前准备好这个参数,但在Java中,必须先调用super。处理这种情况的最佳方法是什么(参见下面的简单示例)。classBaseClass{protectedStringpreparedParam;publicBaseClass(StringpreparedParam){this.param=param;}}classChildClass{publicChildClass(Mapparams){//needtoworkwithparamsandprepareparamforsuperconstructorsuper(param);

java - 如果在构造函数中使用 super 调用重写方法会发生什么

有两个类Super1和Sub1Super1.classpublicclassSuper1{Super1(){this.printThree();}publicvoidprintThree(){System.out.println("PrintThree");}}Sub1.classpublicclassSub1extendsSuper1{Sub1(){super.printThree();}intthree=(int)Math.PI;publicvoidprintThree(){System.out.println(three);}publicstaticvoidmain(String

java - 子类是否继承父类(super class)的私有(private)实例变量

Dosubclassesinheritprivatefields?这个问题解决了同样的问题,但我不太明白它如何满足下面(看似)矛盾的情况。http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html表示“子类不继承其父类的私有(private)成员。”这意味着它既不继承私有(private)实例变量也不继承私有(private)方法,对吧?但是,如果它从其父级继承公共(public)访问器方法,这将如何工作?它返回一个它不知道存在的实例变量?此外,我的计算机科学书籍(Baron的APComputerScienceA)

java - 如何在 Java 中将 ArrayList<subClass> 转换为 ArrayList<super>

我有一个方法setData(ArrayListlist),所以任何想要设置数据的人都可以拥有自己的实体,只需要从父类(superclass)扩展。但是当他们调用setData,他们如何将ArrayList转换为ArrayList?现在我使用setData(newArrayList(list)),但这不是一个好的解决方案。任何人都可以告诉我如何转换或其他解决方案可以避免该问题。非常感谢! 最佳答案 这取决于您之后要对列表执行的操作。如果你只是想从中读取,你可以像这样声明你的方法:setData(ArrayListlist)不过,您不能

java - 父类(super class)对子类对象的引用显示与子类对子类对象的引用相同的行为

Java中的以下代码,当在elipse上运行时,即使我们替换也会给出相同的输出superclasss=newsub();与,subs=newsub();请注意,我们已经覆盖了方法。输出是:changedsupermethodinsubclassnumissubclass5代码:publicclasssuperclass{intnum=2;publicstaticvoidmain(Stringstr[]){superclasss=newsub();//HERE:nothingchangesifwewrite,subs=newsub();s.supermethod();s.method()

[emerg] the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:35

nginx配置https报错:[emerg]the"ssl"parameterrequiresngx_http_ssl_modulein/usr/local/nginx/conf/nginx.conf:351.检查Nginx是否编译了SSL模块:2.如果已编译安装SSL模块,配置有问题:3.如果未编译安装SSL模块(OpenSSL安装):4.安装成功OpenSSL后,进入Nginx源代码目录,(解压出来的那个地方,安装一般都是在/usr/local/nginx)。这个错误提示表明在Nginx配置文件(通常是nginx.conf)中使用了SSL(SecureSocketsLayer)相关的配置,

Java——在子类中初始化父类(super class)变量?

好的,例如,假设我有一个名为“Vehicle”的抽象类。Vehicle类有一个名为wheels的静态变量,它没有被初始化。我想要做的是从Vehicle类扩展其他子类,如“摩托车”和“卡车”,并在这些子类中初始化车轮。代码:publicabstractclassVehicle{staticintwheels;//numberofwheelsonthevehicle}但以下不起作用:publicclassMotorcycleextendsVehicle{wheels=2;}有没有办法有效地做到这一点?编辑:感谢到目前为止所有回复的人。我知道创建实例可能是比将它们全部放在单独的类中更好的方法

java - 我可以注释从父类(super class)继承的成员吗?

如果我有一个类,例如:classPerson{privateStringname;...constructor,getters,setters,equals,hashcode,tostring...}我是否可以子类化并将注解应用于子类中的名称字段,例如应用持久性注解,而无需重新实现类的其余部分?@EntityclassEmployeeextendsPerson{@Column(...)privateStringname;} 最佳答案 这行不通,因为父类(superclass)中的字段不会受到影响,但你可以试试这个@Entitycla

java - 检查父类(super class)的智能方法

publicbooleanisUserControled(){returnaction.getClass().getSuperclass().toString().equals("classlogic.UserBehaviour");}我认为这段代码是不言自明的。有没有更聪明的方法来做到这一点?谢谢 最佳答案 (actioninstanceoflogic.UserBehaviour)如果action是扩展UserBehavior类型的对象,则返回true。摘自http://download.oracle.com/javase/tut