Java中常用修饰符使用汇总
修饰符汇总:
一:public protected default private
修饰类,修饰方法,修饰属性,修饰代码块。
类:
顶级类只能用public 修饰,顶级类不能使用private 和protected 修饰。
外部类可以被public修饰或者默认不写,不能用private和protected。
内部类可为静态,可用protected和private修饰。
方法:
通常方法可以被四个访问修饰符修饰,构造方法也可以被四个访问修饰符修饰。
抽象类中的抽象方法不能被private修饰,可以被其他三个修饰。
而接口中的方法只能被public修饰(默认也是public)。
属性:
属性可以被四个修饰符修饰,接口中的属性只能被public修饰(默认也是public)。
代码块:
代码块不能被任何修饰符修饰(因为代码块里面是属性还是方法,这个属性和方法都有自己的修饰符)。
构造代码块的作用:可以初始化非静态属性,构造代码块优先于构造函数执行,可以放在构造函数中。
静态代码块的作用:可以初始化静态属性,类加载时加载,不可以放在构造函数中。
二:final:
修饰类:最终类,最终类不能被继承。最终类通常完成一定标准功能的类,例如Java库中的数学类Math等。
修饰方法:用final修饰的方法不能被继承,不能被重写(例如Object中的wait()),但是可以重载。
常量:定义局部常量用final,定义全局常量用static final (或者final static)。
三:static:
修饰类:可以修饰内部类
修饰属性:static可以修饰任何属性。
修饰方法:不能修饰抽象方法,不能修饰构造方法。
修饰代码块:被修饰的代码块叫静态代码块
四:abstract
修饰类(抽象类):抽象类不能被实例化。抽象类就是用来被继承的。
修饰方法(抽象方法):能被修饰的方法叫做抽象方法,只有方法的声明,没有方法的实现,以分号结束。
不能修饰:不能修饰属性、私有方法、构造器、静态方法、final 方法。
abstract不可以和哪些关键字共存?
final:如果方法被抽象,就需要被覆盖,final修饰不能被覆盖。
private:如果函数被私有了,子类无法直接访问,无法覆盖
static:类方法,直接调用抽象方法没有意义。
Java中常用修饰符使用汇总的更多相关文章
- Java中常用修饰符浅谈
一.public.protected.default和private修饰符的作用域 public:在java程序中,如果将属性和方法定义为 public 类型,那么此属性和方法所在的类和及其子类,同一 ...
- Java中final修饰符深入研究
一.开篇 本博客来自:http://www.cnblogs.com/yuananyun/ final修饰符是Java中比较简单常用的修饰符,同时也是一个被"误解"较多的修饰符.对很 ...
- Java中的 修饰符
java中的修饰符分为类修饰符,字段修饰符,方法修饰符. 根据功能的不同,主要分为以下几种. 1.权限访问修饰符 访问权限的控制常被称为具体实现的隐藏 把数据和方法包进类中,以及具体实现的隐藏,常共 ...
- Java中各种修饰符与访问修饰符
Java中各种修饰符与访问修饰符 类: 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 (访问修饰符与修饰符的位置可以互换) 访问修饰符 名称 说明 备 ...
- Java中访问修饰符public、private、protecte、default
Java中访问修饰符public.private.protecte.default的意义讲解:public: Java语言中访问限制最宽的修饰符,一般称之为“公共的”.被其修饰的类.属性以及方法不 仅 ...
- java中的修饰符和基本数据类型
1.java中的修饰符 java中的修饰符主要是用来对类资源进行一个权限控制,上面表格表现的很清晰,无需多言. 2.java中的基本数据类型 java中的数据类型分为引用类型和基本类型.基本数据类型有 ...
- 对于Java中权限修饰符的理解
老是把Java中权限修饰符给忘记,写一个博客加深印象吧 权限分为四个作用域:当前类,同一个包,其他包的子类,其他包的类. 首先要知道包的概念,Java中一个包是指一个package下的所有文件. pr ...
- java中权限修饰符protected的使用注意事项
java中四种权限修饰符, 平时编码中最常用的其实public和private, 虽然对protected的概念一直都知道, 但真正使用时才发现有些偏差. protected表示被其修饰的成员可以被本 ...
- Java中的修饰符
-----------------------------------------------01----------------------------------------------- 类,方 ...
随机推荐
- UI基础之UIButton相关
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; 1.按钮透明效果 btn.alpha = 0.8; 2.按钮圆角处理 btn ...
- Linux图片批处理
通过imagemagick的convert命令来处理. 将多个图片横向拼接(宽图): convert +append 1.jpg 2.jpg all.jpg #人为指定顺序 convert +appe ...
- Oracle中rownum和rowid的理解(转)
本文转自地址http://www.linuxidc.com/Linux/2012-04/58300.htm rownum,rowid都叫伪列. 但是,rownum是逻辑上的编号,且其值总是从1开始,每 ...
- POJ 2151 Check the difficulty of problems (概率DP)
题意:ACM比赛中,共M道题,T个队,pij表示第i队解出第j题的概率 ,求每队至少解出一题且冠军队至少解出N道题的概率. 析:概率DP,dp[i][j][k] 表示第 i 个队伍,前 j 个题,解出 ...
- MyBatis SQL动态装配
MyBatis的方便在于可以配置动态SQL,通过过滤器进行动态装配.在刚开始使用中,遇到不少问题,其中update语句也需要动态装配,核心在于DAO层要与.xml文件中的语句和变量名要匹配.例如: D ...
- 编译nginx时,编译参数注意点
--prefix=/usr/local/nginx-1.3.1 有利于统一放置nginx的所有文件,方便管理,强烈建议设置 --with-http_stub_status_module 支 ...
- UDP及其组播,接收发送封装
1.Receiver public class Receiver { public delegate void HeartBeat(byte[] data); public event HeartBe ...
- jquery 监听input输入值事件
<html> <head> <title></title> <script type="text/javascript" sr ...
- 『TCP/IP详解——卷一:协议』读书笔记——16
2013-08-26 22:50:54 6.4 ICMP时间戳请求与应答 ICMP时间戳请求允许系统向另一个系统查询当前的时间.返回的建议值是自午夜开始计算的毫秒数(协调的统一时间,Coordinat ...
- 『TCP/IP详解——卷一:协议』读书笔记——14
2013-08-25 11:32:06 第5章 RARP:逆地址解析协议 5.1 引言 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址.但是无盘机,如X终端或无盘工作站,则需要采用其 ...