环境配置
https://www.runoob.com/java/java-environment-setup.html
基础语法
编写 Java 程序时,应注意以下几点:
- 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。
- 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每 个单词的首字母应该大写,例如 MyFirstJavaClass 。
- 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
- 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
- 主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。
Java 标识符
Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
关于 Java 标识符,有以下几点需要注意:
所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
关键字不能用作标识符
标识符是大小写敏感的
合法标识符举例:age、$salary、_value、__1_value
非法标识符举例:123abc、-salary
Java修饰符
访问控制修饰符 : default, public , protected, private
非访问控制修饰符 : final, abstract, static, synchronized
权限由大到小:public proected default private
Java 对象和类
对象是类的一个实例
类:男人 class
对象:张某(男) object
Java 基本数据类型
byte字节型 byte 数据类型是8位、有符号的,以二进制补码表示的整数
char字符型 char类型是一个单一的 16 位 Unicode 字符
int 整型 int 数据类型是32位、有符号的以二进制补码表示的整数
long长整型 long 数据类型是 64 位、有符号的以二进制补码表示的整数;
short短整型 short 数据类型是 16 位、有符号的以二进制补码表示的整数
boolean布尔型 true/false
float单精度浮点 float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
double双精度浮点 double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
修饰符
细节:
Java运算符
前缀自增自减法(++a,–a): 先进行自增或者自减运算,再进行表达式运算。
后缀自增自减法(a++,a–): 先进行表达式运算,再进行自增或者自减运算。
Java 中操作字符串都有哪些类?它们之间有什么区别?
操作字符串的类有:String、StringBuffer、StringBuilder。
String 和 StringBuffer、StringBuilder 的区别在于 String 声明的是不可变的对象,每次操作都会生成新的 String 对象,然后将指针指向新的 String 对象,而 StringBuffer、StringBuilder 可以在原有对象的基础上进行操作,所以在经常改变字符串内容的情况下最好不要使用 String。
StringBuffer 和 StringBuilder 最大的区别在于,StringBuffer 是线程安全的,而 StringBuilder 是非线程安全的,但 StringBuilder 的性能却高于 StringBuffer,所以在单线程环境下推荐使用 StringBuilder,多线程环境下推荐使用 StringBuffer。
String: 声明不可变对象,每次操作都会产生新的String对象 ,将指针指向新的String对象
StringBuffer: StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。他是线程安全的
StringBuilder: StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。他是非线程安全的
但 StringBuilder 的性能却高于 StringBuffer,所以在单线程环境下推荐使用 StringBuilder,多线程环境下推荐使用 StringBuffer。