Java中修饰符的分类及用法
访问权限修饰符:
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中修饰符的分类及用法的更多相关文章
- java中修饰符及其用法
1. java中的修饰符 a. 权限修饰符 private,默认的,protected,public b. 状态修饰符 static,final c. 抽象修饰符 abstract 2. 类修饰符 p ...
- Java中修饰符
下面这张图应该大家都见过,根据图表来记忆最好理解 范围 private friendly(默认) protected public 当前类 √ √ √ √ 当前包中的类 √ √ √ 当前包中的类, ...
- java访问修饰符
了解面向对象思想的同学们,都知道"封装"这一基本特征,如何正确运用访问修饰符,恰恰能体现出封装的好坏. java访问修饰符有四个: 1)public:访问权限最高,其修饰的类.类变 ...
- Java的修饰符
转自:http://blog.csdn.net/manyizilin/article/details/51926230#L42 修饰符: 像其他语言一样,Java可以使用修饰符来修饰类中方法和属性.主 ...
- JAVA类型修饰符(public,protected,private,friendly)
JAVA类型修饰符(public,protected,private,friendly) public的类.类属变量及方法.包内及包外的不论什么类均能够訪问:protected的类.类属变量及方法,包 ...
- Java访问修饰符(访问控制符)
Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...
- Java类修饰符的使用与作用以及常见问题
首先明确,类是放在文件里的,在文件里面的不同位置就有不同的作用,就是不同类型的类. 1, 顶级类or外部类:包括两种,一个文件中与文件名同名称的类我们称作顶级类(也是外部类),如果在一个文件中的一个类 ...
- C#和JAVA 访问修饰符
JAVA ----------------------------------------------- 访问修饰符 描述 ------------------------------- ...
- 《Java基础知识》Java访问修饰符(访问控制符)
Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...
随机推荐
- 利用撒旦搜索引擎查询ip个数,批量下载ip
利用撒旦搜索引擎查询ip个数,批量下载ip,使用语言python3.x 批量测试时,为了方便直接撸下ip,所以用python写了个GUI撒旦利用工具,写的不是很好,但能用,最下面有下载. from t ...
- 用 Python 远程控制 Windows 服务器,太好用了!
在很多企业会使用闲置的 Windows 机器作为临时服务器,有时候我们想远程调用里面的程序或查看日志文件 Windows 内置的服务「 winrm 」可以满足我们的需求 它是一种基于标准简单对象访问协 ...
- 那些年你啃过的ConcurrentHashMap
前言 我是fancy,一个年纪轻轻bug量就累计到3200个的程序员,同事们都夸我一个人养活了整个测试组. 最近迷上了并发编程.并发这玩意怎么说呢,就是你平时工作用不到,一用就用在面试上.这不,又卷起 ...
- .Net 6 WebApi 项目部署到 Linux 系统上的 Docker 容器
1.创建一个基础的WebApi项目 注意:因为发布时候,Dockerfile文件必须和解决方案.cspro文件放在同级,所以建议勾上这个,当时遇到这个问题,导致打包镜像时找不到.cspro文件,搞了好 ...
- 个人冲刺(六)——体温上报app(一阶段)
任务:完成了自动获取定位信息以及自动获取时间功能 自动获取定位信息 public void onReceiveLocation(BDLocation location){ //此处的BDLocatio ...
- 关于mybatis的应用
导入依赖 <dependencies> <dependency> <groupId>org.mybatis</groupId> <artifact ...
- JAVA - 线程从创建到死亡的几种状态都有哪些?
JAVA - 线程从创建到死亡的几种状态都有哪些? 新建( new ):新创建了一个线程对象. 可运行( runnable ):线程对象创建后,其他线程(比如 main 线程)调用了该对象 的 sta ...
- 『忘了再学』Shell基础 — 26、cut列提取命令
目录 1.cut命令说明 2.cut命令练习 (1)cut命令基本用法 (2)cut命令选取多列 (3)按字符来进行提取 (4)按指定分隔符进行截取数据 3.cut命令分隔符说明 1.cut命令说明 ...
- DYOJ 【20220317模拟赛】瞬间移动 题解
瞬间移动 题意 三维空间中从 \((0,0,0)\) 开始,每次移动 1,问刚好走 \(N\) 次能到 \((X,Y,Z)\) 的方案数 \(N\le10^7\),答案模 \(998244353\) ...
- 商户编号[Merchant Id]是什么
1. Merchant Id是什么 2. Merchant Id 是有哪几个部分构成的 2.1 收单机构代码 2.2 商户地区代码 2.3 Merchant Category Code(MCC) 本文 ...