gpt4 book ai didi

java - 如何使用抽象类在java中使用多态性?

转载 作者:行者123 更新时间:2023-11-30 08:59:50 25 4
gpt4 key购买 nike

我有一个名为 Parent 的抽象类,它包含 2 个抽象方法,我想在扩展 Parent 类的其他类中覆盖它们。

这是我的代码:

abstract class Parent<T>
{
public T a[];
public abstract void sort(T a[]);
public abstract void searc(T a[]);
}

class B_Sort<T> extends Parent<T>
{

@Override
public void sort(T[] a) {
for(int i =1; i< a.length; i++){
for(int j = 0; j < (a.length - i); j ++){
if((((Comparable) (a[j])).compareTo(a[j+1])) > 0){
T tmp = a[j];
a[j] = a[j + 1];
a[j + 1] = tmp;
}
}
}
}

@Override
public void searc(T[] a) {
}

}

这是我运行程序的主要类和主要方法:

public class ProjectX 
{
public static void main(String[] args) {
int [] a={2,3,1,5};
Parent<Integer> cc=new B_Sort<>();
cc.sort(a);
}
}

但是,cc.sort(a) 没有正常工作,我在该行遇到错误。我的程序没有工作!为什么这是不正确的?

最佳答案

努力改变

int [] a={2,3,1,5};

Integer [] a={2,3,1,5};

基元数组(例如 int[])不能自动转换为包含这些基元的盒装版本(Integer[])的数组。

关于java - 如何使用抽象类在java中使用多态性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27078345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com