访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称
(访问修饰符与修饰符的位置可以互换)
名称 |
说明 |
备注 |
public |
可以被所有类访问(使用) |
public类必须定义在和类名相同的同名文件中 |
缺省(无访问修饰符) |
可以被同一个包中的类访问(使用) |
默认值,可以定义在和public类的同一个文件中 |
名称 |
说明 |
备注 |
final |
使用此修饰符的类不能够被继承 |
|
abstract |
如果要使用abstract类,之前必须首先建一个继承abstract类的新类,新类中实现abstract类中的抽象方法。 |
类只要有一个abstract方法,类就必须定义为abstract。 |
常用的类修饰符号为:Public,Abstract,Final,其中package不是关键字
2.变量
2.1 Java中有方法变量、实例变量(类中的非静态变量)、类变量(类中的静态变量)。
2.2 方法中的变量不能够有访问修饰符.
2.3 声明实例变量时,如果没有赋初值,将被初始化为null(引用类型)或者0、false(原始类型)
名称 |
说明 |
备注 |
public |
可以被任何类访问 |
|
protected |
可以被同一包中的所有类访问 可以被所有子类访问 |
子类没有在同一包中也可以访问 |
private |
只能够被当前类的方法访问 |
|
缺省(无访问修饰符) |
可以被同一包中的所有类访问 |
如果子类没有在同一个包中,也不能访问 |
名称 |
说明 |
备注 |
static |
静态变量(又称为类变量,其它的称为实例变量) |
可以被类的所有实例共享。 并不需要创建类的实例就可以访问静态变量 |
final |
常量,值只能够分配一次,不能更改 |
可以同static一起使用,避免对类的每个实例维护一个拷贝 |
transient |
告诉编译器,在类对象序列化时,此变量不需要持久保存 |
主要是因为改变量可以通过其它变量来得到,使用它是为了性能的问题 |
volatile |
指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理 |
|
3.方法 访问修饰符 修饰符 返回类型 方法名称(参数列表)throws 违例列表
3.1 类的构造器方法不能够有修饰符、返回类型和throws子句
3.2 类的构造器方法被调用时,它首先调用父类的构造器方法,然后运行实例变量和静态变量的初始化器,
然后才运行构造器本身。
3.3 如果构造器方法没有显示的调用一个父类的构造器,那么编译器会自动为它加上一个默认的super(),
而如果父类又没有默认的无参数构造器,编译器就会报错。super必须是构造器方法的第一个子句。
名称 |
说明 |
备注 |
public |
可以从所有类访问 |
|
protected |
可以被同一包中的所有类访问 可以被所有子类访问 |
子类没有在同一包中也可以访问 |
private |
只能够被当前类的方法访问 |
|
缺省 无访问修饰符 |
可以被同一包中的所有类访问 |
如果子类没有在同一个包中,也不能访问 |
名称 |
说明 |
备注 |
static |
静态方法(又称为类方法,其它的称为实例方法) |
提供不依赖于类实例的服务 并不需要创建类的实例就可以访问静态方法 |
final |
防止任何子类重载该方法 |
可以同static一起使用,避免对类的每个实例维护一个拷贝 |
abstract |
抽象方法,类中已声明而没有实现的方法 |
不能将static方法、final方法或者类的构造器方法声明为abstract |
native |
用该修饰符定义的方法在类中没有实现 |
参见Sun的Java Native接口(JNI) |
synchronized |
多线程的支持 |
当一个此方法被调用时,没有其它线程能够调用该方法,其它的synchronized方法也不能调用该方法,直到该方法返回 |
4.接口 访问修饰符 interface 接口名称 extends 接口列表
4.1 接口不能够定义其声明的方法的任何实现
4.2 接口中的变量总是需要定义为“public static final 接口名称”,但可以不包含这些修饰符,
编译器默认就是这样,显示的包含修饰符主要是为了程序清晰
名称 |
说明 |
public |
所有 |
无访问修饰符(默认) |
同一个包内 |
相关推荐
Java 编程语言的核心结构和控制修饰符是学习和理解Java程序设计的关键部分。下面将详细阐述这些概念。 首先,让我们关注控制修饰符。在Java中,这些修饰符用于定义类、变量、方法和构造器的访问级别和特性。表5.1列...
第三章进一步深入到面向对象编程,讨论了访问修饰符(private、default、protected、public)、静态(static)关键字、私有化(private)成员变量、方法重载(参数类型和个数不同)以及`this`关键字的含义。...
在Java编程语言中,修饰符是用来控制访问权限和指定类、方法、变量特性的关键词。以下是对Java中常用修饰符的详细解释: 1. **访问修饰符**: - `public`:公共访问修饰符,可以被任何地方的任何代码访问。 - `...
Java有四种权限修饰符:private(私有)、default(包访问权限)、protected(受保护)和public(公共)。它们决定了类、方法、属性的可见性,影响了代码的封装性和耦合度。 【构造器】 构造器用于初始化新对象,...
2. 封装:通过访问修饰符(public、private、protected、默认)实现数据隐藏,将数据封装在类内部。 3. 继承:一个类可以继承另一个类的属性和方法,实现代码重用。Java只支持单继承,但可以实现多重接口。 4. ...
1. **访问修饰符的区别** - `public`:公共访问修饰符,允许任何类访问。 - `private`:私有访问修饰符,仅限于在同一个类内部使用。 - `protected`:受保护访问修饰符,允许同一包内的类和所有子类访问。 - ...
### Java基础知识汇总 #### 1. 概念与提纲 Java是一种广泛使用的高级编程语言,同时也代表了一个软件平台。其核心特色在于“一次编写,到处运行”(Write Once, Run Anywhere, WORA),这得益于Java虚拟机(JVM)的...
【Java基础入门必备单词汇总】 在Java编程语言的学习过程中,掌握一些核心的关键词和概念是至关重要的。以下是对标题和描述中所提及的一些关键单词的详细解释,它们构成了Java编程的基础: 1. **Public**: 表示...
8. **对象与类深入**:第8章会进一步讲解类的封装、继承和多态,以及访问修饰符(public、private、protected)和构造器。 9. **异常处理**:最后的第9章可能涉及到Java的异常处理机制,包括try-catch-finally语句...
CoreJava DAY07修饰符 50 CoreJava DAY08 常用类 56 CoreJava DAY09 高级语言特征 58 CoreJava DAY10 主方法,静态导入,包装类,枚举 62 CoreJava DAY11 内部类 70 CoreJava DAY12 集合 List 78 CoreJava DAY13 ...
4. **面向对象**:类、对象、封装、继承、多态等概念,以及构造函数、方法、访问修饰符的理解。 5. **数组和集合**:一维、多维数组,以及ArrayList、LinkedList、HashSet、HashMap等集合框架的使用。 6. **异常处理...
2. abstract修饰符可修饰字段、方法和类吗? 答:B. 抽象方法的 body 部分必须用一对大括号{ }包住 3. 实例方法可直接调用超类的实例方法吗? 答:D. 实例方法可直接调用本类的类方法 Java面向对象编程 4. 下面...
### Java初级概念题汇总 #### 1....以上就是Java初级概念题汇总中提到的一些关键知识点,了解并掌握这些基础知识对于Java学习来说至关重要。希望这些内容能帮助你在面试中更加自信,并顺利通过面试。
13. Java修饰符:抽象类中的方法可以是非抽象的,选项A正确。final类中的所有方法默认是final,但属性不一定,选项B错误。一个类的属性和方法可以有多个修饰符,选项C正确。若使成员变量仅对自身可见,应使用private...
Java提供了四种访问修饰符(访问控制符):public, protected, private和不写(默认访问级别)。这些修饰符定义了类、方法和属性的访问级别。 - public:具有最高访问权限,可以被任何其他类访问。 - protected:...
理解类、对象、构造函数、析构函数、访问修饰符(public, private, protected)以及友元函数等基础概念至关重要。 - **模板**:C++的模板允许创建泛型代码,适用于不同类型的数据。包括函数模板和类模板。 - **STL...
### Java基础学习知识汇总 #### 一、面向对象编程的核心概念 **1. 抽象** - **定义**: 抽象是指在设计阶段只关注事物的本质特征,忽略次要的细节。这种思想允许开发者集中精力处理核心问题,而不是陷入不必要的...
接着,深入到面向对象编程,这部分涉及类与对象、接口、抽象类、访问修饰符以及包的管理。理解类的生命周期,包括初始化、构造方法的执行顺序,以及如何实现多线程(Thread类、Runnable接口)都是常考知识点。同时,...
- 访问修饰符:public、private、protected和默认的区别。 - 数据类型:了解基本数据类型和引用数据类型,以及它们之间的转换。 - 运算符:熟悉各种运算符,如赋值、比较、逻辑和位运算符。 2. **内存管理**: ...