java中public int a; 和int a; 有啥子区别

 我来答
Titan_Gin
推荐于2016-02-16 · TA获得超过655个赞
知道小有建树答主
回答量:218
采纳率:50%
帮助的人:134万
展开全部
  Public int a;
  这是一个公共权限变量声明语句,用此法声明的变量可以供任何类直接访问。
  int a;
  这是一个默认权限变量声明语句,用此法声明的变量只能能供与此类同包(Package)下的其他类直接访问,不同包下的类如果不通过此类提供的方法不能访问此变量。

  Java提供的显示的访问权限修饰符有3种,分别是:私有(private)、保护(protected)和公共(public)。除此之外,还有一种默认的访问权限:friendly,它并不是Java的关键字,只有当变量前面没有写明任何访问权限修饰符时,就默认以friendly作为访问权限。为了表达上的方便,省略了其中"成员"两字,将被这些修饰符所修饰的变量分别称为私有变量、保护变量和公共变量。下面分别讨论各个修饰符的用法。
1.公共变量
凡是被public修饰的成员变量,都称为公共变量,它可以被任何类所访问。即允许该变量所属的类中所有方法访问,也允许其他类在外部访问。
  2.私有变量
凡是被private修饰的成员变量,都称为私有变量。它只允许在本类的内部访问,任何外部类都不能访问它。
  3.保护变量
凡是被protected修饰的变量,都被称为保护变量。除了允许在本类的内部访问之外,还允许它的子类以及同一个包中的其他类访问。子类是指从该类派生出来的类。包是Java中用于管理类的一种松散的集合。
  4.默认访问变量
如果在变量前不加任何访问权修饰符,它就具有默认的访问控制特性,也称为friendly变量。它和保护变量非常像,它只允许在同一个包中的其他类访问, 即便是子类,如果和父类不在同一包中,也不能继承默认变量(这是默认访问变量和保护变量的唯一区别)。因为它限定了访问权限只能在包中,所以也有人称默认 访问权限为包访问权限。
大陆老难人
2011-04-13 · TA获得超过106个赞
知道小有建树答主
回答量:84
采纳率:0%
帮助的人:43.9万
展开全部
在同一个包里面可以通过对象来访问,但是在不同一个包里面 就访问不了了, 这就因为public(公共) 原因,加了public 就可以访问了,不加, 出了包直接通过对象访问这个属性是不可能。
必须写public set/get的函数来访问。

作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×

在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。
1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用
2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。
3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华兴兴华
推荐于2016-11-02 · TA获得超过189个赞
知道小有建树答主
回答量:297
采纳率:100%
帮助的人:224万
展开全部
public int a;是显式声明a为公有的,而int a;没有显式的声明出来,就是java默认的变量属性范围:friendly类型的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
526245263
2011-04-13
知道答主
回答量:26
采纳率:0%
帮助的人:0
展开全部
如果是在类中的成员变量:
访问权限从大到小依次是:public protected 默认 private
int a属于默认,查看关于访问权限的java相关知识
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-04-13
展开全部
加了plublic,那么a在所有的类中都可以访问得到,什么都不加,那么a的作用域默认为friendly,范围是当前类和同一包类下可以访问
是作用域的范围不同,
这四个作用域的可见范围如下表所示。
说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。

作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式