在Java中,类是面向对象编程的核心,也是构建程序的基本组成部分。类定义了对象的属性和方法,在Java程序中起着至关重要的作用。而在Java中,类的声明和访问修饰符也是十分重要的。本文将围绕“public class”深度解析Java中的类声明和访问修饰符。
一、类的声明
在Java中,类的声明一般格式为:
[访问修饰符] class 类名 [extends 父类名] [implements 接口名1,接口名2,...]
其中,访问修饰符、class、类名都是必须的,而extends和implements是可选的。下面将详细解释一下这些部分。
1.访问修饰符
访问修饰符指的是Java中用来限定类、方法或变量访问范围的关键字,Java中共有四种访问修饰符,分别是public、protected、default、private。
- public:修饰的类、变量或方法可以被任何类访问;
- protected:修饰的变量或方法可以被本类、同包类或子类访问;
- default:默认修饰符,只有同包下的类才能访问;
- private:修饰的变量或方法只能被本类访问。
2.class关键字
class是Java中用来声明一个类的关键字,每个Java程序都必须包含至少一个class关键字。在类的声明中,class关键字后面跟着的是类名。
3.类名
类名是Java中用来表示类实体的标识符,也可以理解为类的名称。类名必须满足Java标识符的规则,即必须以字母、下划线或美元符号开头,后面可以加上字母、数字、下划线或美元符号。类名应该符合规范,即应该使用名词形式,第一个字母应该大写。
4.extends关键字
extends关键字用于指定该类的父类,也就是所继承的类,通过继承,类可以获得父类的属性和方法,从而更好地实现代码复用和功能扩展。
5.implements关键字
implements关键字用于指定该类实现的接口,可以理解为Java中的“多继承”。通过实现接口,类可以获得接口中的方法定义,实现相关功能。一个类可以实现多个接口,通过逗号进行分隔。
二、访问修饰符
在Java中,访问修饰符用来控制类、方法或变量的访问权限。Java中一共有四种访问修饰符,分别是public、protected、default、private,下面将对这四种访问修饰符进行详细解释。
1.public
public是Java中最常用的访问修饰符,表示该方法或变量可以被任何类访问。使用public修饰的方法或变量可以在任何地方访问到,即使在其他包中也可以访问到。例如:
public class Student{
public int age; // 公有变量,可以在其他包中访问到
public void study(){ //公有方法,可以在其他包中访问到
System.out.println("Great!");
}
}
2.protected
protected是Java中访问修饰符的一种,表示该方法或变量可以被本类、同包类或子类访问。其所在类、同一包内的其他类以及其他包中的子类都可以访问该方法或变量。例如:
public class Person {
protected String name; //受保护的变量
protected void work(){ //受保护的方法
System.out.println("It's work time!");
}
}
子类:
public class Employee extends Person {
public void test(){
name = "Tom";
work();
}
}
3.default
default是Java中一种默认的访问修饰符,表示该方法或变量可以被同一包中的其他类访问。也称作“包访问权限”。对于没有指定访问修饰符的变量或方法,默认修饰符是default。例如:
class Dog { //默认访问修饰符
String name; //默认访问修饰符
void run(){ //默认访问修饰符
System.out.println("It's time to run!");
}
}
4.private
private是Java中最严格的访问修饰符,表示该方法或变量只能在该类内部进行访问,其他的类无法访问。其中,private方法和变量的访问范围最小。例如:
public class Animal {
private String name; // 私有变量
private void eat(){ //私有方法
System.out.println("It's time to eat!");
}
}
总结:
在Java中,类的声明和访问修饰符是非常重要的。类的声明包括访问修饰符、class关键字、类名、extends关键字和implements关键字,而访问修饰符则决定了类、方法或变量可以被哪些类访问。公有访问修饰符表示该类、方法或变量可以被任何类访问,受保护访问修饰符表示该类、方法或变量可以被本类、同包类或子类访问,default访问修饰符表示该类、方法或变量只能在同一包中访问,而私有访问修饰符表示该方法或变量只能在该类中访问。程序员需要根据实际情况选择合适的访问修饰符,才能更好地控制类、方法和变量的访问。