这是我第一篇博客,大数据学习,这个系列将持续五个多月。
Java是一门面向对象语言,不仅吸收了C++语言特点,而且摒弃了C++里难以理解的指针和多继承。
当然Java也有用来代替指针的地方——引用。Java里不能使用多继承,但是专门有一个代替多继承的东西叫做接口。
java中最小的程序单元是类,所有的执行都需要在类中完成。
一个java文件中只有一个类使用public修饰,并且这个使用public修饰的类,类名需要与文件名一致
如果一个源文件中包含了N个类,会生成N个字节码文件,即每个类都会生成自己的字节码文件
如果一个类必须运行,则必须要有main方法,因为main方法是入口方法,只需要一个即可
java特点:简单性、面向对象、分布式、健壮性、安全性、平台独立、可以移植,多线程、多态等。
java发展史:1996年1月Sun公司发布JDK1.0;
2009年,Oracle公司正式收购Sun公司;
2010年,Java创始人“詹姆斯高斯林”从Oracle公司离职;
2014年,Java8正式发布。
基本概念:
JRE——Java的运行环境,如果要运行Java程序,需要JRE支持,因为JRE包含JVM支持。
JDK——Java开发工具,包含Java程序所需的所有工具,包括javac(编译)和java(运行),JDK包含JRE。
JVM——Java虚拟机,运行java使用的环境。
Java体系:
JavaSE:java标准版本,java核心语法,基础概念等。
JavaEE:java企业版,Jsp.servlet等,一般写在服务器端。
JavaME:java嵌入式版本,多用于移动端,现已基本不用。
Java扩平台
一份java代码可以在不同平台上运行
Java源文件---->编译---->Java字节码文件(跨平台)---->运行性在JVM上
一些简单DOS命令
dir: 查看当前路径下的所有文件。
cls:清屏
cd:跳转路径
常量
字面常量——1 2 3 4 5 1.2 1.11等
定义常量——使用关键字 final 修饰的,不可变
变量
表示存储空间,用来存放某一类型的常量,没有固定值,可重复使用
数据类型包括基本数据类型
和引用数据类型
数据类型:
这里先学习基本数据类型
基本数据类型(值类型)
byte ,short ,int,long float double char boolean
java中默认整数就是int类型 小数默认就是double类型
char类型在赋值时候不能给空值
例如: char ch = ‘’; 错误不能这样写
字符包括: 汉字,英文字母,特殊符号
ps:汉字 是使用 unicode(万国码) ‘\u0000’~’\uFFFF’ --> 表示汉字 --> UTF-8(字符编码)
英文字母,特殊符号 -->ASCII码 0-127 char是不能存储负数
public class VarDemo {
public static void main(String[] args) {
//定义八种基本数据类型的变量并赋值
//数据类型 变量名 = 值;
byte b = 1; // -128 ~ 127
short s = 2;
//int 在内存开辟是 4个字节的空间 4个字节相当于32位
int i = 10; //最大存储范围是21个亿左右
long l = 1000;
//使用float类型的变量时,需要注意因为默认小数类型是double
//所以编译器就会认为1.234是double类型,如果要存储到float需要明确表示是float类型
//给float类型赋值时,只需给当前值添加f即可
float f1 = 1.234f;
double d1 = 2.345;
char ch = 'a';
boolean bl = true;
//打印变量的值
System.out.print("byte类型的变量值:"+b);
System.out.println("short类型的变量值:"+s);
System.out.println("int类型的变量值:"+i);
System.out.println("long类型的变量值:"+l);
System.out.println("float类型的变量值:"+f1);Java基本数据类型的转换问题
System.out.println("double类型的变量值:"+d1);
System.out.println("char类型的变量值:"+ch);
System.out.println("boolean类型的变量值:"+bl);
}
}
自动类型转换
ps:boolean不参与基本数据类型的转换
将小范围内数据类型存储赋值给大范围数据类型存储,这个过程称之为强制类型转换
byte-->short-->char-->int-->long-->float-->double
从byte到double结束,可以依次赋值,当前类型的顺序,在存储空间中所占内存依次增大
ps:
1.byte,short,char类型在计算的时候,会被自动提升为int类型
2.float在计算是不会提升为double类型
强制类型转换
将大范围内数据类型存储赋值给小范围数据类型存储,这个过程需要手动完成,称之为强制类型转换
ps:强制类型转换有风险,会出现精度缺失(溢出),使用强制类型转换必须小心
小范围数据类型 变量名 = (小范围数据类型)大范围数据类型对应的值
例如:
int a = 10;
byte b = (byte)a;