首先:java是世界上“最好的语言”
JDK目前的版本更新很快,企业级开发长期使用的也是1.8版本,在JDK里包含了JRE,JVM这些我们所必须的,JDK则是我们java开发者所使用的工具,JVM就是用一台虚拟机,用来运行我们生成的字节码文件(虚拟机是有C/C++来写,可以理解为用软件来实现硬件功能的)。
这是我们第一次写java程序,关于Java的主函数一眼望去比较复杂,在java里有一个类的概念,就是我们代码块中的class,每一个类都代表了一个字节码文件,我们在上图中看到的被public修饰的class后面的HelloWorld就是这个类名,需要跟我们文件名保持一致。可以创建多个类,而且每个类最后编译的时候都会生成对应的.class文件,JVM虚拟机再将.class文件运行得到我们要的结果。安装好了JDK,我们可以跨平台运行,无论是windows、mac还是linux都是可以满足的。
而在c中的函数概念转换成了方法这一说
** 如果我们在cmd中去运行java的代码,在记事本上写的文字注释可能编译不过去,这是因为javac在编译的时候按照GBK格式去编译的,但代码格式是utf格式,需要进行统一格式,我们在cmd输入javac HelloWorld.java时候在中间加上-encoding utf-8即可,用空格隔开,这样就统一了格式。**
还有我们在发现main后面有个args,这其实是个数组名,而且我们可以打印这个数组
*只需在运行java HelloWorld后面加上该数组的内容就可以打印出来,上图中的数组内容就是gaobo is
cool ha,就是这个数组有四个元素,我们分别打印即可,数组元素的大小取决于你给的多少。在这里插入代码片class Test {
}
public class HelloWorld {
public static void main(String[] args) {
short s = 10;//2->16 -2^16 2^16-1
System.out.println(s);
}
public static void main7(String[] args) {
byte b = 10;//1个字节->C的char 字节类型
System.out.println(b);
//int a = 10;
byte b2 = -128;
byte b3 = 127;
System.out.println(b2);
System.out.println(b3);
//byte b4 = 170;
//System.out.println(b4);
int i = 2147483647; System.out.println(i);
}
public static void main6(String[] args) {
char ch = ‘特’;//2个字节
char ch2 = 97;
System.out.println(ch);
System.out.println(ch2);
}
public static void main5(String[] args) {
float f = 12.5f;//4
System.out.println(f);
}
public static void main4(String[] args) {
double a = 1.1;//8
System.out.println(a*a);
}
public static void main3(String[] args) {
long a = 10;
System.out.println(a);
System.out.println(Long.MAX_VALUE);
System.out.println(Long.MIN_VALUE);
}
public static void main2(String[] args) {
int a3 = 10;
System.out.println(a3);
System.out.println(Integer.MAX_VALUE+1);
System.out.println(Integer.MIN_VALUE-1);
int maxNum = 10;
int max_num = 10;
int max3_num = 10;
int max$num = 10;
int _________ = 101;
int ____________ = 10;
int _____________________ = 10;
System.out.println(_________);//典型的坑人手法
int 钱 = 100;//Unicode字符集 -》 拉丁文 中文
System.out.println(钱);
int b=0;
System.out.println(b);
}
上述代码中:int类型无论是多少位的操作系统都是4字节,而long是8字节,没有long long类型,char类型是2字节,byte是一字节大小,short是两字节大小。double是8字节,而float则是四字节
我们定义的long变量,后面需要加一个L,比如 long a=10L,int a1=10;而区分double和float就是在float后面的数加上一个f就行。char是两个字节,char a=‘特’,一个汉字是两个字节,所以我们可以打印出来。
char ch2=97,打印出来的是a,是因为编译器把97转换成unicode表中的值,就类似于ascll一类的,但是unicode的范围比ascll范围更广。按理说97是四字节,而2字节的char不能打印出来的,需要转换一下。而我们 byte a=10却是可以打印出来的,因为byte占一字节,8bit(最高位是符号位)就是-27~ 0 ~27-1,就是我们定义的数字只要不超过这个范围,byte是可以打印出整数的,超过这个数就不行
在java当中,任何数据类型都是有存储范围的,不要超过那个范围我们就可以打印,否则就报错。



