内部类
Car
package com.itheima.a10;
public class Car {
String carName;
int carAge;
String carColor;
public void show(Car this){
System.out.println(this.carName);
Engine engine = new Engine();
engine.engineName= "发动机";
System.out.println(engine.engineName);
}
class Engine{
String engineName;
int engineAge;
public void show(){
System.out.println(carName);
System.out.println(engineName);
}
}
}
Test
package com.itheima.a10;
public class Test {
public static void main(String[] args) {
Car c=new Car();
c.carName="大众";
c.carAge=1;
c.carColor="粉色";
c.show();
}
}
总结
内部类分类:成员内部类、静态内部类、局部内部类、匿名内部类
成员内部类
Outer
package com.itheima.a11;
public class Outer {
public class Inner {
static int x = 10;
}
public Inner getInstance(){
return new Inner();
}
}
Test
package com.itheima.a11;
public class Test {
public static void main(String[] args) {
// 创建对象的方式
// 类名 对象名=new 类名();
// Student s=new Student();
// 我要创建的是谁的对象
// 内部类的对象
Outer.Inner oi=new Outer().new Inner();
Outer o= new Outer();
o.getInstance();
}
}
静态内部类
总结
局部内部类
匿名内部类