学习java的前提知识
java语言特点
1.面向对象:封装、继承、多态
2.健壮性:去除指针,自动垃圾回收机制(但仍会出现内存溢出和内存泄露)
3.跨平台性:能在win、linux、mac等多个平台运行,通过jvm
需要了解的java知识
JDK(java开发工具包)=JRE(java运行环境)+java开发工具(如javac.exe)
JRE=JVM+java se标准库
编写的java代码保存在.java文件中,.java文件通过 javac.exe进行编译,生成.class文件(字节码文件,有几个类就生成几个字节码文件),再经过java.exe解释字节码文件,生成结果
Java的文档注释:
格式: /** 内容 */
注释内容可以被javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
生成步骤:先把文件中的类变成public类,即在class前输入public,然后打开cmd,切换到文件所在路径(比如 cd E:\JAVA\day_1),然后用javadoc命令:javadoc -d myHello -author -version hellojava.java
遇到不会可以查看api(语言提供的类库)文档,文档中的每一个包里面包含不同的类
在一个java源文件中可以声明多个类,但是最多只能有一个类声明为public,并且只能加到和文件名一样的类上(言外之意就是文件名需要和类名一致)
第一个java程序
class hellojava{
public static void main(String[] args){//main方法,程序的入口
System.out.println("hello");
}
}
java代码是区分大小写的
输出: System.out.println(“hello”); 有换行
System.out.print(“hello”); 无换行
若直接换行,则System.out.println(); 类似于cout<<endl;
java的基本语法
关键字
所有关键字都是小写
保留字
现有java版本尚未使用,但以后可能会作为关键字。如goto、const
标识符
变量、类等的名字就是标识符
命名规则:
由英文字母和数字或_或$组成
数字不能开头,不能使用关键字和保留字
区分大小写
命名规范:
包名:多单词组成时字母都是小写。如mydear
类名、接口名:多单词组成所有单词首字母大写。如MyDear
变量名、方法名:多单词组成时第一个单词首字母小写,后面的单词首字母大写。如myDear
常量名:所有字母大写,单词之间下划线隔开。如MY_DEAR
变量
数据类型:整形(byte,short,int,long),浮点型(float,double),字符型(char),布尔型(boolean),类(class,包括字符串),接口(interface),数组([])
按变量所在位置分:成员变量(类内的变量),局部变量(方法内的变量,方法就是c中的函数)
整形:byte:1字节(-24到24-1之间) short:2字节 int:4字节 long:8字节
浮点型:float:4字节 double:8字节
字符型:char:2字节 常用转义字符:\n,\t
布尔型:boolean. 只能取true或false,不像c一样可以取0或1
byte myAge1=1;
short myAge2=2;
int myAge3=4;
long myAge4=8l;//long型变量,必须以小写或者大写L结尾
System.out.println(myAge1);
double d=3.1415;
float f=3.14f;//定义float变量,要以f或F结尾
System.out.println(d+1);
System.out.println(f*2);
char c='a';
System.out.println(c);
char c2='\n';
System.out.print("hello"+c2);
System.out.println("world");
boolean bl=true;
基本数据类型之间的运算:
1.自动类型提升:数据运算时容量小的会提升为容量大的(容量指的是数据的范 围,如long的范围比float小)(byte,short,char->int->long->float->double)
byte b=1; int i=4;
只能用int取接受二者之和:int ii=i+b;
double d=i(输出4.0); i+1的值是用int接收;
2.强制类型转化:自动类型提升运算的逆运算,需要强转符(),可能会导致精度损失
double d=3.14;
int i=d;(❌)
int i=(int)d;(✔) 输出3,用的去尾法
String类型:属于引用数据类型
String s=“dsa”;
String 可以和8种基本数据类型变量做运算,且只能做+运算(连接)
String s=s+d; (dsa3.14)
只要+的左右两边有字符串类型的,那么就是连接,除此之外就是加法运算
System.out.println('*'+'\t'+'*'); //93
System.out.println('*'+"\t"+'*'); //* *
System.out.println('*'+'\t'+"*"); //51*