Tag: inheritance

为什么数据使用实例变量进行阴影操作在我的程序中不起作用?

对于游戏GUI,我有三个类,如下所示: – //this is the parent class. import javax.swing.*; import java.awt.*; public class GameGui extends JFrame{ public void decorateButton(JButton aBut,Color forg,Color back){ Font afont = new Font(Font.SANS_SERIF,Font.PLAIN,18); aBut.setFont(afont); aBut.setBackground(back); aBut.setForeground(forg); } public void setFrameDefault(){ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setSize(400, 475); this.setLocationRelativeTo(null); this.setResizable(false); } public void setConstraints(int x,int y,int weightx,int weighty,GridBagConstraints gbc){ gbc.weighty=weighty; gbc.weightx=weightx; gbc.gridx=x; gbc.gridy=y; } } //this […]

Bean Validation Groupinheritance不适用于Group Sequence Provider

我目前正致力于实现一个存储包含国内和国内地址的联系信息的应用程序,但也可以禁用地址。 我试图定义三个validation组:一个用于始终validation信息的超级组和两个用于不同地址状态的子类。 public interface ContactValidation {} public interface DomesticValidation extends ContactValidation {} public interface ForeignValidation extends ContactValidation {} 然后我在联系人类上定义了一个@GroupSequenceProvider。 public class ContactGroupSequenceProvider implements DefaultGroupSequenceProvider { @Override public List<Class> getValidationGroups(Contact contact) { List<Class> defaultGroupSequence = new ArrayList<Class>(); if(contact.getIsForeign()){ defaultGroupSequence.add(Contact.ForeignValidation.class); } else { defaultGroupSequence.add(Contact.DomesticValidation.class); } //TODO: Add Address Disabled Case defaultGroupSequence.add(Contact.class); //Get a GroupDefinitionException without this line […]

静态抽象方法解决方法

我想在abstract class创建一个abstract static method 。 我很清楚这个问题 ,这在Java中是不可能的。 什么是默认的解决方法/替代方式来思考问题/是否有一个选项可以为看似有效的示例(如下所示)执行此操作? 动物类和子类: 我有一个带有各种子类的基类Animal类。 我想强制所有子类能够从xml字符串创建一个对象。 对于这个,除了静态之外什么都没有意义呢? 例如: public void myMainFunction() { ArrayList animals = new ArrayList(); animals.add(Bird.createFromXML(birdXML)); animals.add(Dog.createFromXML(dogXML)); } public abstract class Animal { /** * Every animal subclass must be able to be created from XML when required * (Eg if there is a tag , bird would […]

在Java中工作的隐式inheritance

任何人都可以告诉我隐式inheritance如何在java内部工作? 我的意思是,如果我创建一个类,它究竟是如何扩展JVM中的Object类的? 提前致谢。

Java让超类返回扩展类的类型

我目前的情况:我有一个超类矩阵: public class Matrix { private final float[] values; private final int numberOfRows; private final int numberOfColumns; public Matrix(int rows, int columns, float… values) { this.values = new float[numberOfRows * numberOfColumns]; this.numberOfRows = numberOfRows; this.numberOfColumns = numberOfColumns; System.arraycopy(values, 0, this.values, 0, values.length); } public Matrix scale(int scaleFactor) { //Some code that returns a scaled version […]

铸造后目标对象采用什么类?

好的,noob问题。 我正在为SCJP学习并得到3个关于对象引用错误的问题,这似乎都表明了同样的误解。 只想确认正确的见解应该是什么。 对,这是问题: 1。 1.类CodeWalkFour { 2. public static void main(String [] args){ 3. Car c = new Lexus(); 4. System.out.print(c.speedUp(30)+“”); 5.雷克萨斯l =新雷克萨斯(); 6. System.out.print(l.speedUp(30,40,50)); 7.} 8.} 9.车级{ 10. private int i = 0; 11. int speedUp(int x){ 12.返回i; 13.} 14.} 15.雷克萨斯扩展汽车{ 16. private int j = 1; 17. private int k = 2; […]

Javainheritance:为什么在父构造函数级别调用方法,调用重写的子方法?

在Fruit构造函数中调用fruitName方法,实际上是将调用委托给子类Apple类的方法! public class CallingParentMethodInInheritanceHierarchy { abstract class Fruit { String fruitName; public Fruit(String fruitName) { this.fruitName = fruitName; /* * o/p – Inside constructor – Child: Fruit name is – Apple */ System.out.println(“Inside constructor – ” + fruitName()); // doubt? } public String fruitName() { return “Parent: Fruit name is – ” + fruitName; } […]

将generics类@MappedSuperclass应用为targetEntity.Error:模型上的@ManyToOne.Unit.parent引用未知实体:models.GenericHierarchic

我有扩展其他generics类的generics类。 所有这些都是@MappedSuperclass 。 所以他们在数据库中没有自己的表。 它们也是抽象的,所以它们没有任何物体。 它们只是我的实体@Entity骨架 我的inheritance结构: Generic -> GenericDictionary -> GenericHierarchicalDictionary -> Unit Unit是@Entity类并且有对象。 @Entity public class Unit extends GenericHierarchicalDictionary {} 单元实体具有层次结构 ,这意味着实体与自身有关系,但我正在使用抽象类( @MappedSuperclass ),所以我想在该抽象类中动态定义它: 我的GenericHierarchicalDictionary: @MappedSuperclass public abstract class GenericHierarchicalDictionary<T extends Generic> extends GenericDictionary { @Required @ManyToOne(targetEntity = GenericHierarchicalDictionary.class, fetch=FetchType.LAZY, cascade = {CascadeType.ALL}) @JoinColumn(name=”parent_id”) public GenericHierarchicalDictionary parent; 但id dosnt工作。 我收到一个错误: play.api.UnexpectedException: Unexpected exception[PersistenceException: […]

这是将Java接口转换为Scala的正确方法吗?

我开始学习Scala,我将做一个简单的交叉编译器。 我会支持一些像print这样的指令。 注意:代码片段未经过测试或编译。 这是我在JAVA中要做的。 public interface Compiler{ String getPrintInstruction(); } public class JavaCompiler implements Compiler{ public String getPrintInstruction(){ return “System.out.print(arg0);” } } public class ScalaCompiler implements Compiler{ public String getPrintInstruction(){ return “print(arg0);” } } 片段下面是正确的“Scala方式 ”吗? trait Compiler { var printInstruction: String } class JavaCompiler extends Compiler { var printInstruction = “System.out.print(arg0);” } class ScalaCompiler […]

如何使用generics并从父类inheritance而不会导致名称冲突?

我在Java中有一个名为Flight的父类。 我有子类: JetFlight , NormalFlight等inheritance自Flight 。 我希望所有子类都从Comparable接口实现compareTo 。 我希望它们从Flightinheritance,因为我想使用多态(例如,启动一个Flight数组并用JetFlight , NormalFlight等对象填充它)。 这是我父类的代码: public abstract class Flight { public abstract int compareTo(Object o); } 这是其中一个子类的代码: public class JetFlight extends Flight implements Comparable { private int flightTime; public JetFlight(int flightTime) { this.flightTime = flightTime; } public int compareTo(JetFlight j) { return this.flightTime – j.flightTime; } } 由于2个错误,此代码将无法编译: […]