A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wuhuazi 初级黑马   /  2018-3-24 21:52  /  694 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

    我来培训之前,是有一段时间的工作经验跟基础的,所以对于这些天的基础班课程,我没有什么特别需要总结的东西,大部分知识点我都是学过的,而且学过还不只是一次两次。因为这些基础语法在其他编程语言中也是相通。If else判断语句,for、while、do while循环等等这些语法,我在学习JAVASCRIPT的时候学过,学习PHP的时候也学过,最后在来上课之前,我也是学习过JAVA的。除了JAVA是强类型语言需要定义类型之外,其他的也没有什么区别。所以这些东西不要太熟悉了。
    不过毕竟是自学,而且时间也有些久,这些知识点虽然都知道,但是一些细节问题当时也没有去考究,或者是工作当中没有怎么用到,所以也就忘了。所以下面我会对一些我觉得比较重要,但是容易出错的知识点进行总结。
    首先是最基础的环境变量的配置,为什么要进行环境变量配置呢?那是因为我们需要在整个计算机中都能运行java文件,而不是仅仅在jdk的bin目录下运行。
    环境变量两个要素:
1.  JAVA_HOME  就是jdk的安装路径
C:\Program Files (x86)\Java\jdk1.7.0_72
       2.PATH  %JAVA_HOME%\bin 最好移动到最前面。
    java是一门强类型语言,所以对不同数据进行了分类,其中基本类型分为四类八种。
    整数类型:byte short int long。其中int是默认类型,占四个字节。Byte占一个字节,取值范围是-128到127,这个需要记住。
    小数类型:float double  double是默认类型,精度比float高
    Boolean:true false
    理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小  
    接下来是运算符。运算符应该没有什么难度,可能容易搞混的就是x++跟++x了。我这里有两种理解。
    理解1:x++是先使用x的值,然后自加。++x是先自加,然后使用x的值。
    理解2:x++看成整体,使用之后再自增,++x也看成一个整体加1之后再使用。
    运算当中还有一个类型转换,包括隐式转换跟强制转换。可以这样记,小转大,隐式转换。大转小,强制转换。
    例子:
       byte b = 10;
              shorts = 20;
              longl = b + s; //小转大,隐式转换。
              inta =10;
              shorts = 20;
              byteb = a + s; //错误,a+s会自动转换成int类型的,但是byte b 的类型比较小,所以报错,需要强制转换。改成 byte b =(byte)(a+s) 或者 int b = a+s
       循环是所有编程语言的基础,也是最重要的知识点,因为后台语言就是需要逻辑,但是三种循环又很容易让新手翻车,所以这里做了一些总结。
       do…while 跟for和while的区别:
       Do…while不管关系表达式成立不成立,都会执行一次。For跟while只要表达式为false就不会再执行
       For跟while之间的区别:
       For循环的初始化变量一般都定义在for循环里面,所以for循环结束以后变量也会自动销毁。
       While循环的初始化变量都是定义在while外面的,所以while循环结束之后,还是能继续使用的。
       For跟while是可以互换的,但是使用上各有各的好处,所以到底要怎么使用还是要根据需求具体考虑。
       在循环内有两个语句可以中断循环,就是break跟continue,但是这两个又有一定的区别。
       Break:中断循环,break后面有多少代码,只要遇到break就终止运行,还有就算循环还没有结束,也不会继续循环。
       Continue:中止本次循环,继续下次循环。跟break作用相同,区别是它只是中止本次循环。
       例子
       Break:
             for(int i = 0; i<5; i++){
                  if(i == 3){
                      break;
                  }
                  System.out.print(i);
             }
结果是:1 2
       Continue:
             for(int i = 0; i<5; i++){
                  if(i == 3){
                     continue;
                  }
                  System.out.print(i);
             }
结果是 :1 2 4 5
接下来是数组,数组我觉得没有什么需要讲,它是一个可以存储多个同一类类型的引用数据类型。需要掌握的是数组的遍历,求数组中的最大值或者最小值。
接下来是一个重中之重的知识点——方法。
       方法是为了提高代码复用性而将一些需要重复使用的代码封装起来,这样子可以减少繁琐的代码。
       方法的定义格式修饰符 返回类型 方法名(参数列表){
}
方法的重载:
1.     方法名必须一样。
2.     参数列表必须不同(个数,类型,先后顺序)
3.     跟返回类型和返回值无关。
方法的参数还有一点值得注意:
1.     当方法的参数是基本数据类型的时候,那么形式参数的改变不影响实际参数,相当于实际参数复制了一份给形式参数。
2.     当方法的参数是引用类型的时候,那么形式参数的改变将影响到实际参数。因为形式参数跟实际参数都是指向堆内存中同一个地址,所以改变值就直接改变了堆内存的值了。
以上就是我对java基础班前半部分的总结。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马