java基础语法
作者:互联网
注释、标识符、关键字
注释
注释并不会被执行,注释是给程序员看的
书写注释是一个非常好的习惯
单行注释
只能注释一行文字
//注释内容
多行注释
可以注释一段文字
/*
注释内容
*/
JavaDoc
即文档注释,能被识别。
/**
注释内容
*/
标识符
Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qRnayd0A-1632381793769)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210919165013414.png)]
关键字
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GUF1vXm3-1632381793774)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210919164653574.png)]
数据类型
强类型语言
要求变量的使用要严格符合规定,所有的变量都必须先定义后才能使用
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jPXZQ3ZN-1632381793776)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210919170050879.png)]
变量
即可以变化的量
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UUD3ey6E-1632381793782)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210920162723851.png)]
变量的作用域
1.类变量
2.实例变量
3.局部变量
public class Demo3 {
//属性:也就是方法
//类变量 加static
static int all=0;
//实例变量:从属于对象,如果没有初始化,则为默认值
// (布尔值默认是false,除了基本类型,其余的默认值都是null)
int age;
String str="hello";
public static void main(String[] args) {
//局部变量:必须声明和初始化值
int i=0;
//变量类型 变量名 = new Demo3();
Demo3 demo3=new Demo3();
System.out.println(demo3.age);
}
//其他方法
public void method(){
}
}
类型转换
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oh8DRnQO-1632381793787)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210920160221670.png)]
public class Demo2 {
public static void main(String[] args) {
int i=128;
byte b=(byte)i;//byte最大值为127,i是128,内存溢出,发生错误
//强制转换:高到低 (类型)变量名
//自动转换:低到高
/*
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,需要强制转换
4.转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println(i);
System.out.println(b);
System.out.println("================================");
char c='a';
int d=c+1;
System.out.println(d);
System.out.println((char)d);
//操作数比较大的时候,注意溢出的问题,数字之间可以用下划线进行分割
int m=10_0000_0000;
System.out.println(m);
int year=20;
int total=m*year;
System.out.println(total);//-1474836480,计算时候溢出了
long t2=m*year;
System.out.println(t2);//默认是int 转换之前就出现问题了
long t3=m*((long)year);
System.out.println(t3);
}
}
常量
关键字:final
变量的命名规范
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-be9wa4hy-1632381793792)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210921111339802.png)]
运算符
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0sY7VFBz-1632381793794)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210922133415603.png)]
package operator;
public class Demo2 {
public static void main(String[] args) {
long a=1212123332122222L;
int b=125;
short c=10;
byte d =8;
System.out.println(a+b+c+d);//long类型,有long时为long
System.out.println(b+c+d);//没有long时候全为int
System.out.println(c+d);//没有long时候全为int
}
}
package operator;
public class Demo3 {
public static void main(String[] args) {
//关系运算符返回的结果为:正确或错误(布尔值)
int a=10;
int b=20;
int c=21;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
System.out.println(c%a);//取余 也叫模运算
//++自增 --自减(不需要两个数,所以叫做一元运算符)
int d=6;
int e=d++;//执行完这段代码后,先给e赋值,在自增
// a++就是a=a+1
// ++a就是a=a+1
int f=++d;//执行完这段代码前,先自增,再赋值给f
System.out.println(d);
System.out.println(e);
System.out.println(f);
//幂运算 2^3 很多运算我们会采用一些工具类来实现
double m=Math.pow(2,3);
System.out.println(m);
}
}
package operator;
public class Demo4 {
public static void main(String[] args) {
//逻辑预算符
//与(and)或(or)非(取反)
boolean a=false;
boolean b=true;
System.out.println("a && b:"+(a && b));//逻辑与运算:两真为真
System.out.println("a || b:"+(a || b));//逻辑或运算:一真为真,全假为假
System.out.println("!(a && b):"+!(a && b));//逻辑非运算:真为假,假为真
//短路运算: 判断 a && b 的真假性的时候,倘若a为假,则不会执行a后面的代码,即不会管b的真假性了
int c=5;
boolean d=(c<4)&&(c++<10);//倘若执行了(c++<10),则c的值会自增变成6
System.out.println(d);
System.out.println(c);
//位运算
/*
A = 0101 1101
B = 0000 1001
A&B 0000 1001(类似于与运算 两一为一)
A|B 0101 1101(类似于或运算 两零为零 有一为一)
A^B 0101 0100(亦或运算 两个位对应做比较 相同为零 不同为一)
~B 1111 0110(取反)
面试题:
2*8在计算机中如何运算最快:
位运算是直接操作二级制,所以效率极高
<< 相当于把当前数字*2
>> 相当于把当前数字/2
二级制中 代表的十进制数
0000 0000 0
0000 0001 1
0000 0010 2
0000 0100 4
0000 1000 8
0001 0000 16
<< 向左移 就是把二级制的1向左移动一个位置 对应的十进制数相当于*2
>>同理
*/
System.out.println(2<<3);
//扩展赋值运算符
int e=10;
int f=20;
e+=f;//e=e+f (*= /= 同理)
e-=f;//e=e-f
//字符串连接符 +
System.out.println(e+f);
System.out.println(""+e+f);
//在+号运算符两侧,只要出现String类型,他就会把其他操作数都转换成String类型连接起来
System.out.println(e+f+"");//先计算的e+f,所以结果是30
//条件运算符
// x ? y : z
//如果x==true ,则结果为y,否者结果为z
int score =61;
String type=score>60 ? "及格" : "不及格";
System.out.println(type);
}
}
包机制
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d7bbeYIB-1632381793796)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210922160645629.png)]
JavaDoc
javadoc命令是用来生成自己的API文档的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AGzYdDlt-1632381793798)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210923143938936.png)]
package com.chen.operator;
/**
* @author chen
* @version 1.0
* @since 1.8
*/
public class Doc {
String name;
/**
*
* @param name
* @return
* @throws Exception
*/
public String test(String name) throws Exception{
return name;
}
}
命令提示符生成文档:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j5zQtVHj-1632381793800)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210923151419629.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cFvMDVmo-1632381793802)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210923151747645.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JXy9wtki-1632381793804)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210923151902474.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uVlIze6t-1632381793805)(C:\Users\22698\AppData\Roaming\Typora\typora-user-images\image-20210923152000377.png)]
使用IDEA生成JavaDoc文档:https://zhinan.sogou.com/guide/detail/?id=316513277579
ring test(String name) throws Exception{
return name;
}
}
命令提示符生成文档:
[外链图片转存中...(img-j5zQtVHj-1632381793800)]
[外链图片转存中...(img-cFvMDVmo-1632381793802)]
[外链图片转存中...(img-JXy9wtki-1632381793804)]
[外链图片转存中...(img-uVlIze6t-1632381793805)]
使用IDEA生成JavaDoc文档:https://zhinan.sogou.com/guide/detail/?id=316513277579
标签:java,img,基础,System,语法,转存,println,外链,out 来源: https://blog.csdn.net/qq_46152283/article/details/120435759