- interface Inter
- {
- void method();
- }
- class Test
- {
- public static void function()
- {
- Inter i = new Inter() //生成一个Inter对象,但是Inter只是一个接口,需要通过匿名类的方式实现这个接口并返回一个对象
- {
- public void method() //这里只是实现了接口中的抽象方法,并没有调用
- {
- System.out.println("method run!");
- }
-
- };
-
- i.method();//这里通过Inter的对象来调用里面的method方法
- }
- }
- public class TestDemo4
- {
- public static void main(String[] args)
- {
- Test.function(); //你的代码:Test.function().method();本身的书写是错误的,相当于你通过一个方法调用另一个方法,方法只能通过类或者对象调用。
- }
- }
复制代码
需要注意的地方:
1.非静态方法需要通过对象来调用,静态方法需要通过类来调用
2.方法只有通过调用才能执行,只声明方法不会执行 |