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方法多此一举呢?相关推荐

  1. 你还在 Java 代码中写 set/get 方法?赶快试试这款插件吧!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:Mr.ml https://blog.csdn.net/Ma ...

  2. idea自动生成get set_CTO:不要在Java代码中写set/get方法了,逮一次罚款

    前言 what?你的 Java 代码中还充斥着大量的 set/get 方法? 我们在刚开始学习 Java 语言的时候讲过,面向对象的三大特征就是封装,继承,和多态.在 Java 中,要保证封装性,需要 ...

  3. java中getup用法_你还在 Java 代码中写 set/get 方法?赶快试试这款插件吧!

    前言 what?你的 Java 代码中还充斥着大量的 set/get 方法? 我们在刚开始学习 Java 语言的时候讲过,面向对象的三大特征就是封装,继承,和多态.在 Java 中,要保证封装性,需要 ...

  4. 关于java方法的重载(Overloading),覆写(Override)以及final 方法的几点说明

    昨天在一个群里面一个群友问道final 方法可不可以重载,我不假思索的说final 方法不能继承不能重载.后来晚上睡不着觉想想总觉得不对头,翻翻书一看自己简直就是胡说八道,才意识到这些基础概念的东西时 ...

  5. 文本文件 java_简单的用java实现读/写文本文件的示例

    简单的用java实现读/写文本文件的示例 更新时间:2008年07月26日 13:09:26   作者: 同时也展示了如果从输入流中读出来内容写入输出流中(仅限文本流) 三个例子可以独立存在,所以根据 ...

  6. java 匿名list,java创造匿名对象的两种方法

    在java中有时候需要一些匿名对象的使用.可能有些小伙伴拿还不会创造,其实我们在学习一些方法时都或多或少的接触过.本篇所要讲到的创造匿名对象总结了两种方法,分别是静态工具方法和Lambda表达式,我们 ...

  7. 同事说,我写Java代码像写诗

    文章来源:http://33h.co/kntu3 前几天空闲时间写了一遍关于平时自己写代码的一些习惯,这里跟大家分享一下. 定义配置文件信息✦ 有时候我们为了统一管理会把一些变量放到 yml 配置文件 ...

  8. 将Java程序变成可执行文件的一个简单方法

    将Java程序变成可执行文件的一个简单方法 运行Java程序(SWING或SWT的桌面程序)可以直接执行.class文件或将所有的.class文件及相关的其他文件压缩成.jar文件,然后使用javaw ...

  9. Oracle数据库中调用Java类开发存储过程、函数的方法

    Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日  浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL, ...

最新文章

  1. LeetCode简单题之作为子字符串出现在单词中的字符串数目
  2. 细学PHP 08 数组-2
  3. uwp选取文件夹并读取其中的图片
  4. 求一份100行左右的C语言程序,求4个C语言程序 每个100行左右 大一水平的
  5. 如何在报表中实现算法的可挂接需求
  6. AttributeError: module 'sys' has no attribute 'maxint'
  7. centos安装SVN独立服务器
  8. django进阶03静态文件和模板
  9. 接口说明_接口说明_实时语音识别_智能语音交互-阿里云
  10. HFSS天线设计实例_不同介质的BLE S11曲线
  11. 【基本办公软件】万彩办公大师教程丨彩色转化PDF为黑白PDF
  12. 主流加密方式和工具比较
  13. swfobject 2.0 使用
  14. PyQt5 Qt Designer 新手教程(一)—— 软件界面介绍
  15. Elasticsearch 和 MongoDB 对比
  16. VUE踩坑——this.$nextTick、头条小程序组件传值报错问题
  17. 2022年油猴(tampermonkey)超简单安装
  18. STM32F407系统标准库函数之时钟配置 和 位带操作
  19. 【深度学习小常识】CPU(中央处理器)和GPU(图像处理器)的区别
  20. 使用GPU进行神经网络计算详解

热门文章

  1. 华中科技大学计算机系统基础实验3报告,华中科技大学计算机系统基础实验报告...
  2. 使用U盘启动安装U盘内linux6.1
  3. swoole - 简介
  4. n1盒子openwrt某个容器无法启动 启动直接死机
  5. linux-防火墙开放端口
  6. Quartz 实现画图片、写文字、画线、椭圆、矩形、棱形等。
  7. 视频教程-Web前端开发利器 SPRY框架之表单验证-JavaScript
  8. Python Flask框架-开发简单博客-认证蓝图
  9. 苹果酸-天冬氨酸穿梭
  10. Json数据转换成Map对象