Java为什么要写get和set方法多此一举呢?
1.初次接触:
刚开始真心没觉得get和set方法使程序更安全,更方便。
2.初次查阅:
假设封装的是人年龄这个变量,如果给他一个负数,很明显不符合实际。这时候就需要用set方法进行过滤。
//set方法public void setAge(int age){if(age >= 0 && age <= 200){this.age = age;}else{System.out.println("你输入的不是人的年龄");}}
3.继续学习发现:
当时觉得上面那个想法真的解决了我的问题,但当你一直学习后面的知识,你就会发现实际开发中,往往都不需要自己用set方法过滤 。从别人手里得到的数据都是有效的。
这时候又开始思考这两方法到底有什么用?
如果你封装的东西只希望别人用,但不希望别人修改,只用写get方法就好了,但如果是public,别人就会随意的进行读写操作。
更重要也是规范所有人的操作。
4.说明:
我现在也是初学者,肯定有不对的地方,以后肯定还会有更好的理解,我会接受大家的指教。
Java为什么要写get和set方法多此一举呢?相关推荐
- 你还在 Java 代码中写 set/get 方法?赶快试试这款插件吧!
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:Mr.ml https://blog.csdn.net/Ma ...
- idea自动生成get set_CTO:不要在Java代码中写set/get方法了,逮一次罚款
前言 what?你的 Java 代码中还充斥着大量的 set/get 方法? 我们在刚开始学习 Java 语言的时候讲过,面向对象的三大特征就是封装,继承,和多态.在 Java 中,要保证封装性,需要 ...
- java中getup用法_你还在 Java 代码中写 set/get 方法?赶快试试这款插件吧!
前言 what?你的 Java 代码中还充斥着大量的 set/get 方法? 我们在刚开始学习 Java 语言的时候讲过,面向对象的三大特征就是封装,继承,和多态.在 Java 中,要保证封装性,需要 ...
- 关于java方法的重载(Overloading),覆写(Override)以及final 方法的几点说明
昨天在一个群里面一个群友问道final 方法可不可以重载,我不假思索的说final 方法不能继承不能重载.后来晚上睡不着觉想想总觉得不对头,翻翻书一看自己简直就是胡说八道,才意识到这些基础概念的东西时 ...
- 文本文件 java_简单的用java实现读/写文本文件的示例
简单的用java实现读/写文本文件的示例 更新时间:2008年07月26日 13:09:26 作者: 同时也展示了如果从输入流中读出来内容写入输出流中(仅限文本流) 三个例子可以独立存在,所以根据 ...
- java 匿名list,java创造匿名对象的两种方法
在java中有时候需要一些匿名对象的使用.可能有些小伙伴拿还不会创造,其实我们在学习一些方法时都或多或少的接触过.本篇所要讲到的创造匿名对象总结了两种方法,分别是静态工具方法和Lambda表达式,我们 ...
- 同事说,我写Java代码像写诗
文章来源:http://33h.co/kntu3 前几天空闲时间写了一遍关于平时自己写代码的一些习惯,这里跟大家分享一下. 定义配置文件信息✦ 有时候我们为了统一管理会把一些变量放到 yml 配置文件 ...
- 将Java程序变成可执行文件的一个简单方法
将Java程序变成可执行文件的一个简单方法 运行Java程序(SWING或SWT的桌面程序)可以直接执行.class文件或将所有的.class文件及相关的其他文件压缩成.jar文件,然后使用javaw ...
- Oracle数据库中调用Java类开发存储过程、函数的方法
Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日 浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL, ...
最新文章
- LeetCode简单题之作为子字符串出现在单词中的字符串数目
- 细学PHP 08 数组-2
- uwp选取文件夹并读取其中的图片
- 求一份100行左右的C语言程序,求4个C语言程序 每个100行左右 大一水平的
- 如何在报表中实现算法的可挂接需求
- AttributeError: module 'sys' has no attribute 'maxint'
- centos安装SVN独立服务器
- django进阶03静态文件和模板
- 接口说明_接口说明_实时语音识别_智能语音交互-阿里云
- HFSS天线设计实例_不同介质的BLE S11曲线
- 【基本办公软件】万彩办公大师教程丨彩色转化PDF为黑白PDF
- 主流加密方式和工具比较
- swfobject 2.0 使用
- PyQt5 Qt Designer 新手教程(一)—— 软件界面介绍
- Elasticsearch 和 MongoDB 对比
- VUE踩坑——this.$nextTick、头条小程序组件传值报错问题
- 2022年油猴(tampermonkey)超简单安装
- STM32F407系统标准库函数之时钟配置 和 位带操作
- 【深度学习小常识】CPU(中央处理器)和GPU(图像处理器)的区别
- 使用GPU进行神经网络计算详解