我懂你的意思,亲。你不明白的应该是在主类怎么调用内部类的方法,其实就是内部类对象的创建问题哈 亲。下面我举个例子 希望亲能进一步的对内部类对象的创建和方法的使用有很好的了解哦 ,注意我再里面的注释哦,应该很好理解的,如果还不懂亲可以继续问哈,一直在呢
public class A
{
public static void main(String[] args)
{
A a=new A();//首先创建一个主类对象
B b=a.new B();//创建一个内部类对象
/*
由于内部类是在主类当中。当创建内部类对象的时候,在new前面
需要带上主类对象(就相当于路径一样,B在A的里面我要找到B肯定要先找到A是吧)
希望这点亲能好好理解,这就是内部类对象的创建
*/
b.ptm();//调用内部类的方法
}
class B
{
public void ptm()
{
System.out.println("你好啊,我是内部类方法");
}
}
}
如果亲喜欢就给个赞和满意哦 谢谢
2楼已经说的很清楚了!!!下面结合2楼的调用内部类方法事例,具体报错,可能是你的调用方式写错了?因为你没有贴代码,也没有贴异常,无从知晓!根据下面一个例子,你对比一下吧!
public class A {
public static void main(String[] args) {
B b = new A().new B();
b.run();
C c = new C();
c.run();
}
static class C {
public void run() {
System.out.println("内部类C的方法");
}
}
class B {
public void run() {
System.out.println("内部类B的方法");
}
}
}
以你题目的意思,
如果是成员内部类
创建B对象应该是这样的:
B b = new A().new B();
例如:
public class A{
public static void main(String[] args) {
B b = new A().new B();
}
class B{
}
}
如果是静态内部类:
B b = new B();
例如:
public class A{
public static void main(String[] args) {
B b = new B();
}
static class B{
}
}
希望对你有帮助
你这问题没人能解答,也不说具体点