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⼩狗, 两者并没有什么关系
java接口可以创建对象吗
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论