个人名片:
作者简介:一名大一在校生
❄️个人主页:小新爱学习.
个人WeChat:hmmwx53
️系列专栏:零基础学java ----- 重识c语言
每日一句:人生没有一劳永逸,想不被抛弃,只有自己努力
活动地址:CSDN21天学习挑战赛
**
**
1,机缘
我是一名普二学生,由于疫情原因大一下班学期也是没有开学,不甘堕落于是在互联网这片汪洋大海中,摸寻着前进的方向,也是偶然的机会接触到了CSDN,在这里有一群志同道合的朋友一起努力,于是自己也加入了进了,一篇两篇,也收获了很多的粉丝,推动着我前进…
2,收获
在CSDN这个大家庭里,每天都过得很充实,尤其是有不错的粉丝量,文章上了热榜,都会让我高兴半天,也结识了很多优质博主,像凉哥,哪吒…
3,日常
创作已经成为记录生活的一部分了,这里有我成长的点滴…
4,憧憬
有朝一日我也能成为优质博主,有自己的铁粉团队…
**
**
1,学习目标
这21天我们可以分为3周,每周更新三篇
2,学习内容
3,学习时间
每周一,周三,周六
4,学习产出
技术笔记每周3篇
Blink若干
**
第一周:周一
前端语言:WEB、PHP
后端语言:C: 面向过程、
JAVA现象对象
C、C++
特点:开源的,跨平台性
一次编译,到处运行。
运行程序Jdk1.8,一直下一步,下一步完成。
在C:\Program Files\Java存在jdk1.8,jre1.8。
我的电脑-》鼠标右键-》属性-》高级系统设置-》系统变量
动态部署:
1.JAVA_HOME: C:\Program Files\Java\jdk1.8.0_221
2.PATH: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
3.CLASSPATH: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
1.win+R:输入CMD,进入dos命令
2.输入java -version,查看Java程序的版本
3.输入javac -version,查看javac程序的版本
1.bin: 存放可执行文件
2.lib: 引入的第三方jar包
3.jre: java的运行环境
4.src: java的源码
基础开发库:jdk/jre/lib/rt.jar
基础开发库的源码:jdk/src.zip
我们编写的文件是以“.java”为后缀的源代码文件,保存时会触发编译器Eclipse对写好的代码进行编译,编译后生成的是“.class字节码文件”,当我们点击运行代码的时候,JVM会加载字节码文件,并加载main方法执行程序,进而在控制台显示代码效果
1.JDK:JAVA的开发环境,包含了jre,java工具和java类库
2.JRE:JAVA的运行环境,包含了JVM和JAVA类库
3.JVM:JAVA虚拟机,是实现整个java跨平台的核心部分,能运行java程序
程序员win开发的java程序-》客户:苹果电脑-》安装mac版本的jre
可以理解为是一个名字。
命名规则:
java中有53个关键字,被赋予了特殊的意义
单行注释(//)、多行注释(/ **/)、文档注释(/ ***/)一般注释的是类和方法,通过注释的内容来记录类或者方法的信息
变量类型 变量名 变量值;
1.概念:可以改变的量,相当于一个容器,用于存放数据。
2. 使用:
定义时候同时赋值:数据类型 变量名称=数值;int x=10;
先定义,在赋值:数据类型 变量名称;int age;
变量名称=数据; age=10;
3.注意事项:
1.变量名不允许重复定义。
2.一条语句中可以定义多个变量,但需要使用逗号分割。
3.变量在使用之前一定要进行赋值。
4.定义float和long类型变量的时候注意:
1.定义long类型的变量,需要在数值后边加上L的标识符,大小写都行。
2.定义float类型的变量,需要在数值后边加上F的标识符,大小写都行。
5.变量的作用域:只在它所在的{}中生效。
数据类型
1.概念:用于定义不同类型的变量。
2.分类
1.基本数据类型(8种)
1.整数类型:(4种)
byte: 字节型,占一个字节,0000 0000;2^8 =256种状 态,-128~127; 0也算一种状态;
short: 短整型,占两个字节,0000 0000 0000 0000;216种状态,-215~2^15-1;
int: 整型,占四个字节,232种状态,-231~2^31-1;
long: 长整型,占用八个字节,264种状态,-263~2^63-1;
2.浮点型:
float: 单精度型,占四个字节,对小数部分的精度要求不高。 在定义 使用后的时候,需要在数值后加上f。
double: 双精度类型,占用八个字节,对小数部分的精度要求很高。
3. 字符型:char
用于接收单个字符。 占用2个字节,2^16种状态,0~65535
ab,110,汉字字符,别的国家语言的字符。
4.布尔型:boolean
结果只有true和false;
1.特点:变量里存储的是一个地址值,去映射到堆内存中真实存在的对象。
2.对象:通过new实例化出来的。 月饼,模子-》一个个月饼;
字符串:
1.String类,格式:"字符串的内容";
System.out.println("Hello,World");//里边的内容会原样打印。 Hello,World
2.字符串的拼接:字符串+任意类型数据=新的字符串;
1.自动转换:小转大
1.概念:当左边的数据类型>右边的数据类型会,右边的数据类型会自动转换成左边的数据类型。
byte a=10;int b=a;//a的值=>int类型的,在赋值给了b;
2.强制转换:大转小
1.概念:当左边的数据类型<右边的数据类型会,在右边的数据上加上(左边的数据类型)
2.格式:小数据类型 变量名=(小数据类型)值; int a=10;byte b=(byte)a;
3.缺点:
1.精度缺失:double a=3.14;int b=a;//b=3
2.数据溢出: byte a=(byte)128;//a=-128;
1.算数运算符:+,-,*,/,%,++,--;
1.+,-,*跟数学里运算方式一样。
2./:整数相除,结果只能得到整数。int a=10,b=20; System.out.println(a/b); //0
如果想要得到带有小数的结果,必须加入小数。System.out.println(10.0/b);// 0.5
3.%(取模):取余数
4.自增自减运算
1."++":自增运算,变量自身+1;
注意事项:
1.单独使用的时候,++在前和++在后没有任何区别,都是自增1;
2.混合使用的时候:
1.++在前,先自增1,后参与运算;//System.out.println(++a+3);//a=a+1=4;4+3=7;
2.++在后,先参与运算,在自增1;//System.out.println(3+a++);//7 3+a=3+4=7;a=a+1=4+1=5;
2."--"运算:自减运算,变量自身-1
注意事项:
1.单独使用的时候,--在前和--在后没有任何区别,都是自减1;
2.混合使用的时候:
1.--在前,先自减1,后参与运算;
2.--在后,先参与运算,在自减1;
2.比较运算符:==,!=
注意事项:
1.==:在比较基本数据类型的时候,相当于我们数学里边的“=”,比较数值是否相等。
2.!=: 在比较基本数据类型的时候,相当于我们数学里边的“=”,比较数值是否相等。
3.赋值运算符:=,+=,-=,*=,/=
1.= 将右边的数据赋值给左边
2.+=:将符号左右两边的数据进行加法运算,结果赋值给左边。
3.-= 将符号左右两边的数据进行减法运算,结果赋值给左边。
4.*=,/=类似;
4.逻辑运算符:&,|,&&,||,
1.&:与运算:就是并且的意思。一假为假,全真为真。
2.|:或运算:就是或者的意思。全假为假,一真为真
3.&&:短路与:
1.当左边的结果已经可以决定最终结果的时候,那么右边将不在执行。达到一个短路效果。
2.当左边的结果决定不了最终结果的时候,那么右边将继续执行。
4.||:短路或
1.当左边的结果已经可以决定最终结果的时候,那么右边将不在执行。达到一个短路效果。
2.当左边的结果决定不了最终结果的时候,那么右边将继续执行。
5.三元运算符
1.格式:表达式?表达式1:表达式2;
2.先判断表达式,结果为true,执行表达式1;
结果为false,执行表达式2;
3.注意事项:表达式1和表达式2数据类型必须一致;