1.Java包

1. java.awt:提供了绘图和图像类,主要用于编写GUI程序,包括按钮、标签等常用组件以及相应的事件类。
2. java.lang:java的语言包,是核心包,默认导入到用户程序,包中有object类,数据类型包装类,数学类,字符串类,系统和运行时类,操作类,线程类,错误和异常处理类,过程类。
3. java.io:包含提供多种输出输入功能的类。
4. java.net: 包含执行与网络有关的类,如URL,SCOKET,SEVERSOCKET等。
5. java.applet:包含java小应用程序的类。
6. java.util:包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包。
7. java.sql:提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API

2.内部类

链接:https://www.nowcoder.com/questionTerminal/fdaecbf8358e41db9d087be7a2babce1
来源:牛客网

1.内部类中不能定义静态成员

2.内部类可以直接访问外部类中的成员变量,

3.内部类可以定义在外部类的方法外面,也可以定义在外部类的方法体中
3.1.在方法体外面定义的内部类的访问类型可以是public,protecte,默认的,private等4种类型,创建内部类的实例对象时,一定要先创建外部类的实例对象,然后用这个外部类的实例对象去创建内部类的实例对象
3.2.方法内部定义的内部类前面不能有访问类型修饰符,就好像方法中定义的局部变量一样,但这种内部类的前面可以使用final或abstract修饰符。这种内部类对其他类是不可见的,其他类无法引用这种内部类,但是这种内部类创建的实例对象可以传递给其他类访问。

4.在方法外部定义的内部类前面可以加上static关键字,从而成为Static Nested Class,它不再具有内部类的特性,所有,从狭义上讲,它不是内部类