SKIN
SETTINGS
Night Shift
Disable Canvas
简体中文
PAGE CONTENT
# 语法基础
CSDN:https://blog.csdn.net/INFINITE_WAR/article/details/121714143
注:主要记录Java有而C++没有的特点
# 1.注释
单行多行跟C++无区别
文档注释:
/**
*@(注释标题1) 具体内容
*@(注释标题2) 具体内容
*/
# 2.关键字

java可以用中文命名标识符
# 3.数据类型
跟C++一样,java也是强类型语言
# 3.1基本类型
| 整数类型 | 含义 |
|---|---|
| byte | 占1个字节:-128~127 |
| short | 占2个字节:-32768~32767 |
| int | 占4个字节:-2147483648~2147483647 |
| long | 占8个字 节: -9223372036854775808~9223372036854775807 |
没有long long类型
int n1=10;
long n2=10L; //加个L来标定10是long类型,否则报错
int i1=10; //十进制
int i2=010; //八进制0
int i3=0x10; //十六进制0x
int x=10_00_00 //打印x时下划线不会被输出。这种方法主要是为了更清楚地看一个大数字
| 浮点类型 | 含义 |
|---|---|
| float | 占4个字节 |
| double | 占8个字节 |
long f1=1.1F; //加个F来标定1.1是float类型,否则报错
double f2=1.1;
| 字符类型 | 含义 |
|---|---|
| char | 占2个字节, Unicode编码(U0000~UFFFF) |
| 布尔类型 | 含义 |
|---|---|
| boolean(不是bool) | 占一位。只有true、false两个值 |
# 3.2引用类型
类、 接口、数组
# 4.类型转换

(类型)变量名 //强制转换 高-->低
long a=1000000000;
int b=10;
long x=a*b; //x会输出10000000000,b在计算过程中会自动向上转换
//如果声明的是int a,那么a*b不会产生类型转换,计算结果会溢出,x会获得溢出值
注:1.不能对boolean进行转换。
2.不能把对象类型转换位不相关的类型。
3.在把高容量类型(如long)转换到低容量类型(如int)的时候要执行强制转换。反之会执行自动转换。
4.转换的时候可能存在内存溢出或精度问题。
# 5.变量
实例变量若不初始化,一般默认值都是类似0,0.0,null,false的形式
类变量:用static修饰
public class Demo{
static double salary=2500;
double age=25;
public static void main(String[] args){
Demo demo=new Demo();
System.out.print(demo.age); //实例变量必须通过对象调用
System.out.print(salary); //类变量不用通过对象调用
}
}
# 常量
java的常量用final修饰
# 变量命名规范
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母用大写 monthCommonBonus
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,LinkList
- 方法名:首字母小写和驼峰原则
# 6.运算符
java多了一个instanceof,其他跟C++一样
instance的作用是测试它左边的对象是否是它右边的类的实例,返回boolean 的数据类型。
boolean result = object instanceof class
public static void main(String[] args) {
Object testObject = new ArrayList();
displayObjectClass(testObject);
}
public static void displayObjectClass(Object o) {
if (o instanceof Vector)
System.out.println("对象是 java.util.Vector 类的实例");
else if (o instanceof ArrayList)
System.out.println("对象是 java.util.ArrayList 类的实例");
else
System.out.println("对象是 " + o.getClass() + " 类的实例");
}
}
//输出为"对象是 java.util.ArrayList 类的实例"
对象若是 类(或直接子类、间接子类,也可以说是同一继承树) 的对象 那么instanceof会返回true。
null用instanceof跟任何类型比较时都是false。
//一个特例
int a=10,b=10;
System.out.print(""+a+b); //输出20
System.out.print(a+b+""); //输出1010
//从左往右看来判断"+"号是字符串连接还是算数加法
更多数学运算可以调用Math类
# 7.包机制
# package
类似于C++的namespace。也可以看成文件夹。可以避免命名冲突

package pkg1[.pkg2[.pkg3...]]

类a放在目录Mitchell.tools下,因此编写类a的时候必须在开头加上一句
package Mitchell.tools;
编辑类HelloWorld,必须在开头加上一句
package Mitchell;
# import导包
import语句必须放在package语句下面
import package1[.package2].(classname | *); //*代表相关包下的所有类
# 8.JavaDoc
目的:生成自己的API文档
# 基本内容
| 可用参数 | 含义 |
|---|---|
| @author | 作者名 |
| @version | 版本号 |
| @since | 指明需要最早使用的jdk版本 |
| @param | 参数名 |
| @return | 返回值情况 |
| @throws | 异常抛出情况 |
按目录方式打开文件
当前文件目录

# 生成文档的方法
# 方法1 命令行

# 方法2 idea内置工具


# 效果
网页效果
The post above ended Thanks for your reading
Come on! Write some comments, and your suggestions will improve the quality of my creative!
QQ
WeChat
Enable Read Mode
COMMENTS
PLAYLIST