Java——封装

news2024/11/17 7:23:46

要想搞明白封装,首先要清楚什么是 包

包的概念:

在面向对象的体系中,提出了一个软件包的概念,即:为了更好的管理类,把多个类收集在一起称为一组,称为软件包。

包的作用:

1、一个包中的类可以被其他包中的类使用,同样一个包中的类也可以设置为不被其他包中类使用,根据自己需求灵活变动

2、在同一个工程中允许存在相同名称的类,只要处在不同的包中即可

导入包中的类:

1、Java提供了很多现成的类供我们使用,例如Date类,可以使用 java.util.Date 导入 java.util 这个包中的 Date类

public class Test {
    public static void main(String[] args) {
        java.util.Date date = new java.util.Date();
        //得到一个毫秒级别的时间戳
        System.out.println(date.getTime());
    }
}

2、还可以使用 import 语句导入包

 如果要使用 java.util 中的其他类,可以使用 import java.util.*

 但是上面这种形式容易出现冲突,如:util 和 sql 中都存在一个Date类,这时就会出现歧义,编译出错,如下:

 这种情况下,需要使用完整的类名

import java.util.*;
import java.sql.*;
public class Test {
    public static void main(String[] args) {
        java.util.Date date = new java.util.Date();
        System.out.println(date.getTime());
    }
}

3、可以使用 inport static 导入包中静态的方法和字段,如下:


自定义包

基本规则:

1、在文件的最上方加上一个 package 语句指定该代码在哪个包中

2、包名需要尽量指定成唯一的名字,通常会用公司的域名的颠倒形式(例如:com.baiducc.demo)

3、包名要和代码路径相匹配,例如创建 com.baiducc.demo 的包,一定会存在一个对应的路径 com/baiducc/demo 来存储代码

4、如果一个类没有 package 语句,则该类被放到一个默认包中


当知道了包的概念后,再来看

封装的定义:

封装就是将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互

访问修饰限定符:

java中主要通过类和访问权限来实现封装:类可以将数据以及封装数据的方法结合在一起,更符合人们对事物的认知,而访问权限用来控制方法或字段能否直接在类外使用,Java中提供了四种访问限定符:

 通过访问修饰限定符和包的相互组合,即可实现不同访问权限需求

一般情况下成员变量设置为private,成员方法设置为public

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1676348.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“打工搬砖记”中吃什么的轮盘功能实现(二)

文章目录 打工搬砖记转盘主要的逻辑实现转盘的素材小结 打工搬砖记 先来一个吃什么轮盘的预览图,这轮盘文案加字呈圆形铺出来,开始后旋转到指定的选项处停下来。 已上线小程序“打工人搬砖记”,可以扫码进行预览观看。 转盘主要的逻辑实现…

springMVC基础使用(示例)

maven依赖&#xff08;javax.servlet-api版本与spring-webmvc班恩要匹配不然会报java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRespons&#xff09;&#xff1a; <dependencies><dependency><groupId>javax.servlet</groupId><arti…

Java面试题:ConcurrentHashMap

ConcurrentHashMap 一种线程安全的高效Map集合 jdk1.7之前 底层采用分段的数组链表实现 一个不可扩容的数组:segment[] 数组中的每个元素都对应一个HashEntry数组用以存放数据 当放入数据时,根据key的哈希值找到对应的segment数组下标 找到下标后就会添加一个reentrantlo…

Open AI再次定义AI PC?

从传统的文字交互&#xff0c;到语音和图像交互——Open AI再次提升了人们对AI PC的想象空间。 这种更贴近人类间交互的模式&#xff0c;会多大程度改变目前PC的生态&#xff1f; 随着苹果M4芯片、高通骁龙X的发布&#xff0c;AI PC也逐渐成为了市场热议的产品。 从各家PC厂…

OpenAI 深夜发布 GPT-4o,完全免费,强到让人恐怖,这还是AI?!又一批人将面临失业...

文章首发于公众号&#xff1a;X小鹿AI副业 大家好&#xff0c;我是程序员X小鹿&#xff0c;前互联网大厂程序员&#xff0c;自由职业2年&#xff0c;也一名 AIGC 爱好者&#xff0c;持续分享更多前沿的「AI 工具」和「AI副业玩法」&#xff0c;欢迎一起交流~ 看了 OpenAI 最新的…

算法-卡尔曼滤波之卡尔曼滤波的其他三个方程

一维不带噪声的卡尔曼滤波方程有五个&#xff0c;下面分析剩余的三个方程&#xff1a; 分析第一个例子&#xff0c;其中测量值和真实值之间的误差属于测量误差&#xff08;使用准确性来描述&#xff09;&#xff0c;由于测量误差是随机的&#xff0c;我们可以使用方差来描述&am…

电力物联网-(2)系统设计

电力物联网系统设计 前言 在此之前写过《电力物联网系统设计》开篇文章&#xff0c;上一篇文章主要的概述性的内容&#xff0c;发表之后总觉得对电力物联网系统设计这一方面还只是开了一个头&#xff0c;没有把相关的内容讲解清楚&#xff0c;于是经过一段时间的构思终于产出了…

DTAS 尺寸公差分析及尺寸链计算-建模神器 — 用户DIY装配

工业互联网&#xff08;工业4.0) 是未来智能制造的核心&#xff0c;工业软件是智能制造的灵魂。 相关工业软件及系统的自主研发是智能制造和质量升级转型亟需解决的卡脖子环节&#xff0c;而公差分析软件系统是前期质量研发精准设计、降本增效的关键。 数字化时代&#xff0…

【windows小知识#1】ISO镜像,OEM、Retail这些到底是什么意思

汇总一下每个版本windows会衍生哪些镜像出来&#xff0c;以windows7为例 这些文件名代表的是不同版本和不同语言的Windows 7操作系统的安装光盘映像&#xff08;ISO文件&#xff09;。这些文件主要区分为以下几个方面&#xff1a; 语言&#xff1a;这些文件都是中文版&#x…

算法学习笔记(一)-快速幂

#问题的引入-对于幂次方的求解我们怎么可以最大限度的降低时间复杂度呢 #对于一个基本的幂次运算&#xff0c;c代码如下示例 long long int myPower(int base,int power) {long long int result 1 ;for (int i 1 ; i < power ; i){result * base ;}return result ; } #…

架构每日一学 6:作为架构师,你必须学会寻找商业模式

本文首发于公众平台&#xff1a;腐烂的橘子 在前面的文章中&#xff0c;我们已经讲了架构师的两条生存法则&#xff0c;第一条是有且仅有一个目标&#xff0c;感兴趣的可以看一下原文&#xff1a; 架构每日一学 2&#xff1a;架构师六个生存法则之一&#xff1a;架构必须有且仅…

IC卡16个扇区详解:揭秘智能卡的存储结构

目录标题 IC卡的基本结构扇区的划分扇区的功能扇区的安全性扇区的应用NFC卡和IC卡&#xff0c;从外观怎样区分总结 在智能卡的世界里&#xff0c;IC卡&#xff08;Integrated Circuit Card&#xff09;以其安全性和便捷性成为了现代生活中不可或缺的一部分。无论是用于支付、身…

【讲解下iCloud如何高效利用】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

【算法】二分查找——二分查找

本节博客详述“二分查找”并且以例子来进行讨论&#xff0c;有需要借鉴即可。 目录 1.二分查找1.1使用前提1.2模板 2.题目3.题解代码示例4.二分查找的一般模板5.总结 1.二分查找 1.1使用前提 使用的条件&#xff1a;数组具有“二段性”&#xff0c;二段性指的是数组可以根据某…

2024 年 4 月区块链游戏研报:市场低迷中活跃用户数创新高

2024 年 4 月区块链游戏研报 作者&#xff1a;stellafootprint.network 数据来源&#xff1a;GameFi 研究页面 2024 年 4 月&#xff0c;Web3 游戏领域在经历 3 月创纪录的表现后&#xff0c;迎来了显著波动。比特币自历史高位回调&#xff0c;月跌幅达到 10.4%。与此同时&a…

详细分析Vue3中的ref(附Demo)

目录 前言1. 基本知识2. Demo 前言 由于新项目涉及Vue3&#xff0c;本着探究问题的本质研究所不会的疑问 1. 基本知识 ref 是 Vue 3 中用于创建响应式数据的函数 接收一个初始值并返回一个包含了该值的响应式引用对象与 Vue 2.x 中的 data 属性不同&#xff0c;ref 返回的是…

Navicat Premium安装pojie版

下载、安装mysql&#xff0c;环境变量配置 1、官网下载mysql&#xff1a;https://www.mysql.com/downloads/ 下载成功&#xff0c;进行安装 一直点下一步 验证&#xff0c;开始中搜索mysql 说明安装成功 环境变量配置 默认安装路径C:\Program Files\MySQL …

2024年高考倒计时精品网页

2024年高考倒计时精品网页 前言效果图部分代码领取源码下期更新预报 前言 随着季风轻轻掠过&#xff0c;岁月如梭&#xff0c;再次迎来了这个属于青春与梦想交汇的时刻——高考。这是一场知识的较量&#xff0c;更是一次意志的考验。在这最后的冲刺阶段&#xff0c;每一刻都显…

Vision Mamba 代码调试---Pycharm+AutoDL

《AutoDL使用手册》 1. 服务器租用与配置 先上项目链接&#xff1a; GitHub - hustvl/Vim: Vision Mamba: Efficient Visual Representation Learning with Bidirectional State Space Model 1.1 服务器租用与配置 根据环境要求&#xff0c;去租一个服务器&#xff1a;AutoDL算…

一文读懂通用漏洞评分系统CVSS4.0:顺带理清CVE、CWE及其与CVSS之间的关系

事件响应和安全团队论坛 (FIRST&#xff0c;Forum of Incident Response and Security Teams) 于 2023 年 11 月 1 日正式推出第四版通用漏洞评分系统 (CVSS 4.0&#xff0c;Common Vulnerability Scoring System version 4.0)。CVSS 4.0 是评估计算机系统安全漏洞严重性的行业…