对javase相关知识进行复习巩固,首先是对idea的一些用法,快捷键进行复习整理~
idea2021设置优化
快捷键大全
新建一个项目HelloWorld开始复习
JAVASE,JAVAEE,JAVAME三者的关系
java是编译型和解释型两种类型的集合
java的可移植性来自于JVM
JRE:java运行环境,包括java虚拟机,java核心类库和支持文件,而不包含开发工具,包含开发工具和编译器的叫做JDK
主要用jdk的两个命令,于jdk/bin/目录下的java.exe和javac.exe
有main方法的程序一般都是Application程序
java中的类名要和文件名相同,不然无法编译
Hello.java
public class Hello { public static void main(String[] args) { System.out.println("Hello World!"); } }
一个*.java编写完后,通过javac.exe编译成*.class文件,然后通过java.exe放入JVM中运行,java Hello
类是java中的基本组成元素,所有的java程序都要被类管理
定义的时候,在class前面选择性的添加public
一个*.java文件中只能有一个public class,且这个public class的名称要和文件名一致
而class类名可以和文件名不一致,但是一个文件中存在多个class定义,编译后会分为不同的*.class文件
主方法表示一个程序的起点,java中主方法也要放在一个类中,定义格式如下
public static void main(String[] args) { }
主方法在的类叫做主类,一般主类都用public class定义
System.out.print("Hello World!");//输出后不换行 System.out.println("Hello World!");//输出后换行
CLASSPATH指向要加载的类的目录,经常在系统环境变量里看到
PATH:操作系统的环境属性,指的是可以执行命令的程序路径
CLASSPATH:是所有*.class文件的执行路径,java命令执行时利用此路径加载所需要的*.class文件
单行 //
多行 /**/
文档 /** */
其中引用数据类型牵扯内存的开辟,为整个java入门的第一大难点
例如,int类型取最大值,Integer.MAX_VALUE,同理取最小值
最大值214783647+1之后为最小值-214783648
最小值-214783648-1之后为214783647
最小值-214783648-2之后为214783646
扩大数据类型:
public class TestDemo01 { public static void main(String[] args) { int max = Integer.MAX_VALUE; int min = Integer.MIN_VALUE; //int + long = long System.out.println(max + 1L);//最大值加一 System.out.println(min-(long)1);//最小值减一 //long + int = int System.out.println((long)min -2);//最小值减2 } } 输出: 2147483648 -2147483649 -2147483650
注意其中转换的方式
大小写字母转换:
public class TestDemo02 { public static void main(String[] args) { char c = 'A'; int num = c; num = num +32; System.out.println((char)num); } }
String属于引用数据类型,他属于一个类所以大写首字母
使用‘+’来进行字符串拼接
JSP开发中一定会用到,格式为:
布尔表达式?满足此表达式时的内容 : 不满足此表达式时候的内容
& 普通与
&& 短路与
if((1 == 2)&(10/0 == 0)) 程序报错↑ if((1 == 2)&&(10/0 == 0)) 返回为假↑ 前面的条件为false时,&&不再判断,直接得出结论
同理或操作也如此
if((1 == 1)|(10/0 == 0)) 程序报错↑ if((1 == 1)||(10/0 == 0)) 返回为真↑ 前面的条件为true时,||不再判断,直接得出结论
详见书本,如何更快计算2的3次方:
public class TestDemo03 { public static void main(String[] args) { int x = 2; System.out.println(x<<2); } }
以及还有位或,位与操作
方法的主要功能是封装可以执行的一段代码,这样不仅可以重复利用,还可以更方便实现代码的维护。
修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值; }
修饰符就是像public static这样的
返回值的类型有2种:
方法命名规范:第一个单词首字母小写,其余单词首字母大写
定义一个加法
public class TestDemo04 { public static void main(String[] args) { System.out.println(add(123,7)); } /** * 实现数据的加法操作 * @param x 操作数字一 * @param y 操作数字二 * @return 返回两个数字的加法结果 */ public static int add(int x,int y){ return x + y; } }
方法的重载指方法名称相同,参数的类型或者个数不同,调用的时候会按照传递的参数类型和个数完成不同方法体的执行。
也就是说:一个方法名称,执行多项操作,一个add(),要算2个数相加,也要能算3个数相加
public class TestDemo04 { public static void main(String[] args) { System.out.println(add(123,7)); System.out.println(add(1,1,1)); System.out.println(add(3.14,2.44)); } /** * 实现数据的加法操作 * @param x 操作数字一 * @param y 操作数字二 * @return 返回两个数字的加法结果 */ public static int add(int x,int y){ return x + y; } /** * 实现数据的加法操作 * @param x 操作数字一 * @param y 操作数字二 * @param z 操作数字三 * @return 返回三个数字的加法结果 */ public static int add(int x,int y,int z){ return x + y + z; } /** * 实现数据的加法操作 * @param x 操作数字一 * @param y 操作数字二 * @return 返回两个小数的加法结果 */ public static double add(double x,double y){ return x + y; } }
递归是自己调用自己的特殊形式,必须满足2个条件: