Java程序的标识符和关键字

什么是标识符:java程序的组成,⽐如类名、⽅法名、变量名等
注意点: 标识符可以由字母、数字、下划线_ 、美元符($)组成,但不能包含%,空格等其他特殊字符,不能以数字开头 区分⼤小写 * 不能是java关键字

  1. * 合法的标识符:age, User, _Student, $Boy, _1_value
  2. * 不合法的标识符:#age, 8User, my friend, class, if

什么是Java关键字: 是电脑语⾔里事先定义的,有特别意义的标识符,有时又叫保留留字,关键字不能用作变量名、⽅法名、类名、包名和参数

  1. booleanbytechardoubleenumfloatintlongshortvoid privateprotectedpublicdefaultabstractextendsclassinterfacereturnstaticsuper assertbreakcasetrycatchconstcontinuedoelsefinalfinally forgotoifimplementsimportinstanceofnativenewpackageswitchsynchronized thisthrowthrows transientvolatilewhile

java修饰符和使用场景

用来定义类、⽅法或者变量的访问权限

访问修饰符

限定类、属性或⽅法是否可以被程序⾥的其他部分访问和调⽤的修饰符
private < default < protected < public

非访问修饰符

⽤来修饰或者辅助功能
例如static、final、abstract、synchronized等
外部类修饰符: public或者为默认
方法、属性修饰符:private、default、protected、public
public - 公开对外部可⻅
protected - 对包和所有⼦类可⻅
private - 仅对类内部可⻅

总结

类,方法,属性都遵从以下规则

修饰符 当前类 同⼀包内 不同包中的⼦类 不同包的非子类
public Y Y Y Y
protected Y Y Y N
default Y Y N N
private Y N N N

default方法被不同包调用

image.png
image.png

default类被不同包调用

image.png
image.png

default方法,类被同包调用

image.png
image.png

protected方法被非同包调用可以用继承

image.png
image.png
image.png

protected方法只能被当前类调用

image.png

image.png java修饰符使用场景

属性或者成员变量,都用private修饰,不用其他的,这个是java开发的约束

Java中public class与class的区别

在一个*.java的文件中,只能有一个public class的声明,有多个public则编译报错,其类名称必须与文件名称完全一致,但是允许有多个class的声明
image.png
image.png只有public修饰的类,才能在包外部包可见;否则只是包内私有的类,类不能被其他包访