欢迎关注微信公众号:一个自学的程序员

类修饰符

对于类的修饰符,毫无疑问是用来修饰类的,那么,修饰类的修饰符都有哪些?

有如下这些:

1. abstract

2. final

3. private

4. default

5. protect

6. public

下面一个个来叙述

abstract

首先是abstract,被它修饰的类称为抽象类,一旦被声明为抽象类,它就有以下特点

抽象类是没有实现的方法,需要子类提供方法实现

final

final是最终的意思,所以被final修饰的类将不能被其他类继承,这也是被final修饰最显著的特点。

private

对于private一定不会陌生,平常使用的也是比较多的,private是私有的意思,被其修饰的类将只能被其本身访问,其他的类是不能访问的包括子类,私有的意思就是我独有,其他任何人将不得拥有,专属的意思。

default

平常在编码中,如果一个类没有任何的修饰符,那就是使用了默认的修饰符,也就是default,那么这样的类只要在同一个包中都是可以被访问到的。

public

这个应该使用到的最多的了吧,是Java语言中访问控制符权限最大的一个,也即是公开的意思,被public声明的类将可以被任何的类进行访问,可以注意到,平常编码中的主类其实就是public的,一个程序中的主类必须是公开的一个类,也就是公共类。

protect

总感觉这个用的不是很多,平常的编码中,要么是public,要么是private,不然就什么都不写,这个protect代表保护的意思,被修饰的类则是受保护的类,只能被其本身和子类进行访问,相比于private,protect还可以被其子类访问的到。

变量修饰符

对于变量修饰符也是和类修饰符差不多的,有这么几个(只说常见的)

public

private

protect

final

static

对于变量修饰符,记住以上几个即可,下面简单分别说一下

对于public而言就是公开,权限最大,被其修饰的变量可以被任何对象的方法访问,然后就是private了,被private修饰的变量只能在本身,也就是只允许自己的类去做访问,其他的类包括子类都是没有权限去访问的,而protect就是介于public和private之间了,而相比于private而言,被protect修饰的变量可以被其子类访问,对于final平常见到的也是比较多的,被final修饰变量则被固定了,也就是不可修改,而static则表示静态的,而静态的则表示可以共享,也就成了一个共享变量。

方法修饰符

对于方法的修饰符几乎和变量修饰符是一样的,尤其对于public,protect和private就是一样的意思,不同的则有final和static。

对于final,被final修饰的方法将不能被重载,而被static修饰的方法则不需要实例化就可以直接使用类名进行调用,这个在开发中应用的是非常广的。

java方法和变量修饰符有哪些_死磕Java基础---类,变量和方法的修饰符相关推荐

  1. java 同步锁_死磕 java同步系列之自己动手写一个锁Lock

    问题 (1)自己动手写一个锁需要哪些知识? (2)自己动手写一个锁到底有多简单? (3)自己能不能写出来一个完美的锁? 简介 本篇文章的目标一是自己动手写一个锁,这个锁的功能很简单,能进行正常的加锁. ...

  2. java任务流程_死磕 java线程系列之线程池深入解析——普通任务执行流程

    (手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本. 注:线程池源码部分如无特殊说明均指ThreadPoolExecutor类. 简介 前面我们一起学习了Java中 ...

  3. java线程池深入讲解_死磕 java线程系列之线程池深入解析——生命周期

    (手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本. 注:线程池源码部分如无特殊说明均指ThreadPoolExecutor类. 简介 上一章我们一起重温了下线程的 ...

  4. java unsafe 详解_死磕 java魔法类之Unsafe解析

    问题 (1)Unsafe是什么? (2)Unsafe具有哪些功能? (3)Unsafe为什么是不安全的? (4)怎么使用Unsafe? 简介 本章是java并发包专题的第一章,但是第一篇写的却不是ja ...

  5. java 手编线程池_死磕 java线程系列之自己动手写一个线程池

    欢迎关注我的公众号"彤哥读源码",查看更多源码系列文章, 与彤哥一起畅游源码的海洋. (手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写 ...

  6. java ee是什么_死磕 java集合之HashSet源码分析

    问题 (1)集合(Collection)和集合(Set)有什么区别? (2)HashSet怎么保证添加元素不重复? (3)HashSet是否允许null元素? (4)HashSet是有序的吗? (5) ...

  7. java 原子类能做什么_死磕 java原子类之终结篇(面试题)

    概览 原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何线程上下文切换. 原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割 ...

  8. hashmap修改对应key的值_死磕 java集合之HashMap源码分析

    简介 HashMap采用key/value存储结构,每个key对应唯一的value,查询和修改的速度都很快,能达到O(1)的平均时间复杂度.它是非线程安全的,且不保证元素存储的顺序: 继承体系 Has ...

  9. 2019死磕java面试题_死磕 java同步系列之开篇

    简介 同步系列,这是彤哥想了好久的名字,本来是准备写锁相关的内容,但是java中的CountDownLatch.Semaphore.CyclicBarrier这些类又不属于锁,它们和锁又有很多共同点, ...

最新文章

  1. Python源码学习:Python类机制分析-用户自定义类
  2. 《Adobe Premiere Pro CS5经典教程》——2.9 用Media Browser查找素材
  3. cant find module express
  4. mysql xp系统时间_【MySQL】时间函数
  5. 朗文当代高级英语辞典android,朗文当代高级英语辞典下载
  6. Vue 最黑暗的一天
  7. 开机直接进入键盘布局_开机怎么进入安全模式(windows10停留选择键盘布局)
  8. 计算机1946考试试题,统考计算机考试试题及答案
  9. 学而思初中全套网课+讲义【春季班,暑假班,秋季班,寒假班】
  10. Axure8有效注册码
  11. STM32串口屏应用
  12. 服务器 解决方案_为什么无服务器解决方案不安全?
  13. 一些工程研发专业名词解释、 制造业常用术语、 BOM的分类
  14. 如何才能让你的网店生意好到爆?
  15. 企业经营数据的质量及其八个指标
  16. 使用matplotlib在图片上画框框
  17. 使用nslookup命令检查DNS服务
  18. java基础之package和import语句
  19. 认识WebStorm-小程序框架wepy
  20. Office2016免费下载:Office 2016 Pro Plus 64位 (迅雷复制链接就能下)

热门文章

  1. leetcode 386. Lexicographical Numbers | 386. 字典序排数(Java)
  2. 【PAT甲级 环最短距离】1046 Shortest Distance (20 分) Java、C++
  3. Java 线程的 5 种状态
  4. Java中的垃圾回收
  5. SQL 中 left join 的底层原理(各种JOIN的复杂度探究)
  6. 【简便解法】1084 Broken Keyboard (20 分)_16行代码AC
  7. 15行代码AC——1019 数字黑洞 (20分) 甲级1069. The Black Hole of Numbers (20)(解题报告)
  8. linux+synaptics+驱动程序,Synaptics
  9. map语法获取index_MySQL SQL语法优化——使用Explain查看执行计划
  10. load和pageshow的区别