Java面向对象之内部类

内部类

概念:什么是内部类
在一个类的内部写的类就是内部类,会生成独立的字节码文件

创建语法

非静态内部类

外部类.内部类 对象名 = new 外部类().new 内部类();

静态内部类

外部类.内部类 对象名 = new 外部类.内部类();

Demo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class NeiBuClass {
public static void main(String[] args) {
_10HomeWork.PhoneCall pc= new _10HomeWork().new PhoneCall("13598746531");
pc.showNum();
}
class PhoneCall{ //手机卡的内部类
String num; //创建num字段
PhoneCall(String num){ //将接收到的参数赋给num
this.num = num;
}
void showNum(){
System.out.println("你的手机卡号该不会是"+num+"吧"); //打印输出
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class  NiMingClass{
/*
匿名内部类的Demo
*/
public static void main(String[] args) {
Test test = new userTest(); //利用Java多态创建对象
//匿名内部类的书写
run(new Test(){ //传入对象,类名已经匿名了
public void speak(){
System.out.println("火锅");
}
});
run(test);
}
static void run(Test test){
test.speak(); //调用speak方法
}
}
interface Test{ //创建接口
void speak();
}
class userTest implements Test{ //接入接口
public void speak(){ //覆写speak方法
System.out.println("今天晚上吃什么");
}
}
❤赏点钱让我买杯快乐水8❤