首页 > 其他分享 >什么是封装

什么是封装

时间:2023-08-27 20:11:44浏览次数:25  
标签:封装 name age private public String 什么 s1

什么封装


  • 该露的露,该藏的藏

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

  • 封装(数据的隐藏)

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

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

package oop.Demo04;

/**
* 1、提高程序的安全性,保护数据
* 2.隐藏代码的实现细节
* 3.统一接口
* 4.系统可维护性增加了
*/
public class Application {
   public static void main(String[] args) {
       Student s1 = new Student();
       s1.setName("杨志康");

       System.out.println(s1.getName());
       s1.setAge(88);//不合格
       System.out.println(s1.getAge());
  }
}

package oop.Demo04;
//类
public class Student {
   //调用 属性私有
   private String name;//名字
   private int id;//学号
   private char sex; //性别
   //提供一些可以操作这个属性的方法!
   //提供一些public 的get、set方法
   private  int age;
   //get 获得这个数据
   public String getName(){
       return this.name;
  }
   public int getAge(){
       return age;

  }
   public void setAge(int age){
       if (age>120||age<0) {
           this.age = 3;
      }else {
          this.age = age;
      }

  }

   //set 给这个数据设置值
  public void setName(String name){
       this.name = name;
  }
  //alt + insert
}
 

标签:封装,name,age,private,public,String,什么,s1
From: https://www.cnblogs.com/yzk5/p/17660732.html

相关文章

  • Springboot是什么
    SpringBoot是一个用于简化Spring应用程序开发的框架。它是基于Spring框架的一种约定优于配置的方式,旨在帮助开发者更快速、更容易地构建独立的、生产级的Spring应用程序。SpringBoot提供了一套默认配置,用于自动配置各种常见的第三方库和框架,减少了开发者的配置工作。同......
  • 为什么市中心吃饭比偏远郊区吃饭,物美价廉?
    这一两周,笔者分别在上海世博园区附近受邀吃饭。后面,又在昆山某小镇请人吃饭。大概都是四五人,花费五百多元,然而上海市区吃的菜,品质较高,饭菜可口。昆山小镇吃的饭,食材感觉不是很新鲜,口味咸淡都不好。试问,店铺租金便宜的小镇为何菜品反而不行,而店铺租金昂贵的市中心菜品反而很好。这二......
  • 比对大小为什么会出错
    问题:254.6<254.8返回的结果为什么是False文本型数字的排序规则与数值不同,当两个数其中一个是文本型数字,另一个是数值的时候, 比对大小的结果会出现偏差。判断单元格里的数字是数值还是文本型数字最直接的办法就是取消横向对齐方式,数值自动靠右对齐,文本型数字自动靠左对齐。 ......
  • 为什么@Autowired写在属性上方进行依赖注入时,可以省略setter方法?
    众所周知,spring的依赖注入方式有两种,setter方法注入和构造器注入。但是在实际开发中,即便类的属性没有setter方法,类也没有构造器,只要在属性的上方添加@Autowired注解,这个类属性依然会被自动注入,那么到底是为什么呢?经过上网查询发现,spring其实是从容器查找符合属性类型的对象,通过......
  • 使用 OpenTelemetry 构建 .NET 应用可观测性(1):什么是可观测性
    目录什么是系统的可观测性(Observability)为什么需要软件系统需要可观测性可观测性的三大支柱日志(Logging)指标(Metrics)分布式追踪(DistributedTracing)Trace和SpanUnknowUnknowsVSKnownUnknowns数据的关联-实现可观测性的关键总结什么是系统的可观测性(Observability)对软件行......
  • 在我为他人回答问题的一些感受,为什么我在回答问题时容易生气,以及为什么我甚至不愿意回
    在我为他人回答问题的一些感受,为什么我在回答问题时容易生气,以及为什么我甚至不愿意回答问题作为一个喜欢探索的人,我为别人解决过很多问题,从很简单的小问题到一些我只是了解了皮毛的领域的问题,我都为他人成功解答过。这并不是自诩我自己的功力有多么高深,相反,我也只还是一个平平无......
  • 现在开发需要兼容Android 和 iOS 手机的大型App,优选什么框架?
    前言现在最主流的跨平台方案应该也就是Flutter了,再就是RN,不过RN已经在慢慢退出历史舞台。中小企业目前最优先选择的还是Flutter,Flutter现在的生态也逐渐很完善。不过大型App,我还是推荐混编,一些不重要的模块使用Flutter,重要的模块还是使用原生的好。除了Fluttet的方案,还有一种方案可......
  • AI是什么软件?带你全面了解人工智能
    随着科技的快速发展,人工智能(AI)已经逐渐成为当今社会的热门话题。许多人都在谈论AI,但是究竟什么是AI呢?它又是由哪些软件构成的呢?本文将为你详细解答这些问题,带你全面了解人工智能。一、人工智能是什么?人工智能是一种模拟人类智能的计算机技术。它使机器能够像人一样学习、推理、......
  • ChatGPT全称是什么?一文详解chatGPT含义、特点及未来发展
    一、引言近年来,人工智能(AI)技术的迅猛发展为人类生活带来了诸多变革。其中,聊天机器人(Chatbot)作为AI领域的重要应用之一,逐渐融入了我们的日常生活。而在这个领域中,ChatGPT成为了备受瞩目的明星产品。那么,ChatGPT全称是什么?它的含义又是怎样的呢?本文将详细解析ChatGPT的含义、特点以......
  • ai人工智能写作是什么
    AI人工智能写作是指利用人工智能技术和算法来生成文本内容的过程和方法。它结合了自然语言处理、机器学习和深度学习等技术,使得计算机能够模仿人类的写作风格和创造力,生成各种类型的文章、故事、新闻、评论等内容。AI人工智能写作可以通过训练模型来学习大量的文本数据,并从中学习......