Java学习第一天内容
学习内容:
Java发展史及基本数据类型的认识
一、Java语言的发展历史
Java之父:詹姆斯高斯林
Java8: 目前市场上使用最多的版本
Java11: 目前最新的版本
Java语言的应用:网站后台、手机APP
计算机中所有的数据都是以二进制进行存储的,每8个二进制位就称为1个字节(二进制是有0和1组成的数字)
8bit(位)=1Byte(字节)
1KB=1024Byte
1MB=1024KB
1GB=1024MB
1TB=1024GB
1PB=1024TB
(彩蛋:传智播客打造了一个程序员专属的节日,10月24日程序员节)
命令提示符(小黑窗口)
1)打开:win+R 输入cmd
2)常用的命令
C: 切换盘符到C盘
d: 切换盘符到D盘
cd + 指定的目录:进入指定的目录
cd.. 退回到上一级目录
cd/ 返回到根目录
dir 显示当前目录的所有内容:
cls 清屏
exit 正常退出
Ctrl + C 结束死循环
二、Java开发环境
1.Java的跨平台性:Java语言开发的程序可以在不同的操作系统上运行
原理:在不同的操作系统上安装有不同版本的JVM,由JVM来执行Java程序。Java语言具有跨平台性,jvm不具有跨平台性。
2.JDK、JRE以及JVM
JDK:Java开发工具包
JRE: Java的运行环境
JVM: Java虚拟机
关系:JDK包含JRE,JRE包含JVM【 我们开发Java程序只需要安装JDK就够了】
3.JDK的安装和配置
安装:略(看笔记)
配置:
1)此电脑–>右键–>高级系统设置–>环境变量–>系统变量(新建)
变量名:JAVA_HOME
变量值:C:\develop\Java\jdk-9.0.4
2)把%JAVA_HOME%\bin 配置到path路径的最前面(最后面)
- 打开cmd 输入javac和java
有大片的提示,说明配置成功
三、HelloWorld案例【重重点】
1.编写源代码(.java)
//新建文件 HelloWorle.java
//类名和文件名要相同
public class HelloWorld{
//主方法,固定写法
//是程序的入口
public static void main(String[] args){
System.out.println(“HelloWorld”);
}
}
2.编译:
javac HelloWorld.java
作用:使.java文件(源文件) --> .class文件(字节码文件)
3.运行:
java HelloWorld
作用:执行.class文件
4.常见的问题
1)一定要打开文件的扩展名
2)括号一定要成对出现
3)单词是严格区分大小写的
4)标点符号一定要是英文符号
错误:非法字符
5)代码一定要按照规范格式写(不是语法要求,而道德要求,保命要求...)
四、注释、关键字、标识符
1.注释
作用:提高代码的阅读性
单行注释://解释文字
多行注释:/* 解释文字 /
文档注释:/* 解释文字 */ (后面讲)
2.关键字
被Java语言赋予特定含义的单词,有如下的特点
1)全都是小写的
2)在高级记事本或集成开发环境当中对关键字有特殊的颜色标记
3.标识符
在代码中可以自己定义的名字只有(类名、方法名、变量名...)
硬性要求(必须遵守)
自定义名字的命名规则:
1)大小写字母
2)数字
3)$和_
注意事项:
1)不能是数字开头
2)不能是Java的关键字
大公司里的规定更为严格:
3)代码中的自定义命名均不能以下划线_和美元符$开始,也不能以他们结束。
反例:_name/$Object/name_/object$
4)代码命名严禁使用拼音和英文混合的方式,更不允许直接使用中文的方式
软性要求(道德约束)
1)类名:每个单词首字母大写(大驼峰命名法)
HelloWorld
2)变量名、方法名:从第二个单词开始其首字母大写(小驼峰命名法)
int applePrice=10;
3)自定义常量:每一个字母都大写,多个单词用_隔开
final int AGE_MAX_VALUE=200; //年龄的最大值
final int AGE_MIN_VALUE=80; //年龄的最小值
总的规则:见名知意
五、常量和变量
常量:在程序的运行过程中值不发生改变的量
常量的分类:
1.字面值常量(字面量):直接写出来的量
整数字面常量 100、200
浮点字面常量 3.14、5.88
字符字面常量 ‘a’、‘1’、‘中’、’+’
字符串常量 “”、" "、“abc”、“中国”
布尔字面常量 true 、false
空常量 null
注意:1(整数) ‘1’(字符) “1”(字符串)
2.自定义常量【简单了解】
final 修饰的变量值在程序中只能被赋值一次(即被初始化之后不能再赋值),不能被再次更改【其实就是常量】
final int a=10; //被final修饰的变量,值不能被更改(常量)
a=20; //报错,重新给a赋值为20不可以
变量:在程序的运行过程中值可以发生改变的量
基本数据类型(4类8种)
整数类型 所占字节数 表示的数据范围
byte 1个 -128~127
short 2个
int 4个
long 8个
浮点数类型(浮点数表示的范围大于整数型表示的范围)
float 4个
double 8个
注意:在计算机中小数有可能不是一个精确的值
字符(char字符参与多种数据类型的运算会自降为int型)
char 2个
布尔
boolean 1个
各基本数据类型的表示范围
char -128 ~ +127 (1 Byte)
short -32767 ~ + 32768 (2 Bytes)
int -2147483648 ~ +2147483647 (4 Bytes)
long long -9223372036854775808 ~ +9223372036854775807 (8 Bytes)
long long的最大值:9223372036854775807
long long的最小值:-9223372036854775808
各基本数据类型的表示范围:
注意:
1)浮点型的数据表示的范围比整数型的数据范围大
2)整数默认是int类型,要表示long类型,需要加后缀L(建议用大写的做后缀,如果是小写容易和数字混淆)
小数默认是double类型,要表示float,需要加后缀F
定义格式
数据类型 变量名 = 数据值;
//定义int类型的变量,值是10
int a = 10; //把整数10赋值给int类型的变量a
//定义double类型
double a = 3.14;
//定义float类型
float c1=5.88F; //float需要加后缀F
float c2=3; //正确的,3会自动的转换为3.0
float c3=3.0; //错误的,认为3.0是double类型
float c4=3.0F; //正确的
//定义long类型
long d=888888L; //long需要加后缀L
//定义char类型
char ch='1';
定义变量的注意事项
1)可以在一行定义多个变量
int a=3, b=4; //在一行定义2个int类型的变量,
2)变量的作用域
变量只在所定义在{}范围内有效
3)同一个作用域不能有相同的变量名
int a=10;
int a=20; //变量名重复
在for循环中变量i的作用域只在for循环中,出了for循环就不存在变量i,因此可以在for循环外又定义变量i
continue不能用于switch语句,break才可以用于switch语句
//double a = 22.00;//在同一作用域不能有相同的变量名
//没有具体的方法名只有一对大括号和里面的语句叫代码块
代码测试:
public class Demo1{
public static void main(String[] args){
//整数常量 100、200
System.out.println(100);
//浮点常量 3.14、5.88
System.out.println(3.14);
//字符常量 'a'、'1'、'中'、'+'
System.out.println('a');
System.out.println('1');
System.out.println('中');
System.out.println('+');
//字符串常量 "abc"、"中国"
System.out.println("中国");
//布尔常量 true 、 false
System.out.println(true);
//空常量null(什么也没有,不能打印)
//System.out.println(null);
//注意:1(整数) '1'(字符) "1"(字符串)
final int a=10; //把整数10,赋值给变量a
a+=10; //把a的值加10,再赋值给a
System.out.println(a);
}
}
public class Demo2{
public static void main(String[] args){
int a=3, b=4; //在一行定义2个变量,都是int类型
//int a=5; //重复 变量a
a=5;
int apple=30;
System.out.println(a); //5
System.out.println(b); //4
{
int c=10;
System.out.println(c);
}
//System.out.println(c); 错误
System.out.println(appel);
}
}
Java学习第二天的内容链接:
https://blog.csdn.net/LJN951118/article/details/88675384