Java修饰符是一种关键字,用于修改类、方法、变量等的访问权限、作用域和其他特征
▥编程
𝄐 0
java里的修饰符,java语言修饰符的规定,java修饰符有哪些,java修饰符作用,java中修饰符有哪些,java中修饰符的作用
Java修饰符是一种关键字,用于修改类、方法、变量等的访问权限、作用域和其他特征。Java提供了多种修饰符,包括访问控制修饰符、非访问控制修饰符以及注解。
1. 访问控制修饰符
Java中有四个访问控制修饰符,分别为private、default、protected和public,它们的访问权限从小到大排列为:private、default、protected和public。
- private:只能在当前类中访问。
class Example {
private int num;
}
- default:只能在同一个包中访问。
class Example {
int num;
}
- protected:可以在同一个包或子类中访问。
class A {
protected int num;
}
class B extends A {
void display() {
System.out.println(num);
}
}
- public:可以被任何类访问。
public class Example {
public int num;
}
2. 非访问控制修饰符
Java中还有一些非访问控制修饰符,常见的有static、final、abstract、synchronized等。
- static:用于定义静态变量和静态方法,可以通过类名直接访问。
class Example {
static int num = 0;
static void increment() {
num++;
}
}
Example.increment();
System.out.println(Example.num);
- final:用于定义常量,一旦赋值就不能再修改。
final int num = 10;
- abstract:用于定义抽象类和抽象方法,抽象类不能被实例化,而抽象方法必须被子类实现。
abstract class Example {
abstract void display();
}
class SubExample extends Example {
void display() {
System.out.println("Hello World");
}
}
- synchronized:用于同步方法或代码块,确保在同一时间只有一个线程可以访问它们。
synchronized void increment() {
num++;
}
3. 注解
注解是一种可在程序中使用的元数据,它们提供了关于程序元素(类、方法、变量等)的额外信息。Java中有多个内置注解,例如@Override、@Deprecated和@SupressWarnings,还可以自定义注解。
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface Test {
String value() default "test";
}
class Example {
@Test
void display() {
System.out.println("Hello World");
}
}
Java修饰符是一种关键字,用于修改类、方法、变量等的访问权限、作用域和其他特征。Java提供了多种修饰符,包括访问控制修饰符、非访问控制修饰符以及注解。
1. 访问控制修饰符
Java中有四个访问控制修饰符,分别为private、default、protected和public,它们的访问权限从小到大排列为:private、default、protected和public。
- private:只能在当前类中访问。
class Example {
private int num;
}
- default:只能在同一个包中访问。
class Example {
int num;
}
- protected:可以在同一个包或子类中访问。
class A {
protected int num;
}
class B extends A {
void display() {
System.out.println(num);
}
}
- public:可以被任何类访问。
public class Example {
public int num;
}
2. 非访问控制修饰符
Java中还有一些非访问控制修饰符,常见的有static、final、abstract、synchronized等。
- static:用于定义静态变量和静态方法,可以通过类名直接访问。
class Example {
static int num = 0;
static void increment() {
num++;
}
}
Example.increment();
System.out.println(Example.num);
- final:用于定义常量,一旦赋值就不能再修改。
final int num = 10;
- abstract:用于定义抽象类和抽象方法,抽象类不能被实例化,而抽象方法必须被子类实现。
abstract class Example {
abstract void display();
}
class SubExample extends Example {
void display() {
System.out.println("Hello World");
}
}
- synchronized:用于同步方法或代码块,确保在同一时间只有一个线程可以访问它们。
synchronized void increment() {
num++;
}
3. 注解
注解是一种可在程序中使用的元数据,它们提供了关于程序元素(类、方法、变量等)的额外信息。Java中有多个内置注解,例如@Override、@Deprecated和@SupressWarnings,还可以自定义注解。
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface Test {
String value() default "test";
}
class Example {
@Test
void display() {
System.out.println("Hello World");
}
}
本文地址:
/show-278448.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。