斜体文字
加粗
斜体加粗
废弃
这是一个引用
| 姓名 | 性别 | 生日 |
|---|---|---|
| 1 | 2 | 3 |
print("hello word");
JDK: JAVA Development kit
JRE: JAVA Runtime Environment
JVM: JAVA Virtual Machine

public class hello{
public static void main(String[] args){
System.out.print("hello world");
}
}
编译型:源程序编译后即可在该平台运行,运行速度快。
解释型: 运行期间才编译,跨平台性能好
Java和其他的语言不太一样。因为java针对不同的平台有不同的JVM,实现了跨平台。所以Java语言有一次编译到处运行的说法。
1.你可以说它是编译型的:因为所有的Java代码都是要编译的,.java不经过编译就什么用都没有。
2.你可以说它是解释型的:因为java代码编译后不能直接运行,它是解释运行在JVM上的,所以它是解释运行的,那也就算是解释的了。
3.但是,现在的JVM为了效率,都有一些JIT优化。它又会把.class的二进制代码编译为本地的代码直接运行,所以,又是编译的。
集成开发环境(*IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。

强类型语言:要求变量的使用必须严格符合规定,必须先定义后使用。 强类型语言是一种强制类型定义的语言,一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了,强类型语言包括Java、.net 、Python、C++等语言。
举个例子:定义了一个整数,如果不进行强制的类型转换,则不可以将该整数转化为字符串。
弱类型语言: 弱类型语言是一种弱类型定义的语言,某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过显性强制转换。弱类型语言包括vb 、PHP、javascript等语言。
? 举个例子:
var A =5;
var B = "5";
SumResult = A +B;
MinResult = A -B;
基本数据类型:

引用数据类型:除了基本类型之外的,例如类,接口,数组。
进制 :
精度丢失:当小数存储的时候,小数用二进制存储是无限的,存储位数有限。
字符编码:ASCII,Unicode 和UTF-8:
ASCII: ASCII 码一共规定了128个字符的编码,比如空格SPACE是32(二进制00100000),大写的字母A是65(二进制01000001)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的一位统一规定为0。
Unicode: 可以表示世界上的所有符号。它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储。
UTF-8: UTF-8 就是在互联网上使用最广的一种 Unicode 的实现方式。UTF-8 最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。
UTF-8 的编码规则很简单,只有二条:
1)对于单字节的符号,字节的第一位设为0,后面7位为这个符号的 Unicode 码。因此对于英语字母,UTF-8 编码和 ASCII 码是相同的。
2)对于n字节的符号(n > 1),第一个字节的前n位都设为1,第n + 1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的 Unicode 码。
Unicode符号范围 | UTF-8编码方式
(十六进制) | (二进制)
----------------------+---------------------------------------------
0000 0000-0000 007F | 0xxxxxxx
0000 0080-0000 07FF | 110xxxxx 10xxxxxx
0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
跟据上表,解读 UTF-8 编码非常简单。如果一个字节的第一位是0,则这个字节单独就是一个字符;如果第一位是1,则连续有多少个1,就表示当前字符占用多少个字节。
下面,还是以汉字严为例,演示如何实现 UTF-8 编码。
严的 Unicode 是4E25(100111000100101),根据上表,可以发现4E25处在第三行的范围内(0000 0800 - 0000 FFFF),因此严的 UTF-8 编码需要三个字节,即格式是1110xxxx 10xxxxxx 10xxxxxx。然后,从严的最后一个二进制位开始,依次从后向前填入格式中的x,多出的位补0。这样就得到了,严的 UTF-8 编码是11100100 10111000 10100101,转换成十六进制就是E4B8A5。
大头模式和小头模式(4E25)
Unicode:编码是四个字节FF FE 25 4E,其中FF FE表明是小头方式存储,真正的编码是4E25。
Unicode big endian:编码是四个字节FE FF 4E 25,其中FE FF表明是大头方式存储。

public static void main(String[] args) {
//从键盘接收数据
Scanner scanner = new Scanner(System.in);
//判断有无输入
if(scanner.hasNext()){
//nextLine() 以回车为结束,next() 以空格为结束
String str = scanner.nextLine();
System.out.println(str);
}
//关闭该对象
scanner.close();
}
public static void main(String[] args) {
//数组静态初始化
int[]array1 = {1,2,3,4,5,6,7};
//数组动态初始化
int[]array2 = new int[10];
array2[0] = 1;
}
构造器(构造方法):与类名称相同且无返回值的一个方法。
作用:
实例化初始值,定义带参数的构造器,若想使用无参构造,需显式定义无参构造器。
public class Student {
String name;
int age;
// alt+insert 快速插入构造器
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
原文:https://www.cnblogs.com/goodzhangjiahui/p/14434020.html