3 回答
TA贡献217条经验 获得超353个赞
意思是间接调用了两个打印语句,结果是打印了两个字符串。
站在计算机的角度分析问题:(现在开始我是计算机)
1、我要找到含有main的方法。。。找到了如下:
main(){
storename obj = new storename();
obj.display();
obj.printf();
}
2、我看到了main这个方法里有三行代码(每个分号就是一个行)接下来我要一行一行执行
首先是第一行,我看到了storename obj = new storename();
这段太长了,作为计算机,我要按照优先级一个一个看。“=”号优先级最低,最后看,我会先看“=”号右面的
new storename(); 看到这里,我要把模版storename中的所有代码,真的加载到内存中去(加载到内存里了就可以使用了,否则只能是模版,storename中的方法及变量只能看不能用)。
3、好了,storename中的所有方法都能用了。为了使用方法,命个名字吧,叫obj,这里存放了“一堆代码(storename)”的地址,通过地址去找就方便了。
4、第二行代码,obj.display();表示通过地址obj(这个通常叫做实例),obj中的一堆代码里确实有display
就是
void display(){ System.out.printf("welcome to my store"); }
看到这里,我(计算机)就打开在屏幕上打印了一句话,
welcome to my store
……
TA贡献3条经验 获得超1个赞
class storename和public class StoreName 都是类,后者用public修饰了class StoreName,那么这个类就是公开的,公开的就是可以随意访问。(public用来修饰公开的)
storename obj = new storename(); 是把storename(创建)实例化成对象,就是实例化一个对象。如果一个类实例化成对象那么这个对象就具有这个类里面的方法,而 obj.display();obj.print();就是调用这个对象里面的方法。
添加回答
举报