您好、欢迎来到现金彩票网!
当前位置:热购彩票app下载 > 公有成员 >

Java的属性为什么要设置成为私有的?和公有的有什么不同?

发布时间:2019-06-27 20:56 来源:未知 编辑:admin

  我想知道,似有的属性有get、set方法可以对属性操作,那么为什么还要设置私有?私有的属性和公有的属性又有什么不同?

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部其实所有的属性都可以写get()set() 方法 你首要要明白get()set()的作用

  其实对于修饰符 是有四种的 public(公有的) protected(子类使用的) 默认的(就是不写修饰符 也叫友好的) private(私有)

  我们先把前三个说成是公有的吧 公有的就是说在符合条件的情况下 就可以直接调用 该类的属性 好比说 现在有个 《人 》的类 人是有年龄的吧 如果你可以任意调用它的年龄属性的话 那么你就可以任意给他赋值了 年龄可以为负数也可以写一千一万 那就没有安全性和约束性了

  但是如果你把属性定义为私有的 但给他提供公有的getset方法 那么你在调用的时候就不能调用它的属性 只能调用它的getset方法 这时候你就可以在set方法中添加赋值的约束了 这样就可以保证安全性和约束性了

  说了这么多不知道你理解吗 不理解Q我 281108721 我也是新手 说的 不好

  知道合伙人软件行家采纳数:11004获赞数:24402已经做过两个上架的app和两个网页项目.向TA提问展开全部Java的属性要设置成为私有的的原因如下:为了实现良好的封装性,如果外面的程序可以随意修改一个类的成员变量,会造成不可预料的程序错误。如果是public类型的话,就可以在其它的类中这样student.age = -100;

  展开全部通常说java的属性是依赖于一个对象(Object)的.在java中绝大部分情况下,所有的类都是对象.

  那么问题来了,只要是对象,可能就会存在属性.而这个属性,可能每个对象实例都是不一样的.

  对于不同的人,我们肯定要有名字(不考虑真的没有名字的情况).其他属性我们先忽略.

  名字就是一个对象的属性.如果设置成了公有,或者叫公开的.那就代表所有人都可以更改(可能公安机关是不允许的).那么我们怎么才能更加合理合法呢.

  对,那就是把属性私有,设置方法(get和set)公开.这样.我们就能在我们的设置(set)方法中,做一些处理,比如通知公安机关(实际中可能是保存数据,当然,这里不考虑设计模式是否合理)说,我已经改名字了.这样的话理论上就更加简洁和通用了,对于属性的更改,外界直接调用更改方法.而一些必须的事情则放在方法中去处理.

  将属性设为私有的,为 类内部可见,即该类的方法才可直接调用,如果不开放get,set方法,则即使实例化了该类的对象,也是不可调用到这个属性的,而将属性设为公有的,只要实例化了该类的对象,既可通过该对象调用此属性。一般只在类中使用的变量或者不想被外部调用的变量设为私有。

  统一入口和出口,这样我只需要规定哪些属性你可以操作(get或者set,而且是可选的,有些属性只能set,有些只能get),有些属性不开放,set和get都不给你用,也就是属性不对外开放

  外部类对该类的属性调用有比较好的适应性,保证代码有比较好的完整性。举个简单的例子,我定义了一个类,这个类中有个time属性,原来单位是分,现在我想改成秒,只需要更改get中的方法就可以,外部调用这个类的其他类就不需要更改了,如果你直接采用对象.属性类获取的话,在外部只要有调用这个属性的地方都要改,这样对原代码破坏就比较大。

http://e-ndicus.com/gongyouchengyuan/571.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有