JAVA中关于print打印(对象)和return返回的打印顺序

Posted LIN阿涛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中关于print打印(对象)和return返回的打印顺序相关的知识,希望对你有一定的参考价值。

首先我们来看这一段代码

 

public class mytest {
    public static void main(String[] args) {

        System.out.println(new mytest());
    }

    public String toString() {

        System.out.println("print");

        return "return";

    }

}

 

请问以上代码的输出顺序是什么?


A  print return

B  return print

C return

D print

E 编译通过不了

 


==============================

仔细思考以上内容

=======================================



答案是 A

 


          首先输出print 再输出 return

这时大家就好奇了为什么同样是输出为什么输出的是print return ,而不是return print呢

原因是:程序首先执行了new mytest()实例化对象,但mytest类和 toString构成了重写

所以会优先调用打印输出print,当打印执行完之后再返回return 所以最后输出 print return

 

 

以上是关于JAVA中关于print打印(对象)和return返回的打印顺序的主要内容,如果未能解决你的问题,请参考以下文章

TP5中关于try和catch

新人,Java中关于Scanner的问题

Java中关于String对象引用的问题?

带你整理面试过程中关于多线程的编程问题

XML 中关于 dataSource 数据源信息配置

java中关于创建对象,初始化和给类赋值的问题。