我有三个类的模拟:实体,植物和动物(植物和动物扩展实体). 我想要一个方法能够对三个数组进行排序,数组中的元素都继承自同一个类. 有没有办法将所有数组作为父类传递给方法. 我打电话给:sortEntityArray(AnimalList);从:void sortEntityArray(ArrayList<Entity> ListToSort) {boolean sorted = false;while (sorted == false) {sorted = true;for (int i1 = 0; i1 < ListToSort.size() - 1; i1++) {if (ListToSort.get(i1).Posit...
我目前正在为我的一个小“油漆”程序编码;到目前为止,您可以使用笔在其上绘图,放大至100倍,然后选择一种颜色.接下来我要添加的是(或者是)拖动JPanel子类的可能性,在该子类上选择要编辑的图像.基本上,通过按住鼠标右键,可以更改JPanel子类的位置,该子类位于JInternalFrame上.我有一个代码示例,它本身应该可以正常工作;至少它对我有用.要复制该问题,只需启动DragPanelTest类并在具有红色边框的组件上拖动鼠标 – 面板不会平滑拖动,而...
我实际上是在学习Threads.但是遇到一个非常基本的问题.我知道如果我继承了我的类中的接口,我必须在我继承的类中给出所有方法的定义(在该接口中提到),否则它必须被声明为abstract.现在我尝试了非常简单的代码……import java.util.*; import java.lang.*; import java.io.*;abstract class Code implements Runnable {public static void main (String[] args) throws java.lang.Exception{} }在编译中没有问题,然后我从类代码中删...
定义一个父类 public class Parent { public void run(){ System.out.println(“我会跑步”); } public Parent(){ System.out.println(“我是爸爸”); } } 定义一个子类 public class Son extends Parent { public Son(){ System.out.println(“我是儿子”); } } 定义一个测试类 public class test { public static void main(String[] args){ Son son=new Son(); son.run(); } }
我在Java的方法覆盖/重载中发现了这种显然很奇怪的行为,令人难以置信. Main()方法中的调用打印出“B_A”,而我??希望它是“B_B”.package one; public class A {public void method(A a){ System.out.println("A_A"); }public void method(B b) { System.out.println("A_B"); }public void method(){ this.method(this); } }package one; public class B extends A {public void method(A a) { System.out.println("B_A"); }publ...
参见英文答案 > What is the ‘instanceof’ operator used for in Java? 15个对不起,发布时我犯了一个错误.在这种情况下,实现I的类应该是B而不是A.在这里,我发现令人困惑的地方.此外,如果C类实现I而不是A或B,结果仍然相同.interface I{}public class A{A() {System.out.print("A: " + (this instanceof I) + " ");}public static void main(String[] args) {new C();} }class B extends A imp...
我正在尝试为Enum定义一个基类(SubStatus). 下面称为静态块的时间是什么时候?如果它们是类而不是枚举,我相信它们会在调用类构造函数后调用它们? 但是因为它们是Enums,这些更像是静态类吗?因此,当容器加载静态实例时,可能会执行静态块? 子状态public enum SubStatus {WAITING(0),READY(1);protected static final Map<Integer,SubStatus> lookup = new HashMap<Integer,SubStatus>();static {for(SubStatus s : EnumSet.allOf(S...
我试图将hello方法放在基类A中,我希望它显示在子类中设置的x的值. hello方法永远不会被A的实例调用 – 这个类是纯基类,并且从不实例化. x变量是一个分类器,用于表示调用hello方法的位置(此值实际上是持久保存到数据库中); 如果在子类中调用hello,那么如何确保x的值是子类中设置的值?public class A{protected static String x = "A";public void hello(){System.out.println(x);} }public class B extends A{protected static Str...
如何根据运行时生成的classNameString创建抽象类的特定子类的对象?假设有一个抽象的A类public abstract class A {abstract protected void method(); A getNewInstance() throws InstantiationException, IllegalAccessException{return this.getClass().newInstance();} }让N个子类即A1,A2,..,AN.需要编写以下方法,该方法将返回基于classNameString的子类对象A getSubClassObject(String classNameString)我有两个...
我是来自PHP背景的Java新手,很抱歉,如果这很明显的话.我正在尝试实现二叉树类,我已经创建了一个ADT,如下所示:public abstract class BTree<T> {private T value;private BTree<T> leftChild;private BTree<T> rightChild;private BTree<T> parent;public BTree<T> getLeftChild() { return this.leftChild; }.... } 然后我有另一个类扩展这样的类:public class BIntTree extends BTree<Integer> { }但是我希望能够在BIntTree中有...
所以我有一个问题让我的属性在超类类型场景中正确设置. 我有2个班级,因此B班是A班的专业版,让我们说……public class A {private String name;private int id;... } public class B extends A {private Date time;private int status;... }现在我要做的是使用一个方法,用于从结果集中设置A中的属性,而是将它们设置在B的实例中.public A setProperties(ResultSet rs) {A a = new A();a.setName(rs.getString(...));...return a; }我...
语境: 我有一个抽象类SuperClass,它有大量的子类,每个子类在不同的业务对象上工作,但是以类似的方式. 我需要添加一些新功能,这些功能肯定在SuperClass中占有一席之地,但是它将依赖于特定于子类的属性,我需要在超类方法中获得它.这里显而易见的方法是在SuperClass中为属性添加一个抽象getter,并让每个子类覆盖它,以便它可以在调用时发送正确的属性. 问题是:由于担心回归,我不允许更改其他子类的代码而不是我正在处理的代码. 所以我...
通常我们声明抽象类的子类是具体的,并将抽象方法覆盖为具体的.是否存在相反的用途?解决方法:想到一个用例.. 想象一下,你有一个如下课程..public abstract class Animal {// Some stuff. }然后你说,好吧,现在我想要一个长颈鹿课.长颈鹿是特定的,所以没有必要让它抽象..public class Giraffe {// Some stuff that overrides or uses the Animal behaviour. }现在给它一些时间,当你有六到七个使用你的代码的应用程序时. 然后,有一天当...
我有以下代码:1. public class Tester 2. { 3. public static void main(String[] args) 4. { 5. A a = new B(); 6. System.out.println(a.getClass()); //Prints class B 7. System.out.println(a instanceof A); //Prints true 8. System.out.println(a instanceof B); //Prints true 9. System.out.println(a.valA); //Prints 1 10. Sys...
在C中,我可以在多个文件中使用1个类,当我使用一个文件中的函数修改值时,它将全局更改该值. 在Java中,每个文件都必须拥有自己的类;当我使用一个文件中的方法更改值时,它不会全局更改此值. 例如,在C中,文件可能如下所示: someClass.hclass someClass{ private:int x; public://ConstructorsomeClass(){x = 5;}void changeVariable(); //Declaring function for later }main.cpp中int main(){someClass cClass;cClass.changeVariable...