JavaSE基础部分(1)

JavaSE基础(1)

前言


  • 学习的过程确实很重要。不能一味的最求速度,学习的速度越快,可能你学的越不到位。很早之前我学Java的时候就是这样,一直往后学,学着学着就发现我前面的又忘记了!又去找前面的资料去看,看到后面,前面又忘记了,,,循环无解!(当然也没让你一个星期学只学一小节~),后来我发现学习过程中的总结真的十分重要。
  • 为什么我也开始写博客呢?学习过程中肯定会遇到很多问题,而且有些问题可能不止遇到一次,那么可以把遇到的一些问题总结起来,做成笔记,这样就更方便自己去解决一些问题,而且说不定也能帮到别人,何乐而不为~最主要的还是做笔记做总结还可以让自己对一些知识了解的更透彻,有些问题你可能听懂了,但是真正让你去做的时候你又不会了,说明还是没真正的搞明白,做总结就可以帮你解决这些疑难。
  • 下面就是我目前碰到的一些知识点和问题,有难有易,大家可以进行参考,而且后面我也会不断完善各个部分,坚持写下去!
    年轻人,一起加油吧!!!

Java基础


  1. 常用DOS命令:

    1. dir:查看当前路径下的内容
    2. cd 目录:进入单级目录
    3. exit:退出DOS窗口
  2. ping命令,可以查看网络稳定性

    1. ipconfig:可以查询IP地址等相关信息

    2. ping www.baidu.com -t:可以查看本机网络的稳定性,如果里面的时间越短,表示网络越稳定,-t表示向目的服务器不停发送数据包,如果想结束发送,可以按Ctrl+c结束。
      JavaSE基础部分(1)

  3. 安装JDK1.8以及为什么需要安装JDK?

    1. 安装JDK1.8过程比较简单,一直下一步即可(最好是把安装路径改一下)
    2. 为什么要安装JDK呢?由于Java文件是不能直接和底层系统进行交互的,就需要有一个东西来做”中间转接“,这个东西也就是经常听到的JVM—Java虚拟机。但是JVM是没有单独的安装包的,而JDK(Java开发工具箱)里面包括了JRE(Java运行环境),JRE中又包括了JVM,并且我们是作为开发人员(光只有运行时环境是没有的),所以我们直接安装JDK即可。
  4. 配置环境变量

    1. Path:%JAVA_HOME%\bin ,隶属于系统的,必须配
    2. JAVA_HOME:E:\Java_enviroment\jdk1.8 ,主要是后面学习Tomcat时需要配的,提前配也行。
    3. CLASSPASS(可以不配):隶属于Java的,其作用是引导类加载器(编译时)去内存找字节码文件的
  5. Java的编译和执行原理:

    1. 运行时:.java文件—>.class文件
    2. 编译时:开启JVM,启动类加载器,类加载器去内存里面找对应的.class字节码文件,把字节码文件转成二进制放进JVM再和操作系统进行交互。
  6. 标识符和关键字

    1. 标识符:
      1. 只能由字母、数字、下划线和$组成,不能以数字开头,而且不能是关键字,eg:类名、变量名等…
      2. 命名的规范是见名知意、驼峰命名法,最特殊的就是main方法名是不能改变的!(程序的入口)
    2. 关键字:
      1. Java中有特殊含义的单词,而且都是小写字母
      2. eg:public、void、class等
  7. 数据类型

    1. 基本数据类型

      1. 数值型:byte、short、int、long、float、double
      2. 布尔型:boolean(只有true和false两个值)
      3. 字符型:char
      4. 注意:
        1. 所占字节数,从左到右从上到下依次为:1、2、4、8、4、8、1、2
        2. 数值范围可以选择性记一下:eg:byte是-128到127等…
    2. 引用数据类型

      ​ 数组、接口等…(后面陆续都会讲到)

  8. 编码

    1. Unicode(标准码):包括了世界上所有的符号,Java也就是采用这个编码。
    2. GB2312:适合处理汉字之间的通信
    3. ASCLL码:能包括128个字符(‘0’的ASCLL码为48)
  9. 转义字符:需要加" \ "才能表示出对应的含义,eg:\n:换行、\t制表符(相当于一个tab)

运算符、循环


  1. 运算符部分:运算符分类:算数运算符、赋值运算符、关系运算符、逻辑运算符、三元运算符…等

  2. 运算符部分需要注意的:

    1. &和&&的区别:&是按位与,&&是短路与(当判断左方为假时,结果直接为假,不用去判断右方真假)
    2. 三元运算符部分:可以让写出来的代码更加简单。eg:int c = a < b ? a : b;
    3. 自增自减运算符部分:当++在前时,先自增再赋值,当++在后时,先赋值再自增。(–类同++)
  3. 控制语句分类:

    1. 顺序结构
    2. 分支结构:if、switch
    3. 循环结构:for、while、do…while
  4. 控制语句部分需要注意:

    1. switch部分:

      1. case中的语句体,后面需要加break,防穿透!!!

      2. 括号里面能接收哪些数据类型?

        ​ 如果用的是JDK8,就可以接收byte、short、int、char、enum(JDK5)、String(JDK7)

    2. break:结束当前的循环

    3. continue:结束本次循环,进行下一次的循环

    4. return:结束当前方法,直接返回

方法、数组


  1. 方法有什么用?可以将某个功能或者某些代码进行封装,方面后面使用。

  2. 使用方法需要注意:

    1. 方法需要先创建,创建后需要手动调用才可使用
    2. main方法比较特殊,不需要手动调用,JVM会主动调用执行~
  3. 方法重载和方法重写的区别:

    1. 方法重载是Overload,方法重写是Override
    2. 方法重载是方法名相同,允许参数类型、参数个数或者参数顺序不同,多在同一个类中出现;而方法重写是需要方法名和参数都相同,允许方法体内容不一样,多在继承多态部分使用(后面会学到的!)。
  4. 形参和实参的区别:

    1. 形参多在方法参数部分出现,作用范围为方法体内,方法一旦结束弹出,形参就不在了!
    2. 实参多是在使用方法时,把实参的值传给形参,而且形参值的改变不会影响实参的值!
  5. 数组部分(引用数据类型):

    1. 动态初始化和静态初始化的区别:
      1. 动态初始化:eg: int[] arr = new int[3];
      2. 静态初始化:eg: int[] arr = {1,2,3};
    2. 求数组的长度:arr.length;

面向对象

  • 下一节见~
上一篇:linux文件查找命令


下一篇:Hadoop的学习前奏(二)——Hadoop集群的配置