草庐IT

Super-Resolution

全部标签

java - 多个父类(super class)和代码重用

这个问题与Android有关,因为我的需求存在于该领域,但这个问题仍然适用于整个Java;我将在这里使用一些Android术语,例如Activity、FragmentActivity、ListActivity等...我需要实现一个抽象基类,其中包含必须在整个应用程序中使用的功能,更具体地说,每个Activity都必须使用此功能,但我希望它由基类自动处理.我的问题是我在应用程序中有许多不同类型的Activity,例如Activity、FragmentActivity和ListActivity,所有这些都扩展了Activity(当然要减去Activity)。由于基类中的代码对于Activi

java - 我可以覆盖一个隐藏的(但公共(public)的)方法并调用它的 super 方法吗?

为了解决Android的WebView的怪癖,我需要重写一个非公共(public)API。api是隐藏的,但它是公开的:/***...**@hidependingAPIcouncilapproval*/publicbooleanselectText(){...}所以我可以通过简单地在我自己的WebView类中声明它来覆盖它,减去@Override:publicbooleanselectText(){...}是否可以从我的覆盖中调用super方法?通常我可以写:publicbooleanselectText(){returnsuper.selectText();}但是方法是隐藏的,所以s

java - 在 Java 中使用带有引用的 super()

我有三个类(class)classWithInner{classInner{}}publicclassInheritInnerextendsWithInner.Inner{//constructorInheritInner(WithInnerwi){wi.super();}}这个例子摘自Eckel的ThinkinginJava。我不明白为什么我们不能调用wi=newWithInner();而不是.super()?在调用wi.super()时,我们正在调用Object的默认构造函数,不是吗? 最佳答案 内部类维护对外部实例的引用(st

java - 错误 : Can't find common super class of

我正在尝试使用Proguard处理MSWindows桌面应用程序(使用Eclipse提供的SWT库的Java6SE)。我收到以下严重错误:Unexpectederrorwhileperformingpartialevaluation:Class=[org/eclipse/swt/widgets/DateTime]Method=[(Lorg/eclipse/swt/widgets/Composite;I)V]Exception=[java.lang.IllegalArgumentException](Can'tfindcommonsuperclassof[java/lang/String

java - 创建子类的实例是否会自动创建其父类(super class)对象?

如果我创建一个子类的对象,那么是否也会创建子类继承的父类(superclass)对象?如果不是那么如何通过创建Thread类的子类(在多线程中)调用Thread类构造函数并创建Thread对象? 最佳答案 子类的实例是父类(superclass)的实例。只创建了一个对象,但作为该创建的一部分,构造函数调用一直链接在一起,一直到java.lang.Object。例如:publicclassSuperclass{//Note:Iwouldn'tnormallyusepublicvariables.//It'sjustforthesake

java - 方法不重写或实现父类(super class)型的方法

我正在使用继承和多态性创建一个模拟员工数据库。尝试覆盖父类(superclass)方法时遇到以下错误。HourlyEmployeeisnotabstractanddoesnotoverrideabstractmethodresetWeek()inEmployeepublicclassHourlyEmployeeextendsEmployee^HourlyEmployee.java:43:error:methoddoesnotoverrideorimplementamethodfromasupertype@Override^HourlyEmployee.java:54:error:met

java - 父类(super class)方法和接口(interface)默认方法冲突解决

考虑下面的例子,publicclassTestingextendsSupClsimplementsIntf{publicstaticvoidmain(String[]args){newTesting().test();}}classSupCls{publicvoidtest(){System.out.println("FromSupCls");}}interfaceIntf{publicdefaultvoidtest(){System.out.println("FromIntf");}}如您所见,SupCls类和Intf接口(interface)之间没有任何联系。但两者都定义一种通用方

java - 调用 super 构造函数时引用 "this"?

我有一个类A并编写了一个子类B。A只有一个参数化的构造函数。B必须调用A的super构造函数。现在我想使用一个对象作为参数。这个对象应该调用B的方法。所以参数对象必须持有B的引用或者必须是内部类。publicB(){super.(newparameter(this))}现在当我想调用构造函数时...Eclipse说:Cannotreferto'this'nor'super'whileexplicitlyinvokingaconstructor我看到的唯一解决这个问题的方法是设置方法,将“this”实例注入(inject)参数对象。我不想编辑父类(superclass)。你有没有更好的办

java - 如何解决 'Implicit super constructor classA() is not visible. Must explicitly invoke another constructor' ?

我有一个类“ClassA”,它有私有(private)构造函数。publicfinalclassClassA{privateClassA{}publicstaticvoidmain(String[]arg)}{;;;}}现在,我正在扩展“ClassA”类[final关键字在执行此操作之前被删除]publicclassClassBextendsClassA{publicstaticvoidmain(String[]arg)}{;;;}}现在,我得到IplicitsuperconstructorclassA()isnotvisible。必须显式调用另一个构造函数。这是什么意思,如何解决?注

java - 在构造函数重载的情况下如何同时调用 super(...) 和 this(...)?

我以前从来不需要这样做,但由于两者都必须是构造函数中的“第一”行,应该如何处理呢?对于这种情况,最好的重构是什么?这是一个示例:publicclassAgreementextendsPostable{publicAgreement(Useruser,DatadataCovered){super(user);this(user,dataCovered,null);}publicAgreement(Useruser,DatadataCovered,Priceprice){super(user);if(price!=null)this.price=price;this.dataCovered