Java学习地址快捷键注释关键字标识符
命名规则 数据类型
字节整数拓展类型字符拓展类型类型转换变量常量
变量的命名规范 运算符包机制JavaDocJava流程控制
Java学习地址西部开源-秦疆
强推这个,老师加了很多面试题
快捷键| 快捷键 | 对应指令 |
|---|---|
| psvm | public static void main(String[] args) { } |
| sout | System.out.println(); |
//单行注释 JavaDoc:文档注释关键字
| abstract | assert | boolean | break | byte |
|---|---|---|---|---|
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | strictfp | short | static | super |
| switch | synchronized | this | throw | throws |
| transient | try | void | volatile | while |
所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(__)开始首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(__)或数字的任何字符组合不能使用关键字作为变量名或方法名。标识符是大小写敏感的合法标识符举例:age、$salary、value.、1 value非法标识符举例:123abc、-salary.、#abc可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很LoW 数据类型
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
弱类型语言
不要求变量的使用要严格符合规定,所有变量都不需要先定义后才能使用
Java数据类型分为两大类
基本类型 (primitive type)引用类型 (reference type)
注意long类型数字后面要加L
注意float类型要在数字后面加F,double类型不用
long nu=10L; float ff=3.12F; //字符 char cc="A"; //字符串 String ss="nihao"; //boolean值 boolean bb=true;字节
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示,
1B(byte,字节)=8bit(位)
字符:是指计算机中使用的字母、数字、字和符号
1bit表示1位,
1Byte表示一个字节1B=8b。
1024B=1KB
1024KB=1M
1024M=1G
整数拓展类型int i=10;//十进制10 输出10 int i=010;//八进制10 输出8 int i=0x10;//十六进制10 输出16 0~9 A~F
注意:
- 银行业务表示不用float 用BigDecimal数学工具类2.强制转换 (int)+名t 表示制表符
char aa='u0061'; System.out.println((aa);//输出a (Unicode编码) char bb='a'; System.out.println((int)bb); //输出61类型转换
由低到高自动转换,由高到低强制转换 方法:(类型)变量名
低---------------------------------->高 byte,short,char---->int---->long---->float---->double//小数高于整数
注意:
- 不能对boolean值进行转换存在精度缺失问题
public class lesson1 {
public static void main(String[] args) {
System.out.println((int)12.7);//out 12
System.out.println((int)-13.245F);//out -13
}
}
- JDK7新特性,数字之间可以用下划线分割
public class lesson1 {
public static void main(String[] args) {
int money=10_0000_0000;
System.out.println(money);//out 1000000000
}
}
public class lesson1 {
public static void main(String[] args) {
int a=128;
byte b= (byte)a;
System.out.println(a);//int最大是127
System.out.println(b);//数据溢出 out -128
}
}
//重点
public class lesson1 {
public static void main(String[] args) {
int money=10_0000_0000;
System.out.println(money);//out 1000000000
int year=20;
long total=(long)(money)*year;//数据溢出,得先将一个数据转化成long类型,不能(long)(money*year)
System.out.println(total);
}
}
变量
public class Lesson1 {
//属性:变量
//实例变量:从属于对象;如果不自行初始化,这个类型的默认值0
//String默认值为Null
//boolean默认值为false
//除了基本类型,其余的都为Null
String name;
int age;
static double salary=25000;
double static salary=25000;//两个一样
//加static变全局变量
static int a=03;
//main方法
public static void main(String[] args) {
//局部变量;必须声明和初始化值
int money=10_0000_0000;
System.out.println(money);//out 1000000000
System.out.println(salary);
//变量类型 变量名字 = new Lesson1()
Lesson1 lesson1 = new Lesson1();
System.out.println(lesson1.age);
}
//其他方法
public void add() {
}
}
注意:
- 如果实例变量没有用static声明,引用则需要用变量类型 变量名字 = new Lesson1()修饰符不区分先后顺序(像是static和double)
final 常量名=值;//常量名一般用大写字母表示 final double PI=3.14;变量的命名规范
所有变量、方法、类名:见名知意类成员变量:首字母小写和驼峰原则:monthSalary局部变量:首字母小写和驼峰原则常量:大写字母和下划线:MAX_VALUE类名:首字母大写和驼峰原则:Man,GoodMan方法名:首字母小写和驼峰原则:run(),runRun() 运算符
括号()优先级最高
算术运算符:+,-,*,/,%,++,----
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=instanceof
逻辑运算符:&&, ||,!
位运算符:&,| ,^,~,>>,<<,>>>(了解!!!)
条件运算符 ?:
扩展赋值运算符:+=,-=,*=,/=
public class Lesson1 {
public static void main(String[] args) {
//关系运算符返回的结果:正确,错误 布尔值
//%取余
//自增自减满足C语言语法 a++,++a
int a=10;
int b=21;
System.out.println(a>b);//output false
System.out.println(b%a);//output 1
}
}
public class Lesson1 {
public static void main(String[] args) {
1onga=123123123123123L;
int b=123;
short c=10;
byte d 8;
System.out.println(a+b+c);//Long
System.out.printin(b+c+d);//Int
System.out.printin(c+d);//Int ==important== output 0 because 0.5int-->0
System.out.printin((double)c+d);//douible output 0.5
}
}
public class Lesson1 {
public static void main(String[] args) {
//与(and)或(or)非(取反)
boolean a true;
boolean b=false;
System.out.println("a&&b:"+(b&&a));//逻辑与运算:两个变量都为真,结果才为true
System.out.println("alb:"+(alb));//逻辑或运算:两个变量有一个为真,则结果才为true
System.out.println("!(a&&b):"+!(a&&b));//如果是真,则变为假,如果是假则变为真
//短路运算
int c=5;
boo1eand=(c<4)&&(c++<4);//c<4为false 则不看&&后面的
System.out.println(d);
System.out.printin(c);
}
}
public class Demo06{
public static void main(String[]args){
}
}
public class Demo07{
public static void main(String[]args){
int a=10;
int b=20;
a+=b;//a a+b
a-=b;//a a-b
System.out.println(a);
//字符串连接符+,String important
System.out.println(""+a+b);//output 1020
System.out.println(a+b+"");//output 30
}
}
//三元运算符
public class Demo08{
public static void main(String[]args)
//x ? y:z
//如果x==true,则结果为y,否则结果为z
int score 80;
String type=score<60?"不及格":"及格";//必须掌握
System.out.println(type); //output 及格
}
}
包机制
为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。包语句的语法格式为:
package pkg1[.pkg2[.pkg3...]];
一般利用公司域名倒置作为包名;wiww.baidu.com ---------> com.baidu.www为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import”语句可
完成此功能
import package1[package2...].(classname *)
注意不要让包的名字重复,import必须在package下面
import com.kuang.base.* //表示全引用base中的数据JavaDoc
javadoci命令是用来生成自己API文档的
参数信息@author作者名@version版本号@since指明需要最早使用的jdk版本@param参数名@return返回值情况@throws异常抛出情况
使用cd 跳转到指定文件夹 javadoc -encoding UTF-8 -charset UTF-8 (文件名).java
Java流程控制



