首页 > 其他 > 详细

类与对象

时间:2015-10-17 17:29:45      阅读:195      评论:0      收藏:0      [点我收藏+]

 类与对象

1、以下代码为何无法通过编译?哪儿出错了?

 技术分享技术分享

截图:技术分享

 

错误原因:构造方法与类名相同,系统已经由一个默认构造函数,给他设置一个形参即可。

2、使用上页幻灯片中定义的类,以下代码输出结果是什么?

 技术分享

请依据代码的输出结果,自行总结Java字段初始化的规律。

运行结果:技术分享

规律:初始化有两块:静态初始化和实力初始化。执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。执行类的构造函数。

3、当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。

请自行编写示例代码验证以上结论。

代码:package hhhh;

class StaticDemo{

static int x;//静态变量x

int y;//实例变量 y

static public int getX()

{

return x;

}

static public void setX(int newX)

{

x=newX;

}

public int getY()

{

return y;

}

public void setY(int newY)

{

y=newY;

}

}

 

 

public class ShowDemo {

 

public static void main(String[] args)

{

// TODO Auto-generated method stub

StaticDemo pro=new StaticDemo();

System.out.println("静态变量x="+StaticDemo.getX());

System.out.println("实例变量y="+pro.getY());//false

StaticDemo a=new StaticDemo();

StaticDemo b=new StaticDemo();

a.setX(1);

a.setY(2);

b.setX(3);

b.setY(4);

System.out.println("静态变量a.x="+a.getX());

System.out.println("实例变量a.y="+a.getY());

System.out.println("静态变量b.x="+b.getX());

System.out.println("静态变量b.x="+b.getY());

 

}

 

}

类与对象

原文:http://www.cnblogs.com/jingjing0629/p/4887669.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!