java入门
-
JVM:Java虚拟机,任何使用java写的代码均可运行的环境
-
三高:高可用,好性能和高并发
-
Java特性及优势:简单性、面向对象、可移植性、高性能、分布式、动态性、多线程、安全性、健壮性
-
三大版本:
JavaSE:标准版(桌面程序、控制台开发);
JavaME:嵌入式开发(手机、小家电……);
JavaEE:E企业级开发(web端,服务器开发……)
-
JDK\JRE\JVM
JDK:Java Development Kit
JRE: Java Runtime Environment
JVM:Java Virtual Machine(核心)
Java开发环境搭建
卸载JDK:
- 删除java的安装目录
- 删除环境变量内的java—home
- 删除path下关于Java的目录
安装jdk:
-
百度搜索jdk8,找到下载地址
-
同意协议
-
下载电脑对应的版本
-
双击安装jdk
-
记住安装的路径
-
配置环境变量
-
我的电脑-属性-环境变量
-
环境变量-JAVA_HOME
-
- 配置path变量
![](https://img-blog.csdnimg.cn/048b7c1d36be430eb6df2886d2fccb32.png)
- cmd查看java版本:java -version
notepad++安装
Hello World及简单语法规则
-
新建文件夹,存放代码
-
新建一个Java文件
- 文件后缀名为:.java
-
编写代码
public class Hello{ public static void main(String[] args){ System.out.print("Hello World"); } }
-
编译:javac Java文件名,会生成一个class文件
-
运行class文件:java class文件名
可能遇到的情况
- 字母大小写不能出现问题,Java大小写敏感
- 尽量使用英文
- 文件名和类名必须相同,且首字母为大写
- 代码编写时需要在英文环境下编写
Java程序运行机制
- 编译型—操作
- 解释型—网页,速度要求高
java基础语法
一. 注释
分类
-
单行注释://可以注释一行文字
-
多行注释:/* 注释*/可以注释一段文字
-
文档注释:
JavaDoc:文档注释/** 注释 */
JavaDoc:文档注释/** 注释*/
/**
* @Description Hello Wolrd!
* @Author 狂神说java,
*/
二. 标识符
- Java所有的组成部分都需要名字。类名、变量名和方法名都成为标识符。
-
在写程序时定义变量和文件名不得使用上述关键词
-
所有标识符都应该该以字母,美元符$或者下划线_开始
-
首字母可以是字母、美元符,下划线或者数字的任意组合
-
标识符是大小写敏感的
-
-
可以使用中文命名,但不建议使用
三. 数据类型
-
语言类型
- 强类型语言:要求变量的使用要严格类型规定,所有变量必须先定义后才能使用,例如C,java,C++
- 弱类型语言:要求变量的使用要类型规定,所有变量可以使用时在定义,例如Python,VB ,JS
-
数据类型
-
基本类型(Primiive type)
//八大基本数据类型 int num1=10;//最常用 byte num2=20; short num3=30; long num4=30L;//Long类型要在数字后面加一个L //小数:浮点数 float num5=50.1F;//float类型要在数字后面加一个F double num6=3.1514926; //字符代表一个字 char name='中'; //字符串String不是一个关键字,是一个类 String str="中国"; //布尔值 boolean flag=true; boolean flag2=false;
-
引用类型语言(reference type)
1.字节:
- 位(bit):计算机内部数据存储的最小单位,11001100是一个八位二进制数
- 字节(byte):计算机中数据处理的基本单位,习惯用大写B来表示
- 1B(byte,字节)=8bit(节)
- 字符:计算机中使用的字母、数字、字和符号
- 1bit为一位
- 1 byte表示一个字节,1B=8b
- 1024B=KB
- 1024KB=1M
- 1024M=1G
2.拓展
public class Demo03 { public static void main(String[] args) { //整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x int i=10; int i2=010; //八进制0 int i3=0x11;//十六进制0x System.out.println(i); System.out.println(i2); System.out.println(i3); //============================================== //浮点数拓展 银行业务 //BigDecimal 数学工具类 //============================================== //float 有限,离散,舍入误差 大约 接近但是不等于 //double //最好完全使用浮点数进行比较!!!! float f=0.1f; double d=1.0/10; System.out.println(f==d); System.out.println(f); System.out.println(d); float d1=2313313131313113f; float d2=d1+1; System.out.println(d1==d2); //true //============================================== //字符拓展 //============================================== char c1='A'; char c2='中'; System.out.println(c1); System.out.println(c2); System.out.println((int)c1);//强制转换 System.out.println((int)c2);//强制转换 //所有的字符本质还是数字 //编码 Unicode 表:(97=a,65=A) 2个字节 65536 Excel表格2的16此方=65536 //U0000 UFFFF char c3='\u0061'; System.out.println(c3); //转义字符 // \t 制表符 //\n 换行 //····· System.out.println("Hello\tWorld!"); System.out.println("Hello\nWorld!"); System.out.println("Hello·····World!"); // String sa=new String("hello world"); String sb=new String("hello world"); System.out.println(sa==sb); String sc="hello world"; String sd="hello world"; System.out.println(sc==sd); //对象 从内存分析 //布尔值拓展 boolean flag=true; if (flag)//=flag==true { } } }
-
四. 类型转换
(注:运算时,不同类型的数据需要先转化为同一类型,然后进行运算)
public class Demo05 {
public static void main(String[] args) {
//操作数较大的数时,注意溢出问题
//JDK7特性,数字之间可以用下划线分割
int money=10_0000_0000;
int year=20;
int total=money*year;//-1474836480,计算时溢出
long total2=money*year;//默认是int 转换之前存在问题了
long total3 =money*((long)year);
System.out.println(total3);
//L l
}
}
五. 变量
-
变量:可以变化的量
-
Java变量是程序中最基本的存储单元,其要素包括:变量名,变量类型和作用域
type varname [=value] [{,varname[=value]}]; //数据类型 变量名=值;可以使用逗号隔开来声明多个类型变量
注意:
- 每个变量都要有类型,类型可以是基本类型,也可以是引用类型
- 变量名必须是合法的标识符
- 变量声明是一条完整的语句,因此每个声明都必须以分号结束
-
变量作用域:
public class Demo07 { //类变量 static static double salary=2500; //属性:变量 //实例变量:从属于对象;若不自行初始化,这个类型的默认值0 0.0 u0000 // 布尔值默认是false //除了基本类型,其余的默认值都是null String name; int age; //main方法 public static void main(String[] args) { //局部变量:在方法内部,先声明和初始化之后方可使用 int i=10; System.out.println(i); //变量类型 变量名字=new Demo08(); Demo07 demo07= new Demo07(); System.out.println(demo07.name); //类变量 static System.out.println(salary); } //其他方法 public void add(){ } }
六. 常量
定义常量时使用final来定义
public class Demo08 {
//修饰符,不存在先后顺序
final static double PI=3.13;
public static void main(String[] args) {
System.out.println(PI);
}
}