cwo*_*er1 2 java overriding overloading tostring
这是我的代码,非常简单.它不是家庭作业,我通过教育书自学java:
import java.util.*;
/** @author Chris */
public class Exercise9_9 extends GregorianCalendar
{
public static void main(String[] args)
{
String[] stringList = {"s", "c", "b", "f", "e", "q", "g", "w", "i", "o"};
Integer[] integerList = {5, 7, 8, 9, 6, 5, 4, 1, 2, 3};
Calendar[] calendarList = new Calendar[10];
for (int a = 0; a < calendarList.length; a++)
{
calendarList[a] = new GregorianCalendar();
calendarList[a].set(Calendar.YEAR, ((int)Math.random()* 1000));
}
System.out.println("Largest String: " + max(stringList));
System.out.println("Largest int: " + max(integerList));
**System.out.println("Largeset date: " + (max(calendarList)).toString());**
}
public static Object max(Object[] a)
{
Arrays.sort(a);
return a[a.length-1];
}
**@Override
public String toString()**
{
return "Test";
}
}
Run Code Online (Sandbox Code Playgroud)
问题是产生三个数组:int,String和Calendar类型.然后挑选出每个类别中最大的一个(并显示答案).
这个类扩展了GregorianCalendar类,这意味着我可以访问toString()我试图覆盖的日历.但它不起作用.它就像toString()方法没有覆盖,因为我得到了默认toString()输出.但是,我正在使用Netbeans并且它确认覆盖,甚至Calendar.toString()在我单击覆盖链接时转到我.所以我被困住了,任何帮助都会受到赞赏.
这是因为你没有使用你的课程,但是GregorianCalendar:
calendarList[a] = new GregorianCalendar();
将此更改为
calendarList[a] = new Exercise9_9 ();
| 归档时间: |
|
| 查看次数: |
975 次 |
| 最近记录: |