数据类型与运算符 - 注释、标识符、关键字
注释
注释的作用:为了方便阅读,也为了防止隔天就忘了自己写的代码是什么意思,用来说明的的文字就叫做注释,注释不会被编译,Java编译器会自动略过注释语句。
-
- 单行注释:使用 // 开头,// 所在行后面的所有语句均为注释。
//这是单行注释
- 多行注释:使用 /* 开头以 */ 结尾,/* 和 */ 中间的内容都是注释,可以多行。
/*这是多行注释 这是多行注释 这是多行注释*/
- 文档注释:使用 /** 开头以 */ 结尾,/** 和 */ 中间的内容都是注释,注释中包含一些说明性的文字及一些JavaDoc标签(后期写项目时,可以直接生成项目的API)
/**这是文档注释 * 这是文档注释 * 这是文档注释*/
- 单行注释:使用 // 开头,// 所在行后面的所有语句均为注释。
标识符
-
- 标识符的作用:标识符是用来给变量、常量、类、方法以及包进行命名。
- 标识符规则:
- 标识符必须以“Unicode字母”、“下划线_”或“美元符号$”开头。
- 标识符其他部分可以是“Unicode字母”、“下划线_”、“美元符号$”和“数字”的组合。
- Java对标识符大小写敏感,长度无限制。
- 标识符不可是Java关键字,如“class”、“package”、“new”等。
- 标识符的使用规范:
- 表示类名单词首字母大写,如“Man”、“AaronHzy”。
- 表示方法和变量的标识符,采用“驼峰原则”:首单词小写,第二个单词开始首字母大写,如“eatFood()”、"takeYourHeart()"、“int zheShiBianLiang”。
- 表示常量,大写字母和下划线组合,如“MAX_VALUE”、"TEST_CONSTANT"。
Java采用的是Unicode字符集,只要是Unicode支持的字符都可以作为标识符,也就是说不仅仅支持英文,中文也是支持的。
- 标识符演示:
//合法的标识符 int Test = 233; int _123 = 233; int $12a = 233; int 变量1 = 233; //不合法的标识符 int 1a = 233; //不能使用数字开头 int a# = 233; //不能包含#这样的特殊符号 int int = 233; //不能使用Java关键字
Java关键字(保留字)
-
- this关键字:本质代表“创建好的对象的地址”,由于在构造方法调用前对象已创建,因此在构造方法中可以使用this代表“当前对象的地址”,this常用的用法:
- 在程序中产生二义性之处,应使用this来指明当前对象;普通方法中,this总是指向调用该方法的对象。构造方法中,this总是指向正要初始化的对象
- 使用this关键字调用重载的构造方法,可避免相同的初始化代码,但只能在构造方法中用,并且必须位于构造方法的第一句
- this不能用于static方法中
public class Test{ int a, b, c; test(int a, int b){ // 当变量发生二义性,可使用this来区分局部变量和成员变量 this.a = a; //当前构造方法的a=成员变量a this.b = b; } test(int a, int b, int c){ // 构造函数调用必须是构造函数中的第一个语句 this(a,b); //直接调用,在构造器中调用另一个构造器,需要使用this this.c = c; } void sing(){ System.out.println("我是sing方法,我被调用啦!"); } void eat() { this.sing(); //调用本类中的sing();方法 System.out.println("你妈喊你回家吃饭!"); } public static void main(String[] args) { test hi = new test(2, 3); hi.eat(); } }
- static关键字:在类中,用static声明的成员变量为静态成员变量,也称为类变量。 类变量的生命周期和类相同,在整个应用程序执行期间都有效。它有如下特点:
- 为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化
- 对于该类的所有对象来说,static成员变量只有一份。被该类的所有对象共享
- 一般用“类名.类属性/方法”来调用(也可以通过对象引用或类名(不需要实例化)访问静态成员)
- 在static方法中不可直接访问非static的成员
static修饰的成员变量和方法,从属于类;普通变量和方法从属于对象的。public class Test{ int id; String name,pwd; static String company = "测试,我被调用啦"; //赋值静态成员变量company public static void main(String[] args) { test t = new test(001, "黄泽雨"); //创建对象并赋值 test.printCompany(); //调用printCompany();方法 test.company = "测试信息2"; //修改变量company test.printCompany(); //重新打印 System.out.println(t); } // 构造方法 public test(int id, String name) { this.id = id; //当前构造方法的id=成员变量id this.name = name; } public void login() { System.out.println("登录账号:"+name); } public static void printCompany() { System.out.println(company); //输出静态成员变量company } }
- static静态初始化块:构造方法用于对象的初始化;静态初始化块,用于类的初始化;在静态初始化块中不能直接访问非static成员,注意事项:
- this关键字:本质代表“创建好的对象的地址”,由于在构造方法调用前对象已创建,因此在构造方法中可以使用this代表“当前对象的地址”,this常用的用法:
-
-
- 上溯到Object类,先执行Object的静态初始化块,再向下执行子类的静态初始化块,直到我们的类的静态初始化块为止
- 构造方法执行顺序和上述顺序一样
public class Test{ int id; String name, pwd; static String company; public static void main(String[] args) { test t = new test(); } // 用static修饰的静态块,类初始化时执行 static { System.out.println("执行类的初始化工作"); company = "测试内容"; //给静态变量company赋值 printCompany(); //执行printCompany方法 } public static void printCompany(){ System.out.println(company); } }
-