现在的位置: 首页 > 综合 > 正文

java数据类型相关的问题

2013年09月01日 ⁄ 综合 ⁄ 共 537字 ⁄ 字号 评论关闭

今天在论坛里看到一个与java类型相关的题目,感觉很好!

public class Print_Test {
	public static void main(String[] args) {
		 char c = (char) 2354;
		 System.out.println(c);
		 char c1 = (char) 2354;
		 System.out.println(+c1);
		 char c2 = (char) 2354;
		 System.out.println(' '+c2);
	}
}

这段程序输出结果为:

?
2354
2386

感觉不怎么清楚是怎么回事,看了论坛高手回答:

因为在java里面很重要的一个特性就是多态,这里System.out.pringln();虽然看上去都是调用同一个方法,但是在实际情况下,System.out.pringln()实现了方法的重载,于是就出现了:

System.out.pringln(c),调用的是System.out.pringln(char c); 

System.out.println(+c1)和System.out.println(' '+c2),调用的是System.out.println(int x);

这样调用同一个方法,同一个变量值但不同类型,可能出现不同的值。因为它们实际调用的是不同的方法。

抱歉!评论已关闭.