Java学习笔记重要知识点
知识点1:类
一个java文件可以没有或拥有一个公有类 (public class A,**A为类名,且,必须是Java文件对应的对象名,
例如你创建的文件是k.java,创建公有类时,整个类就必须为public class A**),
一个java文件可以拥有多个非公有类(class A,A为类名,与公有类不同,这里的类名可自己定义)
知识点2:创建第一个HelloWorld
例子创建第一个Java文件,编写HelloWorld!
首先创建文件k.java,k为举例对象名,结合的两种方法用EditPlus编写,保存
①公有类public class k创建代码如下:
public class k
{
public static void main(String arg[])
{
System.out.println("HelloWorld!");
}
}
②非公有类创建代码如下:
class A
{
public static void main(String arg[])
{
System.out.println("HelloWorld!");
}
}
知识点3:运行java文件,在搭配好Java运行环境的前提下
首先在DOS窗口打开k.java文件所在目录
(win10快捷方法,直接在k.java所在目录输入cmd然后回车)
下图为进入的DOS窗口
进入DOS窗口后,分两个步骤运行创建好的k.java文件
首先输入javac k.java回车,系统会自动生成你编写代码生成的对应类名文件
假如你创建了public class k,系统自动生成k.class文件,class k也是生成k.class文件
其次启动类文件,如果系统生成了k.class,那么输入Java k 回车即可完成运行
附:结合知识点1,由于一个java文件只能有0或1个公有类public class A,所以生成的.class文件只有
一个,而一个java文件可以拥有多个非公有类class A,class B...,所以生成的.class文件有多个 ,如对k.java
执行以下代码
执行结果:
生成的A.class B.class等.class文件可通过java A(A为.class对象名)直接运行
知识点四:换行及转义字符
System.out.print(‘A’); 输出A
System.out.println(‘A’); println中的'ln'具有换行功能,表示输出A后换行
单个反斜杠具有转义功能," \\' " 表示将 ’ 转换成普通的 ' 输出
System.out.print(‘ \\' ’); 输出 '
System.out.print(‘\\\’); 输出\
System.out.print(‘\\t’); 输出' '
System.out.print(‘A\\n’); 输出A后换行,与println有相似功能
System.out.print("\\\n"); 输出\n,两个\等于一个普通的\
附:\t 制表符,与按tab键等效,与输出空格有相似功能,但ASCLL码值不同
字符串输出用 “”,字符输出 '',如“a”表示字符串a,'a'表示单字符a,转义字符用 “” 或 '' 输出都可以,
如'\t',“\\t”,但要注意的是,输出**显示**\t或\n 必须用"\\\t",因为如\t是由\和t组成的字符串
知识点五:Java中数据类型
-
各数据类型大小及取值
数据类型 占用空间大小(字节) 取值范围 默认值 byte 1 -128~127 0 short 2 -2的15次方~2的15次方减1 0 int 4 -2的31次方~2的31次方减1 0 long 8 -2的63次方~2的63次方减1 0L float 4 – – double 8 – – char 2 0~65535(2的16次方减1) – boolean 1 只有true或false true 容量比较:byte<short=char<int<long<float<double
在下面提到的类型转化中,大容量类型转化为小容量类型会出现精度损失附:一字节占8位 1byte=8bit long a=123; 表示int类型的整数123 long a=123**L**; 表示long类型的整数123,long类型整数后面要加L
-
类型转换,变量面前加类型, TYPE b = (TYPE) a, 如:
类型转化: 如 char c= 97;存在int到char的类型转化 强制类型转化: 已知long a=123L;则 int b=(int)a; 或 int b; b=(int)a; 将a强制转换为int类型并赋值给b short b=(short)a; 将a强制转换为short类型并赋值给b 已知double a=3.0; 则float b=(float)a; 将double类型的a强制转换为float类型并赋值给b 附:float直接定义要做数值尾部加f,跟long类型相似,如 float a=3.0f;
知识点五:运算符
算术运算符 | + | - | * | / | % |
---|---|---|---|---|---|
加 | 减 | 乘 | 除 | 求余 | |
++ | - - | ||||
自加 | 自减 | ||||
关系运算符 | > | < | >= | <= | == |
大于 | 小于 | 大于等于 | 小于等于 | 判断等于 | |
!= | |||||
不等于 | |||||
逻辑运算符 | & | | | && | || | ^ |
与 | 或 | 与 | 或 | 异或 |
a++与++a的区别:
a++(先赋值,在运算)
已知int a=10; int b=a++; 先将a赋值b,a再自身加1,结果b为10;a为11
++a(先运算,再赋值)
已知int a=10; int b=++a; 先将a加1,再赋值b,结果b为11;a为11
同理a--与--a的区别:
int a=10; int b=a--; 结果b为10,a为9
int a=10; int b=--a; 结果b为9,a也为9
"+"作用:
数字+数字=数字(加法运算)
数字+"字符串"="字符串"(字符串连接,字符串连接服从从左至右运算原则 )
10+10+"20"=2020
"20"+10+10=201010
三元判断
a?b:c a条件是否为真,是的话b成立,否则c成立