Java支持四种不同的访问权限:

修饰符 说明
public 共有的,对所有类可见
protected 受保护的,对同一包内的类和所有子类可见
private 私有的,在同一类内可见
默认的 在同一包内可见。默认不使用任何修饰符

1、public:public表明该数据域、方法是对所有用户开放的,所有用户都可以直接进行访问。

 2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接访问,私有财产神圣不可侵犯嘛,即便是子女,朋友(同一包内的类),都不可以使用。

 3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制;而对于其他的外部class,protected就变成private。

作用域

 当前类

              同一其 他     package   

子孙类

其他package

public









protected







×

默认的



×

private



×

×

×

不写时为默认访问权限。

在实际的使用过程中,数据域应该设置为private,方法设置为public,这样更能体现出OOP封装的原则。

类只有默认和public访问权限。

public权限:包外也可以访问;

默认权限:包外不可以访问。

*\com\example\test.java

package com.example;

/**
* Created by N3verL4nd on 2016/11/21.
*/
class test {
private String str = "Hello World"; public String getStr() {
return str;
}
}

HelloWorld.java在默认包中

test类改为public则可以进行访问

Java中的受保护部分对所有子类及同一个包中的所有其他类都可见。这点显得很鸡肋。

总结一下:

private:仅对本类可见

public:对所有类可见

protected:对本包和所有子类可见

默认权限(不需要修饰符):对本包可见

参考:http://www.cnblogs.com/dolphin0520/p/3734915.html

java核心技术----访问权限的更多相关文章

  1. java:访问权限

    访问权限四大类:权限从大->小 1.public:   公共权限 2.protected:  受保护权限 3.default: 包级别访问权限/默认权限 4.private:   私有权限 以p ...

  2. Java基础—访问权限控制

    Java中访问权限控制的作用: 为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分. 为了让类库设计者可用更改类的内部工作方式,而不 ...

  3. java的访问权限

    Java语言中有4中访问修饰符:friendly(默认).private.public和protected. public :能被所有的类(接口.成员)访问. protected:只能被本类.同一个包 ...

  4. Java基础--访问权限控制符

    今天我们来探讨一下访问权限控制符. 使用场景一:攻城狮A编写了ClassA,但是他不想所有的攻城狮都可以使用该类,应该怎么办? 使用场景二:攻城狮A编写了ClassA,里面有func1方法和func2 ...

  5. java 类访问权限

    Java有四种访问权限, 其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符. private: Java语言中对访问权限限制的最窄的修饰符,一般 ...

  6. Java的访问权限详解(3+1)public private protected default

    Java使用三个关键字在类的内部设定访问权限:public.private.protected.这些访问指定词(access specifier)决定了紧跟其后被定义的成员(方法或属性)可以被谁使用. ...

  7. java 的访问权限控制

    package test06; public class PermissionModel { private int age; public String name; public int getAg ...

  8. Java继承访问权限

    JAVA 子类重写继承的方法时,不可以降低方法的访问权限,子类继承父类的访问修饰符要比父类的更大,也就是更加开放,假如我父类是protected修饰的,其子类只能是protected或者public, ...

  9. 【Java_基础】Java的访问权限控制

    1.类成员的访问权限控制 Java中类成员的访问权限分为四类:private,无(默认情况下),protected和public.其权限控制如下表所示: 修饰词 本类 同一个包的类 继承类 其他类 p ...

随机推荐

  1. [quack] A browser extension to Clean website pages ADs

    1. youdao.com result page Before: After: Later we will add more and more. Or you can submit issues t ...

  2. 初识python——知其名而去其意

    ---背景 b2b,房地产,人工智能是今年最火的词汇,那么配套的软件技术究竟是怎样的呢,通过百度,园子里的信息分析,自我感觉需要用python来进行数据采集. ---环境 在百度,qq群的大神指导下, ...

  3. .NET Core 3.1和WorkerServices构建Windows服务

    介绍 ASP.NET Core 3增加了一个非常有意思的功能Worker Service.他是一个ASP.NET Core模板,他允许我们创建托管长期的运行的后台服务,这些服务具体实现IHostedS ...

  4. 小小知识点(三十八)MPSK和MQAM调制的实现——利用IQ调制

    IQ调制的原理 (一)调制基本原理 (二)调制基本原理 利用IQ调制实现MPSK(QPSK 8PSK BPSK)和MQAM(16QAM 64QAM)调制     (一)利用IQ调制实现QPSK调制   ...

  5. Pandas的介绍与基本使用

    1.什么是Pandas 当大家谈论到数据分析时,提及最多的语言就是Python和SQL,而Python之所以适合做数据分析,就是因为他有很多强大的第三方库来协助,pandas就是其中之一,它是基于Nu ...

  6. 主席树 - 查询某区间第 K 大

    You are working for Macrohard company in data structures department. After failing your previous tas ...

  7. sender e

    sender 产生事件的对象e 事件的参数

  8. AVR单片机教程——蜂鸣器

    本文隶属于AVR单片机教程系列.   引子 定时/计数器(简称定时器)是单片机编程中至关重要的一部分,再简单的单片机也会带有定时器. 也许你会觉得我们已经在delay函数中接触过定时器了,然而并不是, ...

  9. git 工作实用创建删除分支

    一.创建分支 .创建本地分支并切换 git checkout -b dev_wt2 .创建切换并关联远程分支 git checkout -b dev_wt3 orgin/dev_wt3 .创建远程分支 ...

  10. ORM基础1

    1.增删改查 .models.类.object.all() 获取所有对象->select * from 表 2.models.类.object.get(id=1) 获取id为1的对象->s ...