0
点赞
收藏
分享

微信扫一扫

Java自学|内部类


Java自学|内部类

1.概念

  • 内部类可以直接方法外部类的属性和方法
  • 可以通过外部类来实例化内部类

2.实例

先定义一个Outer类,它有一个私有属性age和共有方法out,还有一个内部类Inner:

public class Outer {
private int age;
public void out(){
System.out.println("out");
}

//内部类
class Inner{
public void in(){
System.out.println("in");
}
}
}

现在我们来实现,我们new一个outer对象:

Outer outer = new Outer();

我们是不能通过outer来访问其内部类Inner的,那么我们如果需要访问Inner怎么样来实例化呢?

public class Application {
public static void main(String[] args) {
Outer outer = new Outer();
Outer.Inner inner = outer.new Inner();
inner.in();
}
}

这样就可以了,这种操作,我也是没想到的,还能这样new。

再说说Inner的特点:

public class Outer {
private int age;
public void out(){
System.out.println("out");
}

//内部类
class Inner{
public void in(){
System.out.println("in");
System.out.println(age); //直接访问了外部类的私有属性
out(); //调用了外部类的方法
}
}
}

我们可以发现,内部类的方法可以调用外部类的方法,但是外部类的方法不能调用内部类的方法,内部类也可以访问外部类的私有属性。

内部类就好像是一个方法一样,只不过外部类的方法不能调用内部类的方法。

世上没有白走的路,每一步都算数!

跟上狂神说Java!

每个牛B的人背后都有段苦逼的岁月,只要像sb一样的坚持,终将牛B!


举报

相关推荐

0 条评论