一、封装的作用

1.外界不希望能够直接访问我的数据。

2.希望外界传递给类的内部的数据能够得到数据校验,不得任其随意修改。

二、封装的概念

对数据进行访问权限控制,主要依赖的就是访问权限修饰符。

访问权限修饰符: public protected [default] private

三、 如何来对数据进行封装?

1.  对需要封装的数据成员使用访问权限修饰符(private)加以修饰。

2.  在类的内部提供对外访问渠道 (set get方法)。

3.  使用代码对数据做数据校验 (一般省略不写,看需求实现)。

四、封装代码演示

下面用代码演示封装一个苹果手机类:

package com.sxt.privatedemo;

public class PrivateDemo02 {

public static void main(String[] args) {

mobile.setBrand("hello");

mobile.show();

AppleMobile mobile2 = new AppleMobile();

mobile2.setBrand("world");

mobile2.show();

}

}

class AppleMobile {

private String brand;

private String color;

private double price;

public void call() {

System.out.println("AppleMobile.call()");

}

public String getBrand() {

return this.brand;

}

public void setBrand(String brand) {

this.brand = brand;

}

public String getColor() {

getPrice();

return color;

}

public void setColor(String color) {

this.color = color;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

public void test(AppleMobile mobile) {

System.out.println(mobile.brand);

}

public void show() {

this.test(this);

}

}

java如何进行数据封装_JAVA——封装相关推荐

  1. java数组怎么添加元素_Java封装数组之添加元素操作实例分析

    本文实例讲述了Java封装数组之添加元素操作.分享给大家供大家参考,具体如下: 在上一小节中,我们对数组进行了一个基本的封装,该小节中,我们在上一次基础上,新增往数组添加元素的方法: 1.向所有元素后 ...

  2. java发红包功能_java封装发送微信红包API功能。

    WeChatRedPack java封装发送微信红包API功能. 1.目前支持两种红包类型 普通 裂变 2.目前对微信红包api的发送增加了金额校验,暂时未对发送频率做限制,后期会使用redis进行限 ...

  3. java嵌入groovy脚本_Java封装groovy脚本引擎并支持脚本包含(include)功能

    上篇文章" package com.findsrc.common.script; import java.io.IOException; import java.io.InputStream ...

  4. java语言商场打折_Java封装商场打折策略(Strategy模式)

    有了OO的基础后,开始认真学习设计模式. 首先学习的是Strategy,下面就封装商场打折策略来分析下策略模式是怎样一回事. 商场每逢节假日都会对不同的商品采用不同的打折策略,首先卖苹果的说我的苹果要 ...

  5. Java自己封装mysql框架_java封装

    jar,war,ear区别及java基础杂七八 jar,war,earqu区别 这三种文件都可以看作是java的压缩格式,其实质是实现了不同的封装: jar--封装类war--封装web站点ear-- ...

  6. java tcp数据包_java tcp封装成数据包【相关词_ tcp数据包处理java】

    2-1.数据序号32位,TCP为发送的每一个字节都编一个号码,这里存储当前数据包数据第一 包括 网络编程结构数据JavaTCPIP的信息,所有JAVA网络编程:TCP/IP数据包结构相关内 Java实 ...

  7. 杨校老师课堂之Java类与对象、封装、构造方法

    杨校老师课堂之Java类与对象.封装.构造方法 本篇文章内容如下: 面向对象 类与对象 三大特征--封装 构造方法 教学目标 能够理解面向对象的思想 能够明确类与对象关系 能够掌握类的定义格式 能够掌 ...

  8. java bank项目答案_Java基础实战Bank项目01-04

    Bank01: 创建一个简单的银行程序包 实验目的: Java 语言中面向对象的封装性及构造器的创建和使用. 实验说明: 在这个练习里,创建一个简单版本的 Account 类.将这个源文件放入 ban ...

  9. java面试的基本问题_java面试常见基础问题之一

    1 什么是项目 在既定的资源和要求的约束下,为实现某种目的而相互联系的一次性工作任务.项目可以创造:1.一个产品:2.一种服务或提供服务的能力:3.对现有产品线或服务的改进:4.一种成果. 项目的两大 ...

最新文章

  1. python统计字母空格个数_python统计字母、空格、数字等字符个数的实例
  2. 武汉网络推广教大家如何编辑出更高质量的文章TDK?
  3. 在lamp环境实现nfs中的wordpress使用
  4. 37 个 MySQL 数据库小技巧,不看别后悔!
  5. element ui 空格_空格是您的UI朋友。 大量使用它。
  6. python 折线图中文乱码_彻底解决 Python画图中文乱码问题--Pyplotz组件
  7. conv2d 公式_Pytorch 从0开始学(6)——Conv2d 详解
  8. 在计算机系统软件中核心软件,在计算机系统软件中的核心软件是()
  9. 北京少儿python培训视频教程
  10. java8 update 91 有什么用_为什么java8还在被大量使用?
  11. 判断一个数字是不是素数
  12. excel怎么启用宏_怎么使用Excel制作条形码?操作如此简单
  13. matlab 网状图,Matlab如何画3维网状图
  14. mysql5.7应该导什么包_限定盲盒!只有快递小哥可以拆的“战马空投箱”…到底什么来头?...
  15. UE4像素流pixelstream的一些坑
  16. gem5 GPGPU-Sim 安装踩坑笔记
  17. LM7805使用总结
  18. [20210429更新]软件方法(下)分析和设计 第8章 连载
  19. 撸一个基于VUE的WEB管理后台(一)
  20. python下载安装教程-python下载安装教程

热门文章

  1. 安装python时出现的错误0x80072efd及0x80072f7d的解决方法
  2. 零基础该怎么去学习3D建模
  3. webpack打包你的es6模块工具库
  4. 机房收费系统总结——心态篇
  5. CSS学习笔记(更新ing)
  6. java searchview_Java-Android:对SearchView进行动画处理
  7. PS去除图片水印有哪些方法?有什么相关教程
  8. 怎么使用苹果cms快速搭建属于自己的影视站
  9. C语言中一些库函数(字符串类型)的实现
  10. TCP协议详解及交换机路由器概念