Java进阶(四十)Java类、变量、方法修饰符讲解

2024-02-16 20:18

本文主要是介绍Java进阶(四十)Java类、变量、方法修饰符讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Java进阶(四十)Java类、变量、方法修饰符讲解

Java类修饰符

    abstract: 将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。

    final: 将一个类生命为最终(即非继承类),表示他不能被其他类继承。

    private: Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的类、属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问。

    Default(friendly): 默认的修饰符即不加任何访问修饰符,通常称为“默认访问模式”。该模式下,只允许在同一个包中进行访问。

    protect: 介于public 和 private 之间的一种访问修饰符,一般称之为“保护形”。被其修饰的类、属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中也可以访问。

    public(访问控制符): Java语言中访问限制最宽的修饰符,将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。一般称之为“公共的”。被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。

    下面用表格的形式来展示四种访问权限之间的异同点,这样会更加形象。注意其中protected和default的区别,表格如下所示:

 

成员变量修饰符

    public(公共访问控制符): 指定该变量为公共的,他可以被任何对象的方法访问。

    private(私有访问控制符): 指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。

    protected(保护访问控制符): 指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。

    friendly: 在同一个包中的类可以访问,其他包中的类不能访问。

    final: 最终修饰符,指定此变量的值不能变。

    static(静态修饰符):指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。

    transient(过度修饰符):指定该变量是系统保留,暂无特别作用的临时性变量。

    volatile(易失修饰符):指定该变量可以同时被几个线程控制和修改。

方法修饰符

    public(公共控制符)

    private(私有控制符): 指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)

    protected(保护访问控制符):指定该方法可以被它的类和子类进行访问。

    final:指定该方法不能被重载。

    static:指定不需要实例化就可以激活的一个方法。

    synchronize: 同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。

    native:本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

美文美图

 

这篇关于Java进阶(四十)Java类、变量、方法修饰符讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/715595

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Apache Ignite 与 Spring Boot 集成详细指南

《ApacheIgnite与SpringBoot集成详细指南》ApacheIgnite官方指南详解如何通过SpringBootStarter扩展实现自动配置,支持厚/轻客户端模式,简化Ign... 目录 一、背景:为什么需要这个集成? 二、两种集成方式(对应两种客户端模型) 三、方式一:自动配置 Thick

Spring WebClient从入门到精通

《SpringWebClient从入门到精通》本文详解SpringWebClient非阻塞响应式特性及优势,涵盖核心API、实战应用与性能优化,对比RestTemplate,为微服务通信提供高效解决... 目录一、WebClient 概述1.1 为什么选择 WebClient?1.2 WebClient 与

Java.lang.InterruptedException被中止异常的原因及解决方案

《Java.lang.InterruptedException被中止异常的原因及解决方案》Java.lang.InterruptedException是线程被中断时抛出的异常,用于协作停止执行,常见于... 目录报错问题报错原因解决方法Java.lang.InterruptedException 是 Jav

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We