一个 .java 文件中定义多个类的问题?

publicclassTest
{
publicstaticvoidmain(String[]args)
{
WomanaWoman=newWoman();
aWoman.growHeight(120);
System.out.println(aWoman.getHeight());
}
}
classWomanextendsHuman
{
/**
*newmethod
*/
publicHumangiveBirth()
{
System.out.println("Givebirth");
return(newHuman());
}
}
classHuman
{
/**
*accessor
*/
publicintgetHeight()
{
returnthis.height;
}
/**
*mutator
*/
publicvoidgrowHeight(inth)
{
this.height=this.height+h;
}
/**
*breath
*/
publicvoidbreath()
{
System.out.println("hu...hu...");
}
privateintheight;
}
Human定义在Woman后面也能被Woman类查找到。。。和c/c++的先声明再使用完全不一样啊。。。java新手java的名字查找是怎么样的?网上没找到这方面的资料。。。
红颜莎娜
浏览 960回答 2
2回答

PIPIONE

编译完了之后每个类都是一个.class文件,哪来的先后。Java控制访问都是通过public,protected,默认包权限,private几个修饰符来限制的。在一个Java文件里定义的顶级类(非内部类)只有一个要求:只能有一个public类。

Qyouu

建议看看Java的包机制,然后再了解了解修饰范围的修饰符——————分割线——————同一个文件里面的类都是可以互相找到的,没有定义的先后的说法,Java中类的位置是无所谓的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript