下图,最后main方法的对象声明在哪里,只有一个包和这个类。能创建对象后直接点调用方法吗?
附:以上两个接口怎么能同时定义在同一个类里呀(没有单一职责)而且我亲自写了一次也发现没报错!
而且一个类里能有多个class吗?
下图,最后main方法的对象声明在哪里,只有一个包和这个类。能创建对象后直接点调用方法吗?
附:以上两个接口怎么能同时定义在同一个类里呀(没有单一职责)而且我亲自写了一次也发现没报错!
而且一个类里能有多个class吗?
我对于你的这些问题的回答是:
1.方法没有对象。没有这样说的。对象是类的对象。由这个类的对象调用该类中的方法,不存在什么方法对象。
2.main方法的使用由虚拟机处理。不能在代码中调用main。否则会报错。
3.
TestOne t = new TestOne();
t.test();
调用这个test方法后,程序会执行test方法内的语句,由于test被声明成void,所以它不会返回任何东西。println方法是test方法调用的,对TestOne这个对象没有任何影响,同样,TestOne也不会受到任何信息,它只是作为一个启动方法的载体被使用的,方法执行后他就被抛弃了,不存在任何价值。这就是为什么要用new TestOne().test()这行语句而不是TestOne t = new TestOne();t.test();了。因为这个对象启动test方法后就不存在任何价值了。给这个对象起名字几乎是多此一举。还不如直接用new后的对象直接调用呢。
6.java文件中允许有多个类。你用class声明多少个类都没有问题。但是,用public声明的类只能在文件中有一个。被声明成public的类只能有一个且这个类名必须与文件名相同。如图,
class a {}
class b {}
class c {}
看,这个文件中有3个没有被public声明的类,他们是a,b,c.那么,文件名可以叫a.java,也可以叫b.java或者c.java。但是如果我在里面加一句
public class d {}
则文件名必须叫d.java