java在类中创建自己对象_java 在类中创建自己的对象

public class A()

{

int yy=0;

public static void main(String[] agrs)

{

A aa=new A();

}

}

我想知道的是,A是一个类,而main方法是A类中的一个方法,为什么可以在main方法里创建一个自己的对象?那是不是也可以使用aa.main(参数)的形式来调用它?请高人解释。

public static void main(String[] agrs)

我知道这是程序主入口

我想知道的是为什么可以这样在类的内部创建自己的对象,那不是无限循环创建对象了吗

你主要的疑惑是,为什么类中的方法可以创建它本身。

类和方法的写法都是一种声明, 所谓声明,就是说是对行为的描述,而不是要真正执行它。

例如class 小狗{

public void 吃饭(){

小狗 abc = new 小狗();

}

}

这里声明 一个叫小狗 的 类, 他有一个方法,吃饭()。到这里没有任何问题, 我只是描述了一个类,和吃饭的行为。这个时候系统什么都没发生, 因为只是声明而已。说的是小狗  “可以” 吃饭, 但并不是声明完就必须立即调用吃饭()。但这样的话,谁去调用他呢, 我可以写另一类 比如person类,但是谁去调用person呢?说来说去就必须有一个不需要创建对象也能调用的方法。java里面就是main方法(这个main方法只需要放到任意一个类中即可)。public static void main(String[] args) {

小狗 a = new 小狗();

a.吃饭();

}

当你用java执行这个类时,系统会寻找main方法作为入口执行。流程如下

进入 main方法,调用 小狗   a=  new 小狗(), 这样系统才真正创建一个小狗 类(class)的 一个实例(instance),2  然后调用 a.吃饭(),  这个时候系统执行了吃饭的方法, 即又创建了abc, 一个新的小狗,3 程序结束, 返回。

系统寻找main的时候不关心main是否在哪个类里,所以实际上main和他的宿主在生命周期上没有关联。之所以写在这个类里只是不需要import类,图方便而已。上面2中,创建a小狗, 吃饭()调用后,创建了abc小狗, 两者并没有什么关系

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值