java访问器_Java中的访问器方法
因此,我对“ setter”和“ getter”方法以及它们的有用与否有疑问。
假设我只是写了一个非常基本的程序,如下所示:
public class Account
{
String name;
String address;
double balance;
}
然后,假设我编写了另一个使用此“ Account”类的类,如下所示:
class UseAccount
{
public static void main(String[] args)
{
Account myAccount = new Account();
Account yourAccount = new Account();
myAccount.name = "Blah blah"
}
}
等等等
在编写时myAccount.name = "Blah blah",我正在“ Account”类中更改变量“
name”的值。我可以按照自己喜欢的方式随意编写多次代码。但是,引起我注意的是,更好的做法是将“ Account”类中的变量设为私有,然后使用“
setter”和“ getter”方法。因此,如果我写以下内容:
public class Account
{
private String name;
private String address;
private String balance;
public void setName(String n)
{
name = n;
}
public String getName()
{
return name;
}
}
我仍然可以通过创建另一个具有以下内容的类来更改变量“名称”的值:
class UseAccount
{
public static void main(String[] args)
{
Account myAccount = new Account();
myAccount.setName("Blah blah");
}
}
我不知道使用此方法有何不同,或者应该防止人们使用此方法更改私有字段的值。有什么帮助吗?
java访问器_Java中的访问器方法相关推荐
- java如何重写_java中如何重写一个方法
方法的重写: 1.在子类中可以根据需要对从基类中继承来的方法进行重写. 2.重写的方法和被重写的方法必须具有相同方法名称.参数列表和返回类型. 3.重写方法不能使用比被重写的方法更严格的访问权限. 在 ...
- java同步关键字_Java中synchronized关键字修饰方法同步的用法详解
Java的最基本的同步方式,即使用synchronized关键字来控制一个方法的并发访问. 每一个用synchronized关键字声明的方法都是临界区.在Java中,同一个对象的临界区,在同一时间只有 ...
- java.equal例子_Java中的== 和equals()方法详解与实例
Java中的== 和equals()方法: Java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型. byte,short,char,int,long,float,double,boo ...
- java wait 参数_java中wait()和join()方法的区别是什么
java中wait()和join()方法的区别是:存在不同的java包中:wait()方法用于线程间通信,它所施加的等待状态的线程可以被启动:join()方法用于在多个线程之间添加排序,它所施加的等待 ...
- java 结束循环_java中结束循环的方法
java中结束循环的方法 发布时间:2020-06-25 11:31:06 来源:亿速云 阅读:180 作者:Leah 这篇文章将为大家详细讲解有关java中结束循环的方法,小编觉得挺实用的,因此分享 ...
- java 设计模式 示例_Java中的中介器设计模式-示例教程
java 设计模式 示例 中介者模式是行为设计模式之一 ,因此它处理对象的行为. 中介器设计模式用于在系统中不同对象之间提供集中式通信介质. 根据GoF,中介者模式意图是: 通过封装不同对象集相互交互 ...
- java 父类访问子类_java中父类访问子类变量
我们都知道,子类的方法可以访问父类的实例变量,这是因为子类继承父类就会获得父类的成员变量和方法:但是父类的方法水能访问子类的实例变量,因为父类根本无法知道它将被哪个子类继承,它的子类将会增加怎样的成员 ...
- java中什么是布局管理器_Java中布局管理器
布局管理器种类 FlowLayout: 组件在一行中从左至右水平排列,排满后折行,它是Panel.Applet的默认布局管理器. BorderLayout:北.南.东.西.中,它是Window.Fra ...
- java foreach顺序_Java中的LongStream forEachOrdered()方法
forEachOrdered()Java中的方法对此流的每个元素执行一个操作,以确保对具有定义的遇到顺序的流按遇到顺序处理每个元素. 语法如下-void forEachOrdered(LongCons ...
最新文章
- python安装了怎么使用_Python PyCharm 安装与简单使用
- (021) Linux之正则表达式
- 认识微服务-SpringCloud
- 整理的一些比较基础的面试知识点
- 160 - 25 CodeZero.1
- c++ cstring 转换 char_Java基本数据类型的介绍及其转换(内附字符串与多种数据之间的转换)...
- 超9000万LoRa节点,全球物联网的事实标准已形成?
- 微信帐号被封零钱怎么办?微信针对封停帐号的零钱提取出了一个流程
- leetcode621 贪心:任务安排
- Linux 性能监控、测试、优化工具
- 使用Echarts实现地图3D效果
- 课程设计题五:汽车尾灯控制器设计
- c语言 数据结构面试题及答案,数据结构c语言版试题大全(含答案).docx
- 《跑步人生》 作者:村上春树
- LeetCode 0799. 香槟塔
- Joyoshare Media Cutter for Mac(智能媒体剪辑软件)激活版
- OrderedDict()的用法
- ctr多少正常_亚马逊ctr多少算正常?
- 如何批量重命名图片,文档,文件夹名字 Windows CMD 批量修改文件名字 内含修改路径的操作,想改哪里改哪里!
- 2018年广东工业大学文远知行杯新生程序设计竞赛 1010 温柔的手彼此相系β
热门文章
- linux mysql 知乎_在 Linux 上安装 MariaDB 或 MySQL | Linux 中国
- 蓝牙耳机和蓝牙鼠标相互干扰_蓝牙耳机推荐:编辑亲测后中肯评价五大爆款蓝牙耳机...
- Zabbix的web界面基本操作
- 使用rsync同步网路备份
- 洛谷P1939 【模板】矩阵加速(数列)
- ubuntu 配置dns访问外网
- 讨论UML概念和模型UML九种图。
- 相对网站根目录寻址 vs 相对当前目录寻址
- antd + react model自定义footer_使用ESLint+Prettier规范React+Typescript项目
- Linq to Sql : 动态构造Expression进行动态查询