B is correct. The first line of main we're constructing an instance of an anonymous innerclassextending from MyThread. So the MyThread constructor runs and prints MyThread. Next, main()invokes start() on the new thread instance, which causes the overridden run() method (the run()method in the anonymous inner class) to be invoked. A, C, D, E, F, G and H are incorrect based on the logic described above.