Java非访问修饰符

为了实现一些其他的功能,Java 也提供了许多非访问修饰符。

Static:修饰符,用来创建类方法和类变量。

Final:修饰符,用来修饰类、方法和变量,final修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。

Abstract:修饰符,用来创建抽象类和抽象方法。

Synchronized和volatile修饰符,主要用于线程的编程。

Static

使用static修饰的主要包括静态变量、静态方法。

静态变量:Static关键字用来声明独立于对象的静态变量。

1、无论一个类实例化多少对象,它的静态变量只有一份拷贝。

2、静态变量也被称为类变量。

3、局部变量不能被声明为static变量。

静态方法:Static关键字用来声明独立于对象的静态方法。

1、静态方法不能使用类的非静态变量。

2、静态方法从参数列表得到数据,然后计算这些数据。

注意:对类(静态)变量和方法的访问可以直接使用classname.variablename和classname.methodname的方式访问。

Final

使用final修饰的主要包括final变量、final方法和final类。

Final变量

1、Final变量能被显式地初始化并且只能初始化一次。

2、被声明为final的对象的引用不能指向不同的对象,但是final对象里的数据可以被改变,也就是说final对象的引用不能改变,但是里面的值可以改变。

3、Final修饰符通常和static修饰符一起使用来创建类常量。

Final方法

1、类中的Final方法可以被子类继承,但是不能被子类修改。

2、声明final方法的主要目的是防止该方法的内容被修改。

Final类

1、Final类不能被继承,没有类能够继承final类的任何特性。

Abstract

使用abstract修饰的主要包括抽象类、抽象方法。

抽象类

1、抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。

2、一个类不能同时被abstract和final修饰。

3、如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误,就是说抽象方法必须在抽象类中。

4、抽象类可以包含抽象方法和非抽象方法,就是说抽象类中的方法不一定是抽象方法。

抽象方法

1、抽象方法是一种没有任何实现的方法,该方法的具体实现由子类提供。

2、抽象方法不能被声明成final和static。

3、任何继承抽象类的子类,必须实现父类的所有抽象方法,除非该子类也是抽象类,也就是说,如果父类为抽象类,则需要实现该父类中所有的抽象方法,全部重写为具体的方法,除非该类也是抽象类。

4、如果一个类包含若干个抽象方法,那么该类必须声明为抽象类,也就是抽象方法必须在抽象类中。

5、抽象类可以不包含抽象方法,抽象类中的方法不一定都是抽象方法。

6、抽象方法的声明以分号结尾。

Synchronized修饰符

1、使用Synchronized关键字声明的方法同一时间只能被一个线程访问。

2、Synchronized修饰符可以应用于四个访问修饰符。

Transient修饰符

1、序列化的对象包含被transient修饰的实例变量时,java虚拟机(JVM)跳过该特定的变量。

2、该修饰符包含在定义变量的语句中,用来预处理类和变量的数据类型。

Volatile修饰符

1、Volatile修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。

2、当成员变量发生变化时,会强制线程将变化值回写到共享内存,这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。

3、一个volatile对象引用可能是null。

Java非访问修饰符相关推荐

  1. java中访问修饰符_Java中的非访问修饰符是什么?

    java中访问修饰符 Java非访问修饰符 (Java non access modifiers) We have 7 non-access modifiers in Java. The name o ...

  2. 十八、深入Java 访问修饰符和非访问修饰符

    @Author:Runsen @Date:2019/10/29 Java的修饰符主要分为2类,分别访问修饰符和 非访问修饰符 文章目录 访问修饰符 访问控制四个修饰符 非访问修饰符 成员变量 Stai ...

  3. [转载] Java的访问修饰符、非访问修饰符分类详细总结以及修饰符用途总结

    参考链接: Java中的可访问和非访问修饰符 Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java 支持 4 种 ...

  4. java 接口中变量修饰符,Java的访问修饰符与变量的作用域讲解

    Java访问修饰符(访问控制符) Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: ? Java 的修饰符很多,分为访问修饰符和非访问修饰符.本节仅介绍访问修 ...

  5. Java-Day11 面向对象遍程的入门 (类属性的默认值、构造方法、类的成员、static关键字、类的成员加载顺序、Java(权限)访问修饰符)

    目录 1. 类的属性的默认值问题 2. 构造方法(Constructor) 3. 类的成员 3.1 类的成员之一:属性 3.2 UML类图 4. static关键字 5. 类的成员加载(运行)顺序 6 ...

  6. java中访问修饰符_Java中的访问修饰符介绍

    java中访问修饰符 什么是访问修饰符? (What are Access Modifiers?) Have you ever wanted to define how people would ac ...

  7. java默认访问修饰符是,java默认访问修饰符

    java.lapplet.Applet D. java.awt.Frame XXX13.下列选项中,哪个方法不是 JAVA 的访问修饰符(C) A. private B. protected C. f ...

  8. java中访问修饰符,多态

    1 java中的访问修饰符 1 表格 修饰符 本类 本包其他类(子类) 子类(本项目) 其他包 访问权限 public √ √ √ √ 公用的(对任何人都可以用) protect √ √ √ × 受保 ...

  9. java的访问修饰符

    一. Java中的访问修饰符 Java面向对象的基本思想之一是封装细节并且公开接口.Java语言采用访问控制修饰符来控制类及类的方法和变量的访问权限,从而向使用者暴露接口,但隐藏实现细节.访问控制分为 ...

最新文章

  1. 计算机二级题31套资料,计算机等级考试:二级VFP机试第31套
  2. 不要和别人说你一定要干什么
  3. 差分输出和单端输出的区别(转载)
  4. POJ 2352 HDU1541 Stars(树状数组)
  5. 2021谷歌年度AI技术总结 | Jeff Dean执笔万字展望人工智能的5大未来趋势!
  6. 量子计算机优点概括,量子计算机简介
  7. 学会配色-色彩配色表
  8. 微信生成二维码报invalid action name hint错误的解决方法
  9. python中lines是什么类型_python中write和writelines有什么区别
  10. Testing Types - 读书笔记
  11. 四轴基本知识扫盲及资料收集
  12. 阿里云服务器安装图形化界面(CentOS)
  13. 请插入GemGPK智能卡解决办法。
  14. 微极速彩虹易支付第四方免签支付平台源码
  15. SAP SD 定价过程
  16. ORACLE怎么读英语,ORALCE是什么意思
  17. Android am与pm命令详解
  18. C代码实现从FTP上下载文件
  19. 【动态规划DP】开餐馆
  20. 2022阿里云栖大会,顶尖科技趋势峰会和全链路元宇宙体验

热门文章

  1. Angular2.0 基础: Form
  2. 关于微信支付冲突的问题
  3. py文件控制台执行时,报错:引入的模块不存在
  4. 10-10数组的介绍
  5. 为什么说C语言是面向过程的?
  6. const的用法,特别是用在函数前面与后面的区别
  7. 模型参数优化(二):粒子群优化
  8. 详解android gatekeeper/fingerprint中的authToken
  9. Linux基础维护——笔记
  10. pipe读写前设置O_NOATIME