首页 > 其他分享 >Day25封装

Day25封装

时间:2022-08-31 00:23:23浏览次数:65  
标签:封装 name get Day25 private Student3 public String

封装(数据的隐藏)

通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。(该露的露,该藏的藏)

程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉,低耦合:仅暴露少量的方法给翻不适用。

记住这句话就够了:属性私有,get/set

package oop.demo;
//private 私有的 (封装的核心)
public class Student3 {

    //名字 学号 性别      学习()睡觉()
    //属性私有
    private String name;
    private int id;
    private char sex;

    //提供一些可以操作这个属性的方法
    //提供一些public的get,set方法
    //get 获得这个数据
    public String getName(){
        return this.name;
    }
    //set 给这个数据设置值
    public void setName(String name){
        this.name = name;

    }


}
//alt + insert 生成get方法


package oop;

import oop.demo.Student3;

public class Application {
    public static void main(String[] args) {
        Student3 s1 = new Student3();
        s1.setName("秦疆");
    }
}

总结:

1.提高程序的安全性,保护数据

2.隐藏代码的实现细节

3.同意接口

4.提高了系统的维护性

标签:封装,name,get,Day25,private,Student3,public,String
From: https://www.cnblogs.com/rebirth-/p/16641468.html

相关文章

  • 嵌套类匿名类与封装类
    嵌套类在C#中可以将一个类定义在另一个类的内部;外面的类叫“外部类”,内部的类叫“嵌套类”;嵌套类和普通类相似,只是声明的位置比较特殊。classPerson{//外部类......
  • 大家都能看得懂的源码 - 那些关于DOM的常见Hook封装(二)
    本文是深入浅出ahooks源码系列文章的第十五篇,该系列已整理成文档-地址。觉得还不错,给个star支持一下哈,Thanks。本篇接着针对关于DOM的各个Hook封装进行解读。use......
  • vue3 - 封装图表组件
      把相同或者类似的图表进行封装父组件使用:<Report:info="main4":xdata="RXData4":sdata="RSData4":title="title4"......
  • 类与封装
    packagemainimport"fmt"//如果类名首字母大写,表示其他包也能够访问typeHerostruct{//如果说类的属性首字母大写,表示该属性是对外能够访问的,否则的话只能......
  • APICloud AVM框架 封装车牌号输入键盘组件
    AVM(Application-View-Model)前端组件化开发模式基于标准WebComponents组件化思想,提供包含虚拟DOM和Runtime的编程框架avm.js以及多端统一编译工具,完全兼容WebComponents标......
  • 大家都能看得懂的源码 - 那些关于DOM的常见Hook封装(一)
    本文是深入浅出ahooks源码系列文章的第十四篇,该系列已整理成文档-地址。觉得还不错,给个 star 支持一下哈,Thanks。上一篇我们探讨了ahooks对DOM类Hooks使用规范,......
  • Vue封装的过渡与动画
    一.作用:在插入、更新或移除DOM元素时,在合适的时候给元素添加样式类名。二.图示: 三.写法:1.准备好样式元素进入的样式:v-enter:进入的起点v-enter......
  • APICloud AVM 封装验证码输入框组件
    AVM(Application-View-Model)前端组件化开发模式基于标准WebComponents组件化思想,提供包含虚拟DOM和Runtime的编程框架avm.js以及多端统一编译工具,完全兼容WebCom......
  • uniapp 微信小程序封装全局弹框(登录拦截)
        新增组件页面:loginProp.vue<template><viewclass="login-box"v-if="loginShow"><viewclass="center-box"><imageclass="l......
  • 内容区滚动组件封装
    iScroll5API中文版观察器温馨提示:让iscroll内容滚动,首先iscroll容器的高度,必须小于内容区的高度没设置内容区的高度就滚动不了了容器的高等于可视区的高度,可视区......