Java随笔&tomcat闪退解决办法

JAVA笔记

 

高级编程语言:编译型 javac.exe

解释型 java.exe

程序组成:Java源程序、字节码文件、机器码指令

 

 

特点:可移植性、开发简单、支持多线程开发的语言、自动的垃圾收集处理、面向对象。

程序文件后缀为*.java

编译源文件后形成*.class文件

 

Jdk环境变量配置:编辑Path,添加jdk安装目录即可。

 

Java引用API方法:

  1. Import
  2. 程序代码中打出全名

 

 

 

类是Java的一个基本单位,定义类:

(1) public class类名称{}:文件名必须与类名称保持一致;

(2) class类名称{}:文件名可以与类名称保持一致,生成的字节码就是类名称.class,一个文件中可以定义多个类,且编译后会形成多个*.class文件(一般一个文件只定义一个类)。

 

 

 

 

主方法所在类称为主类,主类用第一种方法定义。(“args”可以换其他的,如上图)

 

输出:System.out.println()

 

CLASSPATH指类的加载路径。可直接从文件目录执行,也可使用如下指令设置class path:SET CLASSPATH=文件目录

严禁设置过多class path路径,最好从当前所在的路径中进行类的加载,此时可以将class path的内容设置为“.”

 

注释:

单行注释//

多行注释/* 注释内容 */

文档注释/** 文档注释标记  */

 

标识符与关键字:

在Java中标识符的命名要求有:字母、数字、_、$组成,且不能以数字开头,不能是Java中的保留字(关键字)。($不要再代码中出现,其有特殊含义)

变量命名要求:第一个单词小写,而后的每个单词首字母大写。

 

Java中有俩个未使用到的关键字goto、const,有三个特殊含义的单词(不算关键字)null、true、false,JDK1.4、1.5之后分别追加了assert、enum关键字。

 

Java数据类型分为俩大类:

基本数据类型:

整数型byte、short、int、long 默认值为0;

浮点型float、double 默认值0.0;

字符型char 默认值为\u0000

布尔型boolean 默认值为false。

引用数据类型:数组、类、接口 默认值为null。(默认值在主方法下无效,会报错,需提前设置)

 

数据类型选择原则:

程序开发整数用int,小数用double;

long这种数据类型一般会描述日期时间、内存或文件大小(字节);

如果需要进行编码转换或进行二进制数据传输使用byte;

char一般在描述中文时使用(基本上都忽略);

boolean在描述程序逻辑时使用。

 

 

在Java中整数的常量类型都是int型。

在进行整型数据操作的时候会存在一个数据溢出的问题,指当已经达到整型的最大或最小值时,如果继续进行数学计算可能会产生的错误数据。溢出可以使用long解决,但是首先得将其中一个变量的类型进行扩充(可赋值或者变量定义时改变),或者需要强制转换(如果数字超了int的大小得在数字后加L或l),此时数据可能会丢失,强制转换使用“(变量类型)”。

 

 

char表示单字符,多字符String,表示字符串,但是其并不是一个基本数据类型。String可以使用“+”号,但此时“+”表示2个字符串的连接。“+”在数学计算中表示加法,若俩种操作同时出现,则表示字符相连。期间若出现“-”等其他符号,则会报错。

 

使用“””声明的是字符串,字符串用String定义。

 

转义字符:

换行(\n)

制表(\t)

双引号(\”)

单引号(\’)

斜杠(\ \)

 

 

三目运算(重点)是一种赋值运算,根据条件来进行判断。

格式:

数据类型 变量 = 布尔表达式 ? 条件满足时赋值内容:  条件不满足时赋值内容;

可以使用if else替换,但不建议替换。

 

 

关系运算符:

所有的关系运算符判断完成的数据返回结果都是Boolean型

可以直接将字符与数字进行判断。

 

 

逻辑运算符:& 、|、!、&&、||

编程时尽量使用&&或||,表示程序判断到结果后就不再继续判断,而&或|则会继续判断,可能会导致出错。

 

位运算:用&、|   移位:左移位<<   右移位>>

 

程序逻辑结构:

If else(3种格式)

 

 

 

 

 

 

 

switch语句:若编写case时未加break,则会一直运行,直到遇见break或者程序代码结束为止,此时可能会出现输出错误的情况。

 

 

 

 

循环结构:

 

While:如果条件不满足就一次都不执行,而do...while的特点是即使判断条件不满足也会执行一次。

 

 

 

 

 

 

 

 

for语句:

 

 

 

循环使用原则:

对于不知道循环次数,但是知道循环结束条件的使用while循环;

如果已经明确知道循环次数,则使用for循环。

 

循环控制:

continue:跳过当前循环。

break:直接跳出。

 

 

 

方法指一段可以重复调用的代码块。

格式:

 

 

方法的返回值类型:

void:无返回值;

数据类型(基本类型、引用类型);

 

eg:

定义一个无返回值,无参数的方法:

 

 

定义一个有参数无返回值的方法:

 

 

定义一个有参数有返回值的方法:

 

 

定义方法的时候,如果某一个方法使用了void(无返回值)定义,那么该方法中可以直接利用ruturn结束调用。

 

 

 

方法重载:方法名称相同,参数的类型或个数不同。

 

虽然方法重载将依据参数的类型或个数的不同执行不同的方法体,但是最好方法重载的时候返回值类型一定要相同。

System.out.println()是一个被重载的方法。

 

 

 

方法递归调用:指方法自己调用自己的形式。

方法有一个递归的结束条件;

方法在每次递归处理的时候一定要做出一些变更。

 

 

使用while循环的操作其实大部分都可以更换为递归,之所以使用递归主要是一个方法可以执行的操作很多,而且结构要好。

eg:

1-100累加:

 

 

 

 

 

 

 

 

 

 

Tomca9点击start/shutdown.bat闪退解决方法:

在rem Guess CATALINA_HOME if not defined这句话下加:

set JAVA_HOME=E:\Java\jdk   //你的jdk存放路径

set JRE_HOME=E:\Java\jdk   //你的jre安装路径

set SET TOMCAT_HOME=E:\tomcat\apache-tomcat-9.0.13    //你tomcat的解压路径

猜你喜欢

转载自www.cnblogs.com/zx0722/p/10769732.html