草庐IT

super_attribute

全部标签

Java:强制子类覆盖父类(super class)的方法

我怎样才能写一个方法并强制子类覆盖这个方法。在Eclipse中,它应该显示在快速修复对话框中:“添加未实现的方法”。谢谢 最佳答案 HowcanIwriteamethodandforcethesubclassestooverridethismethod.将方法声明为抽象:Eclipse将为所有(未实现的)抽象方法和接口(interface)方法提供“添加未实现的方法”选项。 关于Java:强制子类覆盖父类(superclass)的方法,我们在StackOverflow上找到一个类似的问题

java - 在 Java 中访问 super() 类的私有(private)变量 - JChart2D

我在Java中扩展了一个类,它有一个私有(private)变量,我想在它被更改之前获取它的值。在父类(superclass)中没有访问此变量的方法。我试过super().m_zoomArea(变量在jChart2D的ZoomableChart类中)。当调用mouseDragged方法时,变量会更新。我已经重写了这个方法,想在更新之前获取变量的值。 最佳答案 您可以访问任何类的私有(private)变量,但这是一个坏主意,因为您违反了OOP的基本原则之一-封装。但有时程序员被迫打破它。这是解决您问题的代码:扩展类publicclass

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)。你有没有更好的办