12.6 包的声明和访问

2023-11-07

包的概念:

java的包,其实就是我们电脑系统中的文件夹,包里存放的是类文件。

当类文件很多的时候,通常我们会采用多个包进行存放管理他们,这种方式称为分包管理。

在项目中,我们将相同功能的类放到一个包中,方便管理。并且日常项目的分工也是以包作为边界。

类中声明的包必须与实际class文件所在的文件夹情况相一致,即类声明在a包下,则生成的.class文件必须在a文件夹下,否则,程序运行时会找不到类。


包的声明格式:

通常使用公司网址反写,可以有多层包,包名采用全部小写字母,多层包之间用”.”连接

         类中包的声明格式:

package 包名.包名.包名…;

         如:    传智播客 itcast.cn  那么网址反写就为 cn.itcast

注意:声明包的语句,必须写在程序有效代码的第一行(注释不算)

代码演示:

package cn.itcast; //包的声明,必须在有效代码的第一行

import java.util.Scanner;

import java.util.Random;

public class Demo {}


包的访问:

在访问类时,为了能够找到该类,必须使用含有包名的类全名(包名.类名)。

包名.包名….类名

如:java.util.Scanner

      java.util.Random

      cn.itcast.Demo

带有包的类,创建对象格式:包名.类名变量名 = new包名.类名();

     cn.itcast.Demo d = new cn.itcast.Demo();

前提:包的访问与访问权限密切相关,这里以一般情况来说,即类用public修饰的情况。

 

类的简化访问:

当我们要使用一个类时,这个类与当前程序在同一个包中(即同一个文件夹中),或者这个类是java.lang包中的类时通常可以省略掉包名,直接使用该类。

如:cn.itcast包中有两个类,PersonTest类,与Person类。我们在PersonTest类中,访问Person类时,由于是同一个包下,访问时可以省略包名,即直接通过类名访问 Person。

类名变量名 = new类名();

Person p = new Person();

当我们要使用的类,与当前程序不在同一个包中(即不同文件夹中),要访问的类必须用public修饰才可访问。

packagecn.itcst02;

publicclass Person {}


import 导包:

我们每次使用类时,都需要写很长的包名。很麻烦,我们可以通过import导包的方式来简化。

可以通过导包的方式使用该类,可以避免使用全类名编写(即,包类.类名)。

导包的格式:

import 包名.类名;

 

当程序导入指定的包后,使用类时,就可以简化了。演示如下

//导入包前的方式

//创建对象

java.util.Random r1 = new java.util.Random();

java.util.Random r2 = new java.util.Random();

java.util.Scanner sc1 = newjava.util.Scanner(System.in);

java.util.Scanner sc2 = new java.util.Scanner(System.in);

 

//导入包后的方式

import java.util.Random;

import java.util.Scanner;

//创建对象

Random r1 = new Random();

Random r2 = new Random();

Scanner sc1 = new Scanner(System.in);

Scanner sc2 = new Scanner(System.in);

import导包代码书写的位置:在声明包package后,定义所有类class前,使用导包import包名.包名.类名;


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

12.6 包的声明和访问 的相关文章

  • 全面理解java中的构造方法以及this关键字的用法(超详细)

    Hello 各位铁汁们 我是小 儿哈 今天我又来更新我的Java基础学习博客了 本篇主要内容概述 1 如何用构造方法初始化对象 2 为啥要有this这个关键字 3 this 属性名访问成员变量 成员方法 4 this 方法名 this 的用
  • instanceof,isInstance,isAssignableFrom的区别,以及isAssignableFrom()详解

    一 isAssignableFrom详解 这个方法我觉得是不好理解 感觉命名不对劲 不知道是不是错觉 Class类的isAssignableFrom Class cls 方法 如果调用这个方法的class或接口 与 参数cls表示的类或接口
  • [JavaSE]变量与类型

    来到新的篇章 最近开始从C语言的学习跳转到JAVA了 以后大概都是更新java的篇章 本文章我们讲述java中的变量与类型 目录 1 整型变量 2 长整型变量 3 双精度浮点型变量 4 单精度浮点型变量 5 字符类型变量 6 字节类型变量
  • JavaSE——StringBuffer与StringBuilder拼接字符串详细解释

    目录 一 基本了解 1 1使用字符串频繁拼接会出现什么问题 1 2 了解StringBuffer 1 3 了解StringBuilder 1 4 StringBuffer与StringBuilder的区别 二 StringBuffer的使用
  • Java 基础进阶篇(十八):正则表达式匹配规则和应用

    文章目录 一 正则表达式概述 二 正则表达式的匹配规则 三 正则表达式在方法中的应用 3 1 校验手机号 邮箱和座机电话号码 3 2 字符串的内容替换和分割 四 编程题目 4 1 表示数值的字符串 4 2 非严格递增连续数字序列 一 正则表
  • Java中的抽象类和接口

    目录 一 什么是抽象类 抽象类在实现多态中的意义 二 接口是什么 通过接口实现多态 三 抽象类和接口的区别 各位铁汁们大家好呀 今天让我们继续学习java 看看java中的抽象类和接口到底是什么 一 什么是抽象类 我们之前学过什么是类 那么
  • 判断考生成绩等级(switch case语句练习)

    判断考生成绩等级 1 考生成绩控制在 0 100 2 成绩 90 100 优 成绩 80 90 良 成绩 70 80 可 成绩 60 70 一般 成绩 0 60 不及格 要求使用switch语句 不能使用if语句 class SwitchT
  • Java String总结

    文章目录 创建String 字符串比较 字符串常量池 直接赋值 构造方法 理解字符串不可变 反射 特殊手段 char 和String StringBuffer和StringBuilder String API 创建String 常见的构造方
  • 面向对象编程(概念)

    面向对象编程 概念 面向过程 面向对象 面向过程思想 1 步骤清晰简单 第一步做什么 第二步做什么 2 面对过程是和处理一些较为简单的题目 面向对象思想 1 物以类聚 分类的思维模式 思考问题首先会解决问题需要哪些分类 然后对这些分类进行单
  • Java中ASCII码与字符之间的相互转换

    ASCII码转字符 char word char 97 强制转换 字符转ASCII码 int value a 加
  • Java文件的读写

    文件与流 在实际生活中 我们总要对文件进行操作 Java提供了流可以帮助我们读写文件 下面是常用的流类型结构图 在对文件的读写操作中 字节流可用于读写二进制文件 字符流用于读写文本文件 所谓二进制文件 指文件无字符编码格式 均由字节 Byt
  • JAVA字符串的两种定义方式的区别

    关于JAVA中两种字符串定义方式的区别 第一次写 就当复习总结一下 希望能帮到需要的人吧 我们知道在JAVA中 对于字符串的实例化方式有两种 直接赋值 String str Hello World 构造方法实例化 String str ne
  • Java概述

    Java 简介 一个苦逼的建筑专业的Java小白 什么是 Java Java 是一门面向对象编程语言 不仅吸收了 C 语言的各种优点 还摒弃了 C 里难以理解的多继承 指针等概念 因此 Java 语言具有功能强大和简单易用两个特征 Java
  • Java面向对象——图书管理系统(小白也能看的懂!)

    文章目录 一 功能介绍 二 JAVA面向对象思想 包的分装 1 book包 2 user包 较复杂 3 operation包 接口包 三 代码框架的搭建 1 book包 Book类 2 book包 BookList类 3 operation
  • 包装类自动装箱和拆箱原理

    包装类的自动装箱和自动拆箱 包装类的自动装箱和拆箱是JDK1 5的新特性 一 首先 了解自动装箱的过程 有两种自动装箱过程 第一种 128 127 之内 调用相应包装类的valueOf 例如 Integer i 12 Integer a 2
  • java虚拟机+分隔符

    java 入门 java 虚拟机 1 java虚拟机的平台可移植性 只要将java虚拟机安装于不同平台 我们编译的 class 文件就可以运行 2 jdk java开发 3 jre java运行时环境 jdk jre 下载安装后必须在环境变
  • java Socket 简单实现客户端与服务器间通信(仿聊天室)

    java Socket TCP协议简单实现客户端与服务器间的通信 打赏 执行效果 启动服务器和3个客户端 进行群聊和私聊 执行过程 服务端 首先创建服务器套接字ServerSocket对象并绑定端口 启动服务器 然后ServerSocket
  • java实现简单的生成52张牌、三个人洗牌、码牌算法

    定义一个Pocker类 用于定义牌类 package demo public class Poker private String suit 花色 private int rank 数字 构造函数 public Poker String s
  • java I/0操作 FileWriter类

    package filewriter p1 import java io FileWriter import java io IOException public class FileWriterDemo 获取当前系统的换行符 获取指定键指
  • cnds

    csdn是全球知名中文IT技术交流平台 创建于1999年 包含原创博客 精品问答 职业培训 技术论坛 资源下载等产品服务 提供原创 优质 完整内容的专业IT技术开发社区 官网 https www csdn net 经常打错顺序 cnds c

随机推荐

  • 3款最强的AI视频生成器,支持文生视频、图生视频

    当我们深入人工智能世界及其对视频创作的变革性影响时 发现人工智能视频生成器的强大功能 人工智能视频生成器正在彻底改变我们创建内容的方式 让我们比以往更轻松地以最少的努力制作高质量的视频 无论您是内容创作者 营销人员 还是只是一名人工智能爱好
  • 2020年全国高校计算机能力挑战赛C++初赛程序设计题2:九键拼音中数字与英文字母成对应关系:2--abc, 3-def, 4-ghi, 5--jkl, 6--mno, 7--pqrs, 8--tuv

    2020年全国高校计算机能力挑战赛C 初赛程序设计题2 九键拼音中数字与英文字母成对应关系 2 abc 3 def 4 ghi 5 jkl 6 mno 7 pqrs 8 tuv 9 wxyz 输入 输入一个由英文小写字母组成的字符串 长度
  • 两种方法在VMware中安装VMware Tools

    VMware Tools的主要作用是虚拟硬件的驱动 鼠标的无缝移出移入 剪贴板共享 共享主机上的文件夹等功能 方法一 1 打开 文件夹 Ubuntu 17 10 amd64 根据自己版本来看 2 在VMware Workstation主界面
  • Flume 数据流监控——Ganglia的安装与部署

    1 Ganglia的安装 1 安装 dhttpd 服务与 php yasin hadoop102 flume sudo yum y install httpd php 2 安装其他依赖 atguigu hadoop102 flume sud
  • 用Windbg解决一个Bug

    摘要 可以看到无论对于开发还是测试人员 windbg很多时候可以帮我们快速的定位问题 如果借助符号文件 Windbg完全可以实现比VC IDE更强大的调试供功能 并且有时候我们不需要源代码 不需要重新编译 直接就可以通过windbg调试和解
  • 对称加密和非对称加密

    对称加密 什么是对称加密 对称加密就是指 加密和解密使用同一个密钥的加密方式 对称加密的工作过程 发送方使用密钥将明文数据加密成密文 然后发送出去 接收方收到密文后 使用同一个密钥将密文解密成明文读取 对称加密的优点 加密计算量小 速度块
  • llinux 开发环境环境配置

    1 安装好Ubuntu后 关闭软件中的更新及检测 2 安装vmware tool 不用sudo mount t vmhgfs host mnt hgfs 不用vmhgfs fuse host mnt hgfs命令挂载 只要在安装VMware
  • C++常用函数之sort函数,头文件 algorithm

    1 sort 函数是C 标准库中的排序函数 头文件为algorithm 2 sort 函数时间复杂度 我们最熟悉的冒泡排序和选择排序的时间复杂度过高o nn 不能满足我们写题的需要 sort函数的排序方法类似于快排方法 时间复杂度为nlog
  • 图示电路中的等效电阻rab_可调电阻即电位器,各种敏感电阻的介绍和使用(电阻二)...

    上一篇讲了固定阻值电阻器 这一篇主要讲可变电阻 和敏感电阻器 电位器是一种阻值可以通过调节而变化的电阻器 又称可变电阻器 电位器和图形符号 电位器结构示意图 电位器有A C B三个引出极 在A B极之间连接着一段电阻体 该电阻体的阻值用RA
  • ctfshow-网络迷踪-密集恐惧( 世界上最大的飞机墓地)

    ctf show 网络迷踪模块 密集恐惧关卡 这一关的图片给了一个很荒凉的地方 里面有很多飞机 看样子是荒废很久了 推荐使用百度识图获取具体的地点 在通过百度搜索得到具体的经纬度 将图片下载到本地 像是一个荒凉的农场 里面有很多飞机 很明显
  • 人脸识别引擎SeetaFaceEngine中Alignment模块使用的测试代码

    人脸识别引擎SeetaFaceEngine中Alignment模块用于检测人脸关键点 包括5个点 两个眼的中心 鼻尖 两个嘴角 以下是测试代码 int test alignment std vector
  • QT关闭标题栏setWindowFlags不生效问题

    QT关闭标题栏setWindowFlags不生效问题 setWindowFlags不生效原因 主窗口使用该函数时可以正常关闭标题栏 但是当子窗口MyQDialog新建中使用到this时 并使用这个函数并不能正常闭关标题栏 问题在于这个thi
  • 常用的 c++ 函数汇总(持续更新)

    1 数组 列表类 1 列表初始化 vector
  • 2022年蓝队初级护网总结

    1 设备误报如何处理 答 来自外网的误报说明安全设备需要进行策略升级 不需要处置 如果是来自内网的误报可以和负责人协商一下看能不能解决 有必要的话添加白名单处理 2 如何区分扫描流量和手工流量 答 1 扫描流量数据量大 请求流量有规律可循且
  • 秒杀超卖 解决方案(史上最全)

    文章很长 建议收藏起来慢慢读 疯狂创客圈总目录 语雀版 总目录 码云版 总目录 博客园版 为您奉上珍贵的学习资源 免费赠送 经典图书 Java高并发核心编程 卷1 面试必备 大厂必备 涨薪必备 加尼恩免费领 免费赠送 经典图书 Java高并
  • mysql连接

    package com bochy jdbc import java sql Connection import java sql DriverManager author zhaoYuguang version 1 0 链接Mysql数据
  • 热更新_ToLua学习示例 05_LuaCoroutine

    Lua文件名字 这个是个 bytes后缀的文本 跟xlu里面用txt文件放lua代码一样外面拖拽赋值 public TextAsset luaFile null Lua状态 private LuaState lua null 这个类继承Mo
  • 【超详细】SSM框架项目实战

    相关资料网盘链接 CRM客户管理系统资料 提取码 0u04 P1 CRM阶段简介 web项目开发 如何分析 设计 编码 测试 形成编程思想和编程习惯 P2 CRM的技术架构 视图层 View 展示数据 跟用户交互 html css js j
  • Unity3d打开的时候,卡在loading界面白屏的解决方法

    本文首发于 洪流学堂 公众号 洪流学堂 让你快人几步 你好 我是你的技术探路者郑洪智 你可以叫我大智 vx zhz11235 Unity3d打开的时候 当遇见卡Loading的时候 可以看看Editor log C Users
  • 12.6 包的声明和访问

    包的概念 java的包 其实就是我们电脑系统中的文件夹 包里存放的是类文件 当类文件很多的时候 通常我们会采用多个包进行存放管理他们 这种方式称为分包管理 在项目中 我们将相同功能的类放到一个包中 方便管理 并且日常项目的分工也是以包作为边