数据封装的好处(Getter、Setter) - 51CTO博客

文章推薦指數: 80 %
投票人數:10人

数据封装的好处(Getter、Setter),“老王忘记把他的猫封装起来,后来他的猫被压平了......”这是一个程序界的鬼故事,你忘记对你的数据进行封装, ... 数据封装的好处(Getter、Setter) 关注 mb5ff40b968831d 赞 收藏 评论 分享 微博 QQ 微信 数据封装的好处(Getter、Setter) 原创 mb5ff40b968831d 2021-01-0719:44:54 ©著作权 文章标签 Java 文章分类 Java 编程语言 ©著作权归作者所有:来自51CTO博客作者mb5ff40b968831d的原创作品,请联系作者获取转载授权,否则将追究法律责任数据封装的好处(Getter、Setter)https://blog.51cto.com/u_15076224/2584704 “老王忘记把他的猫封装起来,后来他的猫被压平了......” 这是一个程序界的鬼故事,你忘记对你的数据进行封装,那么有一天也会被人处理掉了。

创建Getter和Setter给所有的实例变量,并寻求某种方法强制其他程序都必须通过Setter来设定变量而不是直接的存取。

也就是封装,其会对我们的实例变量加上绝对领域,因此没有人能够恶搞我们的变量。

且大部分的实例变量值都有一个适当的范围,比如身高就不能是负数,佛敲墙也不能3分钟就做完。

强波其他程序一定要经过Setter,如此Setter就能够检查参数并判断是否可以执行。

setter可以退回不合理的值,或是抛出Exception、或者自己进行小数点的动作,重点是你可以在setter中执行任何动作,但是如果直接暴露实体变量就没有办法了。

当然你会说大部分的setter其中也是没有什么逻辑代码的,其实与getter一样,其好处是你事后可以改变想法却不会需要改变其他部分的程序。

封装的优点就是能够让你三心二意却又不会伤害别人,直接存储变量的效率是比不上这个好处的。

理性的说明下,隐藏数据既使用公有和私有这两个存取修饰符,将实例变量标记为private。

将getter和setter标记为public。

当然获取你某天有了足够的java设计与编写经验后,你会有新的做法,但是现在还是继续使用这种维持安全的方式把。

赞 收藏 评论 分享 微博 QQ 微信 举报 上一篇:关于Java方法及传参的一些问题 下一篇:实例变量与局部变量 举报文章 请选择举报类型 内容侵权 涉嫌营销 内容抄袭 违法信息 其他 具体原因 包含不真实信息 涉及个人隐私 原文链接(必填) 补充说明 0/200 上传截图 格式支持JPEG/PNG/JPG,图片不超过1.9M 取消 确认 已经收到您得举报信息,我们会尽快审核 提问和评论都可以,用心的回复会被更多人看到 评论 发布评论 全部评论 (0) 最热 最新 相关文章 (18)封装简介、private中getter,setter用法 一、定义:隐藏对象的属性和实现细节,仅对外提供公共访问方式二、好处:      ①将变化隔离      ②便于使用      ③提高重用性   ... 健壮性 逻辑判断 自动生成 成员函数 重用性 getter和setter getter和setter我们先不管getter和setter是啥.来看一段代码packagecom.lewen.day17;publicclassPerson{Stringname;intage;publicvoidchi(){System.out.println(this.nam... Python [Kotlin]GetterandSetter importjava.util.*classAnimal{varage=0get()=fieldset(value){if(value>=0){field=value}else{throw... java Kotlin getter/setter方法 1.setter方法作用:用来设置成员变量,可以在方法里面过滤掉一些不合理的值命名规范:必须是对象方法返回值类型为void方法名必须以set开头,而且后面跟上成员变量名去掉”_”首字母必须大写必须提供一个... 成员变量 下划线 数据 get方法 方法名 setter和getter 能让一个包里的访问有所限制    其他 [Javascript]GetterandSetterAbstractions JavaScriptprovidesprimitivetypesandmeansofprocessingthose.However,thosearenotenough.Realdatamustsomehowcomeintotheprogramanddatamustsomehowleavetheprogram,forittobecom... ide i++ javascript Javascript 简化getter,setter写法 使用Lombok可以简化成:@Getter @Setter @NonNull    private String str = "abc";还有其它用法,详见文档http://projectlombok.org/features/Get... 职场 休闲 lombok Scala中的getter和setter CreatedbyWang,Jerry,lastmodifiedonSep25,2015testsourcecode:/*2015-09-1415:36PM*/packagetest{classCounter{privatevarvalue=0//orelsevaluewillbetreatedasNaNdefa... 公众号 getter和setter的那些事 相信每一个以Java或者C++作为编程入门语言的程序员,一定会记得一条金科玉律:字段(Filed)要声明成private,如果要读取或修改字段,就声明一些公开方法(PublicMethod),以get和set开头,像这段Java代码一样:这... Java setter和getter方法的作用   setter 方法的作用:为单一的实例变量 setter 书写规范: - 号方法 无返回值,名字以set开头 + 要设置的实例变量名(首字母大写) :(setter方法有且只有一个... 作用 getter setter Whygetterandsettermethodsareevil Ididn'tintendtostartan"isevil"series,butseveralreadersaskedmetoexplainwhyImentionedthatyoushouldavoidget/setmethodsinlastmonth'scolumn,"WhyextendsIsEvil."Thoughgetter... 职场 休闲 JavaScriptgetterandsetterAllInOne JavaScriptgetterandsetterAllInOnegetter&setterclassstaticpropertyclassstaticmethodJavaScriptgetterandsetterAllInOnegetter&setterJavaScriptObjectAccessorsJavaScri... js Function Class Object settter 面向对象-getter-setter // class Rect {//   num heihgt;//   num width;//   Rect(this.heihgt, this.width);//   area() {//     return this.heihgt * this.width;//   }// }class Rect {... 面向对象 getter-setter方法练习 ////Kline.h#import@interfaceKline:NSObject{int_max;//最高价int_min;//最低价int_average;//平均价}/*setter方法1.一定是对象方法... 成员变量 最小值 #import 下划线 对象方法 理解defineProperty以及getter、setter 我们常听说vue是用getter与setter实现数据监控的,那么getter与setter到底是什么东西,它与defineProperty是什么关系,平时有哪些用处呢?本文将为大家一一道来。

对象的属性按照一贯的“由浅到深”行文原则,我们... 描述符 数据 赋值语句 iphone 默认值 为什么使用Getter和Setter?Getter和Setter有什么区别? JavaScript访问器(Getter和Setter),ECMAScript5(2009)介绍了Getter和Setters。

Getters和setter允许您定义对象访问器(ComputedProperties)。

##JavaScriptGetter(get关键字)```jsJavaScriptGe... js html5 java中封装类Feild和使用setter和getter方法访问封装的类Feild classPerson{privateStringname;privateintage;publicvoidsetName(Stringname)//定义访问name的方法{if(name.length()>6||name.length()... java private public 有关js的defineProperty函数gettersetter 今天看nodeweb框架时使用的koa框架使用的介绍:ctx上的许多属性都是使用getter,setter和Object.defineProperty()定义的。

你只能通过在app.context上使用Object.defineProperty()来编辑这些属性(不推... 代码 Kontln的属性形式Getter和Setter packageloaderman.democlassPerson{valname:Stringget()="name"varv:Int=0varvalue:Intget()=vset(value){println("设值"+value)... 成员变量 标识符 属性值 mb5ff40b968831d 关注 私信 近期评论 SpringSecurity学习笔记 本文不错,值得学习 jquery1 终于找到了,给你个大写服 博客园主题 啥都不说了,给你们一个大写的赞。

fibnacci数列递归实现 本文不错,值得学习 第二天:Leetcode刷题; 真给力,就是有点长 近期文章 1.c#面试题及答案(二) 2.npm安装依赖报错——npmERR!gypverbcli的解决方法 3.前端性能优化|什么是防抖和节流? 4.浅谈Spring的PropertyPlaceholderConfigurer 5.Spring读书笔记-----Spring的Bean之设置Bean值 热评好文 m3u8转mp4 java查询目标路径下的所有文件并分类 centos7下载安装&配置zookeeper ASP.NETWebAPI自身对CORS的支持:从实例开始 awk命令拷屏 七日热门 Java入门_Java概述_Java的特点 Java基础-初识Java Java解惑(JavaPuzzler) JavaAnnotation,Java注解 【Java】Java多线程 [Java]JAVAIO操作 java基础Java初生 Java|Java面向对象 Java:Java快速入门 JAVA     MyFirst.java 相关标签 全部 computed设置getter和setter getter/setter方法的作用 ideagettersetter ideagettersetter快捷键 idea中getter和setter idea添加gettersetter idea生成gettersetter idea的getter和setter idea设置settergetter javagettersetter 返回顶部 51CTO博客 首页 关注 热榜 订阅专栏 学堂 精培 鸿蒙社区 CTO训练营 51CTO 班级博客 登录注册 手机随时阅读 新人专享大礼包¥24 写文章 搜索历史 清空 热门搜索 查看【 】的结果 Copyright©2005-202251CTO.COM 版权所有京ICP证060544号 关于我们 官方博客 意见反馈 了解我们 全部文章 在线客服 网站地图 热门标签 友情链接 51CTO鸿蒙社区 51CTO学堂 51CTO



請為這篇文章評分?