java程序员面试金典--i++
2018-06-18 03:52:32来源:未知 阅读 ()
下列程序的输出结果是什么
public class program2 {
static {
int x = 5;
}
static int x,y;
public static void main(String[] args) {
x--;
myMethod();
System.out.println(x + y++ + x);
}
private static void myMethod() {
y=x++ + ++x;
}
}
结果是2。这道题如果不懂以下知识点很难做对啊,不信可以运行试试
static变量(全局变量)的特性
各种属性的加载顺序
i++,++i的区别
static变量的特性
一.静态成员变量
1.属于整个类而不是某个对象实例,所以可以直接通过类名和对象名去调用。
2.静态成员属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收
二.属性加载顺序
一般的,执行顺序如下:
父类静态变量、父类静态代码块、子类静态变量、子类静态代码块、父类非静态变量、父类非静态代码块、父类构造方法、
子类非静态变量、子类非静态代码块、子类构造方法。
三.i++,++i的区别
这个就百度吧
接下来说说代码流程
public class program2 {
static {
int x = 5;//声明一个局部变量,对后面没有影响
}
static int x,y;//默认0
public static void main(String[] args) {
x--;//x=-1
myMethod();
System.out.println(x + y++ + x);//1+0+1
}
private static void myMethod() {
y=x++ + ++x;//等价于y=(x++)+(++x)从右向左y = 0+ 0 x = 1;
}
}
欢迎加入学习交流群569772982,大家一起学习交流。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash