关闭

java基础视频25days(毕老师)学习日志(day01、day02、day03)

标签: javapathdosjava开发工具虚拟机windows
197人阅读 评论(0) 收藏 举报

day01
★1 ,2,,3
dos命令行,课程中常见的命令。
dir : 列出当前目录下的文件以及文件夹
md : 创建目录
rd : 删除目录
cd : 进入指定目录
cd.. : 退回到上一级目录
cd/ : 退回到根目录
del : 删除文件
exit : 推出dos命令行

java语言的三种技术架构
jre jdk
19、20ppt 设置环境变量,使在任何目录下运行javac都可行。
serlet  发音
java的跨平台性,C++只能在windows上执行,在linux上则不能执行;小霸王 红白机8位,电脑是32位,现在发展到64位,所以红白机上的游戏不能直接在电脑上运行。
&java虚拟机JVM,虚拟机是分平台版本的。
C++写成的软件之所以能在windows中运行,其实是因为windows操作系统里面包含了能解析C++语言的虚拟机。
&windows 就是用C和C++写的。
★04:
bin 文件夹,即binary,二进制的意思。
dos模式。cd jdk1* 回车。进入文件目录。

exit 推出dos编辑模式。
“我的目的是,我想在任意目录下,我都能执行该命令(javac.exe)。
&打开扫雷软件:winmine 。
&path:环境变量
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem

&配置完环境变量,就把我要用的东西全告诉了系统,这样的话,只要告诉系统,让系统帮我们去找这个文件所在的位置。就可以了。(可执行文件)
&java 环境的搭建,分几步?
1 下载 2 安装 3 配置环境变量
第3步的目的是为了更方便地使用java开发工具。
★05:环境变量配置技巧
将路径paste在path变量的最前面,可以让系统最先寻找该目录,系统找寻执行的命令是有前后顺序的。
&做手脚:把path路径中,不会变的部分留下来,把会变的部分做点手脚。新设置一个haha变量:
 haha=D:\jdk1.7.0_02\
取一个规范的名称:java_home
动态的两个百分号:%JAVA_HOME%
结果:不用每次都去修改容易出错的path。
★06:环境变量临时配置方式
&退回根目录,cd\
再输入set,则会列出已经配置好的环境变量,比如:JAVA_HOME
&dos模式下set path=haha, 再运行set path,可以出现haha,但是打开另一个命令窗口,在运行set path,haha就不出现了。所以,DOS 这种配置方式只在当前命令窗口有效,命令窗口一关就没有了。

临时环境变量的配置就是:set path=(当前javac所在的路径),那么,在该命令窗口下,所以的执行操作都是暂时有效的。
采用start新建命令窗口,可延续使用临时的环境变量配置。
视频04:21 “动态获取临时变量值”,需要注意!
&在path变量值的基础上添加新值,该怎么做?
疑问:视频05:00;添加新值,一个path变量怎么会显示自身有两个值,一个是haha,另一个是通过% %引用后的,何解?
★07
&通过class来定义一些类,
&存放我们写代码的文件,称之为原文件。javac :编译工具;对一个指定的java文件进行编译。
&这个class 文件,就是我们所说的java运行文件。
123.java 源文件,demo.class 运行程序
NoSuchMethoderror  我们这个程序里面缺少东西,故不能被顺利运行;

★08
设置类文件环境变量的路径,classpath
当执行Demo的时候,java命令会启动虚拟机,虚拟机会自动去类文件路径指定的文件夹下去查找,有没有Demo.classd这一文件,有就执行了。
&环境变量清空set classpath=  后边为空后回车。
虚拟机启动时,先寻找坏境变量classpath,在寻找当前的目录。
&有分号和没有分号的区别:
 set classpath=c:\;   先、、再、、
 set classpath=c:\    只查找设定路径
&结论是在配置classpath时,结尾不加分号,当然可以配置多路径。
set classpath=.;c:\;d:\
set classpath=c:\;d:\
&path 和classpath 的区别
前者先查找当前目录,没找到则,再找环境变量指向的位置;
classpath则是先找环境变量指向的地址;(先找classpath,在到当前目录)
&开始的时候,产生的编译文件和源代码文件在同一
路径,不需要设置classpath,以后用到“包”时,则使用classpath.
&QQ.exe。如果是可执行文件,则使用path,如果是java执行文件,使用classpath。
&设定path,设定时再加上path的原配置,分号后%path%


★09
&类的定义,首字母大写,定义须方便阅读。
  格式:tab键的使用;代码编写的层次感。
&主函数的作用:保证类的独立运行, 是java虚拟机在调用它,它就是程序的入口。
&一个代码文件中,写了2个类,编译时会生产2个类文件,但是 当用java运行时,只会运行带有主函数的类。
&一个class里面只能有一个主函数。

★10
&注释,// 
方便阅读程序;多行注释;/*开始  */结束;可以注释一大片的内容。
&程序说明书、给开发者使用的说明书。
javadoc.exe
如何生成文档说明书,/**    /* 
dos模式下,查看java程序的版本:java  -version
&注释的作用:
1 便于阅读 2 辅助调试
注意:多行注释里面不允许嵌套多行注释。
习惯:一边写代码,一边写注释。

day02

★06 进制转换(负数二进制)
-6:其实就是6的二进制取反+1
4个字节,一个字节8bit;
负数的最高位都是1
★07 变量
变量:就是将不确定的数据进行存储。
也就是需要在内存中开辟一个空间。
如何开辟内存空间呢?
常量:整数,小数,布尔型等数值。
整数型:
1)byte -128~127 (8位的二进制数表示)
2)short -32768~32767(16位的二进制数表示)
CPU中的内存称之为缓存。
浮点型:
float :4个8位  ,单精度
double:          双精度

foat f=2.3f;
double d=34.56;
char ch='4';
boolean b0= true;
boolean bo=false;
什么时候定义变量?
当数据不确定的时候,需要对数据进行存储时。
*/
★08
自动类型提升,小的向大的提升。提升过程为计算机底层自动完成。
&强制转换
b=(byte)(b+2);
★09 算术运算符
b=a++  a先赋值给b,再自增

视频17:00时间,dos下快速编译,是如何操作的?
★10
在linux里面,换行是由一个字符来表示,即:\n
windows:两个字符均可表示,即:\r 和\n   
&视频06:50时间 同上,快速编译的快捷键是?
♂须返回看的08:00以后的部分,char段!
★11 赋值运算符
@重复编译(javac  和java 命令的交替使用,可以使用上下箭头键来寻找之前做过的编译命令,使快速显示。

★12 逻辑运算符
@Editplus  新建——配置模板
快速建立新的源代码文本。
&注意:异或的运算方式:^
       AND(短路)  左边为false,右边短路,为false
        左边为true,则右边不用参与运算结果为true。
单与和双与的特点,无论左边是真是假,右边都运算。
双与,当左边为假时,右边不运算。
2012.2.15
★13  左移和右移
3<<2=12;
6>>2=1;
左移数值变大;3往左移2位,结果为3X4=12;
往左移1位,结果为3X2=6。(乘以2的?次幂)
右移数值变小;(除以6/4,6里面只有一个4)
总结:<<:其实就是乘以2的移动的位数次幂。
      >>:就是除以2的移动的位数次幂。

&>>的时候,最高位补什么,要由原有数值的最高位来定,(比如-6),
  如果最高位为0,右移后用0补空位;
  如果最高位为1,有以后用1补空位;
>>>的时候,无论最高位是什么,都用0补。
★14
与:6&3
110 & 
011  ——010

6取反就是-7。计算过程:将取反后的二进制数值减1,然后取反,结果为7;视频时间06:26
6 的负数就是6取反后加1.
一个数(异或)同一个数两次,结果是本身。
&加密技术,加密狗,加密算法
★15 练习
&取最低4位;用后四位全是1(1111)做与运算
依次右移4位,分别去与,这样得到的数再做十六进制运算。见OperateDemo3.java

★16
三元运算符  ?:(3个元素参与运算)
2元运算  +
1元运算:!(非)
&自己编写一个代码,对某一个整数进行16进制数值获取的时候,再说一遍。
问♂视频时间:17:27  :
200是整数,a是字符,它们之间运算会自动提升一下,结果提升为字符吗?
&结论:16进制右移4位,8进制右移3位,2进制右移1位。
★17  if语句
if 控制范围为下面紧跟{}中的语句,如果没有{},则控制范围仅为相邻的下一条语句。

三元运算符其实是if  else语句的一种简化形式。
但是它们之间有区别,if else 结构简写格式:变量=(条件表达式)?表达式1:表达式2;
三元运算符:
    好处:可以简化if else代码。
    弊端:因为是一个运算符,所以运算完必须要有一个结果。
★18  if语句(练习)
♂如何快速输入“或”的符号?
春夏秋冬:为什么需要两个或?视频时间07:39
♂Editplus的操作:如何快速将上下的两行文字switch?
视频07:50  else的编写部分。
★19 switch
被选择表达式的值:byte,short,char ,int
case是没有顺序的。default也可以放在句首。但程序执行时,还是先参考完各个case的情况,最后才执行default。
&省略brea
★20
switch 语句
多个选择指向同一个内容:3,4,5 均是春季。
&Editplus在编辑时出现问题,字符输入时覆盖掉了原来的字符,回车换行也不顺利。
&Switch 相对if要高效一些。
if 和Switch语句很像。
具体什么情况下应用哪个语句呢?
如果判断的具体数值不多,而且符合byte short int char这四种类型。虽然两个语句都可以使用,建议使用switch语句。因为效率稍高。

其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。

day03
★01 While
dos状态下强制停止程序执行,ctrl+c
&定义循环的条件,还有定义循环的次数。
★02 do while
 X++
 X+=1
★03 for
★04
dos模式下,清屏操作方法?输入cls回车
(视频14  时间:03:13)
for和while的区别,
for括号下定义的变量
变量的作用域
对于变量来讲,如果这个变量仅仅用于控制循环的次数作为循环增量存在的情况下,用for语句更合适。
★05
条件表达式,不是true就是false
初始化表达式,只要是可执行语句,就可以作为初始化表达式存在。
★06
1到10的和。
注意用while时,打印语句放在{}内或外是有区别的,我们只需要最后的结果,所以打印语句放在{}外。否则将打印10次sum的递增结果显示。


其实这就是累加思想。
原理:通过变量记录住循环操作后的结果。
记住代码,解决一个问题;记住思想,解决一类问题。
通过循环的形式,进行累加的动作。
累加:搞一变量,搞一循环
计数器思想:通过一个变量记录住数据的状态变化。当然也需要通过循环完成。
&获取1~100,偶数的和;
★07
println  :打印换行。
对于打印长方形:外循环控制行数。内循环控制的是每一行的列数。也就是一行中元素的个数。
★08
1
12
123
1234
12345
★09
九九乘法表
★10
其他流程控制语句
标号,取名字。
break:
continue:只能作用于循环结构:含义:积蓄循环
特点:结束本次循环,继续下一次循环。
记住:
1)break和continue语句作用的范围。
2)break和continue单独存在时,下面可以有任何语句,因为都执行不到。
★11
嵌套for语句
★12 函数
封装一个功能,定义功能。
&发现以上的运算,因为获取不同数据的运算结果,代码出现了重复。
为了提高代码的复用性,对代码进行抽取。
将这个部分定义成一个独立的功能,方便于日后的使用。
java中对功能的定义是通过函数的形式来体现的。
需要定义一个功能,完成一个整数的*3+5的运算,并打印结果。
1,先明确函数定义
修饰符 返回值类型 
主函数在哪里就从哪里开始执行。函数只有被调用才被执行。
&函数可以调用函数,但不能定义函数。

★13 函数(应用)
主函数的主要作用,调用函数。
★14
打印矩形,已经看懂,需要自己练习;
用来存储很多数据的地址,用new操作符来完成。
提高复用性,函数是基本体现。
★15
定义函数名,重点在于体现函数的功能。
函数重载,用参数列表来区分同名函数。
什么时候用重载?
当定义的功能相同,但参与运算的位置内容不同。那么这时就定义一个函数名称以表示其功能,方便阅读,而通过参数列表的不同来区分多个同名函数。
★16
判断是否重载:
参数列表相同,则没有重载。参数列表不同,则重载了。
没有重载的函数和原函数是一样的。
★17
数组,是一种单独的数据类型。3种引用类型数据中的一种。
java启动开辟了多少空间?
主函数运行的时候就会在栈内存中开辟一个空间,栈内存中的数据在使用完之后,会自动释放内存。
为什么划分很多空间,划分得这么细?
因为每一片内存空间中数据,处理方式不一样。
&局部变量。定义在for循环中的变量,定义在方法中的变量,定义在方法中参数的变量。都是局部变量。
new处理的实体都在堆里面,堆里面存放的都是实体。
实体:包括数组和对象。
数组在内存中的表现以及堆内存的3个特点:
1)其中存的是地址值;
2)堆内存的变量都用默认初始化值。
3)垃圾回收机制。
栈:自动释放;堆:垃圾回收

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6213次
    • 积分:218
    • 等级:
    • 排名:千里之外
    • 原创:19篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论