访问权限修饰符:


public

  • 修饰class,方法,变量;

  • 所修饰类的名字必须与文件名相同,文件中最多能有一个pulic修饰的类。


private

  • class不可用,方法,变量可以用;

  • 只限于本类成员访问和修改,本类和子类的对象实例都不能访问。


protected

  • class不可用,成员(方法&变量)可以用;

  • 只限于本类和子类访问,本类和子类实例能访问。


default

  • 即以上修饰符都没有;

  • 只能在本类,以及同包下访问。

非访问修饰符


static

  • 修饰类方法&类变量。

  • 是静态修饰符,静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间。


final

  • 修饰的类不能被继承;

  • 修饰的方法不能被覆盖/覆写;

  • 修饰的实例变量:

    • 在创建对象时赋值,之后不能再次赋值;
    • 在构造方法里给final实例变量赋值。这样在new对象的时候会给final变量赋给定的值;
    • 默认的无参构造方法会给变量赋默认值。
  • 修饰的引用变量:

    • 不能更改引用地址(不能更改保存的值:内存地址),但是可以更改所指向对象的属性。

public static final 常量

  • 修饰的静态变量属于类

abstract

  • final和abstract不能一块使用,对立的。

  • 抽象类:除了不能实例化,其他都和别的一样

  • 抽象方法:没有方法体,目的是让子类去覆写它

  • 有抽象方法的类必须声明为抽象类,抽象类中可以没有抽象方法。


interface

  • 接口只有抽象方法和常量。

  • 接口里面的方法和常量可以不加abstract修饰符,接口中的东西全是public的

  • 接口之间(多)继承用extends

  • 不能有方法体,接口中没有构造方法。无法new对象


implements

  • 非抽象类实现接口:必须覆写接口中的所有方法;

    覆写的方法必须加上public(访问权限不能更低)

Java中修饰符的分类及用法的更多相关文章

  1. java中修饰符及其用法

    1. java中的修饰符 a. 权限修饰符 private,默认的,protected,public b. 状态修饰符 static,final c. 抽象修饰符 abstract 2. 类修饰符 p ...

  2. Java中修饰符

    下面这张图应该大家都见过,根据图表来记忆最好理解 范围 private friendly(默认) protected public 当前类 √ √ √ √ 当前包中的类   √ √ √ 当前包中的类, ...

  3. java访问修饰符

    了解面向对象思想的同学们,都知道"封装"这一基本特征,如何正确运用访问修饰符,恰恰能体现出封装的好坏. java访问修饰符有四个: 1)public:访问权限最高,其修饰的类.类变 ...

  4. Java的修饰符

    转自:http://blog.csdn.net/manyizilin/article/details/51926230#L42 修饰符: 像其他语言一样,Java可以使用修饰符来修饰类中方法和属性.主 ...

  5. JAVA类型修饰符(public,protected,private,friendly)

    JAVA类型修饰符(public,protected,private,friendly) public的类.类属变量及方法.包内及包外的不论什么类均能够訪问:protected的类.类属变量及方法,包 ...

  6. Java访问修饰符(访问控制符)

    Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...

  7. Java类修饰符的使用与作用以及常见问题

    首先明确,类是放在文件里的,在文件里面的不同位置就有不同的作用,就是不同类型的类. 1, 顶级类or外部类:包括两种,一个文件中与文件名同名称的类我们称作顶级类(也是外部类),如果在一个文件中的一个类 ...

  8. C#和JAVA 访问修饰符

    JAVA ----------------------------------------------- 访问修饰符        描述 ------------------------------- ...

  9. 《Java基础知识》Java访问修饰符(访问控制符)

    Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...

随机推荐

  1. 【Vagrant】启动安装Homestead卡在 SSH auth method: private key

    注意:通过查找资料发现,导致这个问题的原因有很多,我的这个情况只能是一个参考. 问题描述 今天在使用虚拟机的时候,由于存放虚拟机的虚拟磁盘(vmdk文件)的逻辑分区容量不足(可用容量为0了).然后在使 ...

  2. CentOS7安装部署Mongodb

    1.下载安装包 打开官网,跳转至下载界面,选择对应版本的安装包,拷贝其链接,这里是手动安装,所以下载tgz安装包,如果要自动化安装,选择server的rpm自动安装包 https://www.mong ...

  3. 【mq】从零开始实现 mq-10-消费者拉取消息回执 pull message ack

    前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 [mq]从零 ...

  4. centos7安装zabbix5.0

    一.安装zabbix-server 操作系统:CentOS 7.5 1.首先关闭防火墙与SElinux 关闭防火墙 systemctl stop firewalld&&systemct ...

  5. [漏洞复现] [Vulhub靶机] Struts2-045 Remote Code Execution Vulnerablity(CVE-2017-5638)

    免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 0x00 背景知识 Apache Struts 2是美国Apache软件基金会的一个开源项目,是一套用于创建企业级Java W ...

  6. DCM:一个能够改善所有应用数据交互场景的中间件新秀

    摘要:几乎所有涉及应用数据交互的场景都可以通过DCM来改善应用结构,提升开发与计算效率. 本文分享自华为云社区<DCM:中间件家族迎来新成员>,作者: 石臻臻的杂货铺. DCM是什么 现代 ...

  7. 如何使用picGo+typora配置云笔记

    PicGo的使用 安装 picGo 2.3版本 (window可用)---官网有点慢,已经下载到个人仓库 https://gitee.com/lht1132950411/study/blob/mast ...

  8. 【ACM程序设计】动态规划 第二篇 LCS&LIS问题

    动态规划 P1439 [模板]最长公共子序列 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目描述 给出 1,2,-,n 的两个排列 P1 和 P2 ,求它们的最长公共子序列. ...

  9. Spring AOP快速使用教程

    ​ Spring是方法级别的AOP框架,我们主要也是以某个类的某个方法作为连接点,用动态代理的理论来说,就是要拦截哪个方法织入对应的AOP通知.为了更方便的测试我们首先创建一个接口 public in ...

  10. Java泛型知识总结

    泛型 前言 在没有泛型之前,程序员必须使用Object编写适用于多种类型的代码.很繁琐,也不安全. 泛型的引入使Java有了一个很强的类型系统,允许设计者详细地描述变量和方法的类型要如何变化. 在普通 ...