java class private_Java class 中public、protected 、friendly、private的区别

转载自:http://hi.baidu.com/ceoct/item/7e136a2417ba6f896f2cc33c

Java class 中public、protected 、friendly、private的区别

1.类(class)

可见性修饰符: public—在所有类中可见,在其他包中可以用import导入。

缺省—就是没有修饰符,在同一个包中的类中可见,在其他包中不能用import导入。

修饰符:final—终态类,表示该类不能被继承

abstract—抽象类,不能新建对象

2. 变量(variable)

Java中变量有两种,方法变量和字段变量

方法变量只能用一个修饰符:final—表示常量,不能修改

下面是字段变量的修饰符

可见性修饰符:public—在任何类中可见

protected—       在子类中或同一个包中可见

private—只在本类中可见,子类中也不可见

缺省—在同一个包中可见,子类不在一个包中,子类中也不可见

修饰符:static—静态变量,被类的所有实例共享

final—常量,定义后不能修改

*transient—告诉编译器,在类对象序列化的时候,此变量不需要持久保存

*volatile—指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理

这两带*的不是很常用,但也是Java的修饰符,我也不是很清楚

3.方法(method)

可见性修饰符:public—在任何类中可见

protected—在子类中或同一个包中可见

private—只在本类中可见,子类中也不可见

缺省—在同一个包中可见,子类不在一个包中,子类中也不可见

修饰符: static—静态方法,并不需要创建类的实例就可以访问静态方法

final—常方法,所有子类不能覆盖该方法,但可以重载

abstract—抽象方法,在抽象类中没有实现的方法

native—本地方法,参见Java Native Interface(JNI)

synchronized —在多线程中,synchronized方法调用时,其他所有方法不能调用该方法

3. 接口(interface)

可见性修饰符:public—所有类中可见

缺省—同一个包中可见

接口中的变量总是需要定义为“ public static final 接口名称”,但可以不包含这些修饰符,编译器默认就是这样

接口中的方法只能使用public和abstract修饰符

修饰符的访问范围如下:|        修饰符      |  类  |成员访求|构造方法|成员变量|局部变量||

abstract

抽象的  |  √  |   √          |   -        |   -        |   -       ||

static

静态的     |  -  |   √         |   -        |   √         |   -        ||

public

公共的   |  √   |   √         |   √          |   √          |   -       ||

protected 受保护的

|        |   √         |   √          |   √         |   -        ||

private

私有的   |  -  |   √         |   √           |   √         |   -       ||

synchronized 同步的

|  -  |   √         |   -         |   -         |   -      ||

native

本地的   |  -  |   √          |   -         |   -         |   -      ||

transient

暂时的  |  -  |   -        |   -         |   √           |   -      ||

volatie

易失的   |  -  |   -         |   -         |   √            |   -     ||

final

不要改变的  |  √    |   √          |   -         |   √            |   √       |

825c0ea7cd6e342749fa149746d4f7c0.png

1.private :(妻子) 只有自己能用。

2.public :(J女)谁都可以用。

3.protected:(家里的钥匙)只有家人可以用。

4.friendly:(公共客厅) 你和别人合租房子,公共客厅就是friendly 。

在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。

LTE/NR中的相应cause场景【原创】 目录1.背景2.LTE EMM cause2.0 写在最前2.1 特殊处理的cause第一梯队第二梯队2.2 非特殊处理的cause3.NR cause 实网分析终端被拒等问题,经常遇到各类cause,其会对应不同的终端限制行为。查找已有资料后理解没有很深,自行总结本文用于梳理现象,如有错误敬请指正,转载请注明出处。 本文用于记录协议Ts 24.301及Ts 24.501中的cause及其对应行为。 已总结的cause值: 24.301中的cause分 阅读详情

相关推荐

深入解析Java中的protected修饰符

当方法或实例变量使用protected修饰符时,它们可以在同一包内的任何类中访问,并且也可以在继承它们的子类中访问。在上面的示例中,myMethod()方法和myVariable实例变量被声明为protected,因此它们可以在com.example包中的任何类中访问,以及继承MyClass的子类中访问。当父类的方法或变量使用protected修饰符时,它们可以在子类中进行访问和重写,但对于同一包中的其他类来说是不可见的。protected修饰符只允许同一包中的类访问,以及继承了它的子类访问。

CodeShiftZ的博客 2071

java内部私有类

1.什么是内部私有类? 在一个java类里创建一个privateclass; 2.内部私有类的功能: 在大部分的java编码中,我们的编码都是依赖于class的,但内部类可以实现无依赖类型编码; 对外部而言,可以完全隐藏实现的细节; 3.具体实现: 1)定义接口(为内部类方法的访问做准备): package think.ten; public interface Cont

BoneToBone的博客 1万+

赛科M系列编程器V1.21.01.15测试1.zip

赛科M系列编程器V1.21.01.15测试1.zip

java私_java 有没有 私有类

展开全部java中有私有内部类,即在一个普通Java类里创建一个privateclass。用途:如果一个内部类只希32313133353236313431303231363533e59b9ee7ad9431333363376461望被外部类中的方法操作,那么可以使用private声明内部类,访问时必须在Out类里面生成In类的对象进行操作,此时的内部类只有外部类可控制。私有内部类举例:class...

weixin_42516178的博客 1697

class类中privatepublic,static,protected

都是受保护的属性和方法,可以在当前类及其子类中访问,但是无法在其他地方访问。这种访问控制用于实现类的继承关系,允许子类访问父类的受保护状态,但是不允许外部代码访问或修改。属性或方法只能在类的内部访问,其他地方都无法访问,包括子类也不能直接访问。属性或方法是类的静态成员,它们与类本身而不是实例相关联,可以在类的内部和外部直接使用,不需要实例化对象。是默认的访问修饰符,表示公有的属性或方法可以在类的内部和外部使用。同时,受保护的属性和方法也可以被子类覆盖,实现多态的效果。子类也可以继承访问,但是无法重写。

qq_41538952的博客 2044

java面向对象中四种权限(privateprotectedpublic,友好型)详解

面向对象

sfwqwfew的博客 4420

Java classpublicprotectedfriendlyprivate区别

Java classpublicprotectedfriendlyprivate区别 1.类(class) 可见性修饰符: public—在所有类中可见,在其他包中可以用import导入。 缺省—就是没有修饰符,在同一个包中的类中可见,在其他包中不能用import导入。 ...

developerFBI的专栏 959

publicprivateprotected、final、static【理解】

public: 当一个类、成员、方法 被public修饰时,表示该类、成员、方法 是对外开放的,在任何地方都可以被调用。 private: 当一个类、成员、方法 被private修饰时,表示该类、成员、方法 是私有的,成员、方法 只能被本类所使用。 任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。 protected: prote...

qq_37584445的博客 3099

java public函数_javaclass,public的用法

javaclass,public的用法一.Java访问权限饰词(access specifiers)Javapublic、protect、friendlyprivate四种访问权限,并且这四访问权限的访问范围越来越小。1. friendly1) 果一个class内的数据成员或方法没有任何权限饰词,那么它的缺省访问权限就是friendly。同一个package内的其它所有classes都可以访...

weixin_26776943的博客 823

Java访问修饰符

1、Class类的访问权限   public:可以供所有的类访问。   默认:默认可以称为friendly,但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++。默认的访问权限是包级访问权限。即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即可以实例化该类(当然如果这个类不具有实例化的能力除外,比如该类没有提供public

Silence的程序实验室 640

java 常见问题

JAVA中implement和extends的区别?   extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承,但是可以用接口来实 现,这样就要用到implements,继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了  比如  class A extends B implement

future的专栏 531

java程序员面试必备问答汇总 .

第一,谈谈final, finally, finalize的区别。 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理语句结构的一部分,表示总是执行。finalize是 Object类的一个方法,在垃圾收集器执行的时候会调

yjafd的专栏 340

Java 之路 (六) -- 访问权限控制(Package、Publicprotectedfriendlyprivate

这一章内容比较少,也比较基础。 不多废话,下面开始这一章的学习吧。 学习内容 包 package 访问权限 publicprotected、默认、private 1. Package (1) 原因:为了更好的组织类,Java 提供了包机制,用来区别类名的命名空间。 (2) 包的作用: 利用操作系统的层次化的文件结构,将特定包的 .class 文件都置于一个目录下。...

whdAlive 's blog 2129

Java中,public classclass,以及main函数的一些说明

现在有个Java文件,文件名为hello.java class 一个Java文件中可以有多个class,而且每个class还可以在前面加修饰:public,procteced,private等,不加也可以。 不同修饰符代表这个类的作用域会有区别: 作用域: 当前(父,超)类: 同一Package: 派生(子)类: 其他Package:

cherrybomb1111的博客 5307

java作用域publicprotectedprivate及不写的区别

引用一个很好的解释: 在说明这四个关键字之前,我想就class之间的关系做一个简单的定义:对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。 1、public:对所有用户开放,所有用户都可直接调用 ...

365

php面向对象之privateprotectedpublic三者权限控制区别

private protected public 本类内 Y Y Y 子类内 N Y Y 外部 N N Y注意: 在java中,如果属性/方法前面不写任何参数 即public/protected/private

豆瓣奶茶 1万+

java作用域public ,private ,protected 及不写时的区别,static关键字的使用

在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。   1、publicpublic表明该数据成员、成员函数是对所有用户开

nahelulu的专栏 1480
上一篇: md5 java 工具类_Java实现一个MD5工具类
下一篇: java getparameter 乱码_request.getParameter(“参数名”) 中文乱码解决方法
味道好的窝窝头
博客等级 码龄8年 26粉丝 57原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值