Java中包和导入,范围修饰符、内部类(详解)

本文详细介绍了Java编程中的包管理,包括命名规则和常见包的用途。接着讲解了导入机制,以及何时使用import关键字。此外,还探讨了Java中的四种内部类:成员内部类、静态内部类、局部内部类和匿名内部类,分析了它们的特点和使用场景。最后,总结了范围修饰符(public、protected、default、private)的访问权限。
摘要由CSDN通过智能技术生成

一、包和导入

1.1、包

报的本质就是文件夹,创建包来存放Java类是为了让Java类便于管理

包的命名:

规则:

​ 1.有数字、字母、下划线、美元符组成

​ 2.数字不能开头

​ 3.不能和关键字重名

规范:

​ 1.全小写,多个单词用.连接

​ 2.公司域名倒着写

常看见的包的命名:

​ 1.test:测试包

​ 2.bean/entity/domain:实体包

​ 3.service:业务包

​ 4.util/utils:工具包

​ 5.dao:data access object 数据访问对象,数据库的功能

​ 6.vo:value object

关键字:package

package 包结构;
//用来表示当前类属于那个包中

注:这条语句必须是Java文件的第一条语句

1.2、导入

当一个包中的类使用到了其他包中的类时,需要将这个要使用的类导入进来

关键字:import

import 包结构.类名

如果导入的多个类在同一个包中,可以通过*来简化

注:

​ 1.lang包中的类在使用时无需导入

​ 2.包结构.类名这段内容称为全限定类名、类的完整了路径、全类名、类全名

二、范围修饰符

范围修饰符也称权限修饰符,它用来限制成员变量和成员方法的使用范围

public:公共的,任何类都能访问公共的成员

protected:受保护的,只能在同包中访问,其他包中只有子类能访问

[default]:默认的,只能在同包中访问

private:私有的,只能在本类访问

publicprotected[default]private
本类中
同包的其他类×
其他包中的子类××
其他包中的无关类×××

三、内部类

3.1、概念

在一个类中定义的类就叫内部类(inner class),外面的类就叫外部类(outer class)

内部类的分类:

​ 1.成员内部类

​ 2.静态内部类

​ 3.局部内部类

​ 4.匿名内部类

内部类的特点:

​ 1. 内部类可以访问到外部类中的所有成员,包括私有的

​ 2.内部类编译后也生产.class文件,文件名:外部类名$内部类名.class

3.2、成员内部类

概念:定义在其他类中成员位置上的类

特点:

​ 1.成员内部类中只能定义非静态的属性和方法

​ 2.内部类可以访问到外部类中的所有成员,包括私有的

内部类的创建方式:

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

注:内部类中访问外部类的同名成员时,外部类名.this.外部类中的同名成员

3.3、静态内部类

概念:使用静态修饰的成员内部类

特点:

​ 1.静态内部类中可以定义非静态的成员,也可以定义静态的成员

​ 2.静态内部类只能访问外部类中的静态成员

静态内部类对象的创建:

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

概念:定义在其他方法内部的类

特点:

​ 1.局部内部类中只能定义非静态的成员

​ 2.局部内部类的对象只能定义在它的方法中,局部内部类的定义之后

注:局部内部类编译后的.class文件的文件名:外部类$序号内部类.class

3.5、匿名内部类

概念:使用使用匿名的方式创建一个类(接口)的子类(实现类)对象,匿名内部类本身就是一个对象

new 父类/接口 (){
    //重写;
};

特点:

​ 1.匿名内部类本身就是一个对象

​ 2.一般匿名内部类中不会定义任何属性和方法

​ 3.一般使用匿名内部类都是用于创建抽象类和接口的子类对象

注:匿名内部类编译后的.class文件的文件名:外部类$序号.class

//重写;

};


特点:

​	1.匿名内部类本身就是一个对象

​	2.一般匿名内部类中不会定义任何属性和方法

​	3.一般使用匿名内部类都是用于创建抽象类和接口的子类对象

注:匿名内部类编译后的`.class`文件的文件名:`外部类$序号.class`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柒分、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值