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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

多多呀

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© 多多呀 初级黑马   /  2019-3-22 14:56  /  881 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 多多呀 于 2019-3-22 15:13 编辑

变量是记录数据的名称  环境是Windows  Java严格区分大小写 类名首字母大写Java的书写规范之一

环境变量的临时配置
        set命令  set可以显示本机中的所有的环境变量
        set path=XXX 修改环境变量(设置完之后只在当前窗口有效,并不会改变电脑本身环境变量设置)(XXX 可以为任意值,可以为空白,空白即为删除)
        set path=XXX;%path% 在原有环境变量中新增环境变量,XXX为自己配置的新环境变量
        Windows查找路径的时候先查找最前头的路径找到了就执行,所以最好配置在最前头

Java程序开发体验
        1、将Java代码编辑到.java文件  javac运行.java文件  javac命令对应编译器
                class(定义一个类) Demo(类名)
                        {
                                public static void main(String[] args)
                                        {
                                                System.out.println("Hellow World")
                                        }
                        }
        public static void main(String[] args)主函数
        1.主函数的出现可以保证一个类的独立运行
        2.主函数是程序的入口
        3.是被虚拟机所调用的
        
        System.out.println("Hellow World") 输出语句 System系统 out输出 println打印 ()内为打印的内容         其中println 后缀ln作用是在打印数据完成之后会自动提行----E:\Java2018\Day01
8        args  arguments  参数
        2、通过javac命令将已有的.java文件翻译成运行文件  扩展名为.class 文件名为自己编译的类名
                javac **.java
        3、通过java命令对生成的.class文件进行运行  java运行.class文件  java命令对应虚拟机
                java  **.class

classpath环境变量
        Java文件是运行文件在哪儿就去哪儿运行
        classpaht环境变量的作用就是将Java的运行文件所在的路径告诉系统,虚拟机在执行时就会按照指定的classpaht路径寻找类文件并执行
        set classpath=c:\myclass   运行Java程序时虚拟机去c:\myclass寻找类文件 没找到会报错
        set classpath=c:\myclass ; 运行Java程序时虚拟机去c:\myclass寻找类文件 没找到会在当前路径下继续寻找一次  没找到才会报错
        set classpaht=.;c:\myclass  . 表示当前路径  c:\myclass为指定路径

Java语言的基础组成
        关键字:被赋予了特殊Java含义的单词,关键字都是小写
        标识符:在程序中自定义的一些名称,标识符由26个大小写字母,数字0-9,符号_ $组成
                1.数字不可开头
                2.不可使用关键字      类名就是一个标识符  函数名称main也是标识符
        注释:用于注解说明程序中的文字,可用于程序调试,注释不走编译字节码。
                ---E:\Java2018\Day03\Xiao.java
                /**  文档注释 */  java特有的注释  可以通过javadoc工具提取并生成说明书
                多行注释中不能嵌套多行注释
        常量:不能改变的数据
                负数的二进制表现形式,一个整数的是由4个字节表示的
                6    0000-0000 00000-0000 000-0000 0000-0110
        变量:  1.内存中的一个存储区域
                2.该区域有自己的名称(变量名)和类型(数据类型)
                3.该区域的数据可以在同一类型范围内不断变化
                变量用于不断存放同一类型的常量,可以重复使用
                变量的作用范围(一对{}之间内有效)   整数默认 int   小数默认 double(8个字节)
                定义变量的格式:
                                数据类型 变量名(标识符) = 初始化值(常量值)   int x = 3
                                ----E:\Java2018\Day03\VarDemo2、VarDemo

运算符
   
只要是运算符运算肯定有结果

面试题        ++ (自增:在原有基础上加一再赋给原有变量)----E:\Java2018\Day04\Day04$1.java
                赋值运算符 =  +=  -=  *=  /=   int a = 4  a+=2  a=a+2  结果为6  +=为一次运算                        底层有强转效果, short a = 3; a+=4其实是等于 s = (short)(s+4); s = s +4;的话                        会提示损失精度 因为默认是int类型 short是两个字节。
                ---E:\Java2018\Day04--Day04$1.java
        比较预算符
                比较运算符,运算完的结果必须是true或者false
        逻辑运算符  2<x<5  java中不能这么表示        2<x&x<5
                用于连接两个boolean类型的表达式
                |:或    运算规律只要有一边结果为true结果为true,只有同为false结果为false.
                &:与 运算特点: true & true = true ; true & false = false ;
                                 false & false = false ; false & true = false;
                        运算规律只要有一边结果为false结果为false,只有同为true结果为true.
                ^:异或 运算特点:^符号两边结果相同,false
                                 ^符号两边结果不同,true
                !:非运算 判断事物的另一面 !true = false  !! true = true
        面试题        &&:和&运算的结果是一样的,运算过程中有点儿区别,
                   &无论左边的运算结果是什么右边都参与运算
                   &&当左边为false的时候,右边不参加运算
                ||:和| 运算的结果是一样的,运算过程中有点儿区别,
                      | 无论左边的运算结果是什么右边都参与运算
                   || 当左边为true的时候,右边不参加运算
        位运算符  用于二进制位运算的符号
                  二进制位 0为false 1为true   & | 运算都是运算二进制 &用来取某个二进制中的某一段  1&0 = 0  ; 1&1 = 1   0^0=0  1^1=0  1^0=1
                  |运算是保留二进制中的有效位  1为有效位
                  一个数异或一个数两次,结果还是这个数。  可用于加密 加密是异或一次  解密时再异或一次
        位移运算符 { 3<<2 -- 3*2(2)=12 }<<:左移几位其实就是该数乘以2的几次方 <<:可以完                                成2的次幂运算
                >>:右移几位就是该数据在除以2的几次幂 java的运算自动取整 舍弃小数位及6/4=1
                在右移的时候对于高位出现的空位,原来最高位是什么就用什么(0或者1)补位
                >>>:无符号右移:与右移的运算方式相同,只是数据在进行右移的时候,高位出现的空位,无论高位是什么,空位都用0补充。
                位移运算符都是基于2的倍数的预算        
                对两个整数的变量进行互换  
                 1.使用第三方变量  (开发时用的方式)
                int a = 3; int b = 5; int c ; c = a; a = b; b = c;
                 2.不使用第三方变量 (不建议使用的方式,如果两个数的数值过大,会超出int范围,会出现强制转换,数据就会发生变化)
                a = a + b; // a = 3 + 5;a = 8;
                b = a - b; // 3 + 5 - 5 = 3; b = 3;
                a = a - b; // 8 - 3 = 5; a = 5;
                 3.异或运算法   (不建议使用,阅读性较差,适用于面试)
                   一个数异或一个数两次,结果还是这个数。
                a = a ^ b; // a = 3 ^ 5
                b = a ^ b; // b = (3 ^ 5)^5  结果 b = 3
                a = a ^ b; // a = (3 ^ 5)^3  结果 a = 3

        三元运算符 三个元素参与运算的符号
                ? :
                格式  (条件表达式)?表达式1:表达式2 ;  条件表达式的运算结果为true 或者 false
                       如果运行结果为true 运行表达式1
                       如果运行结果为false运行表达式2
                       int x = 3 , y = 4 , z ;//获取两个整数中的较大的整数。
                       z = (x>y)?x:y //z变量存储的就是两个数的最大数。输出结果为 z=4
                        
                        int o , p , q ; //获取三个整数中的较大的整数。
                        int temp = o > p?o : p;
                        int max = temp > q ? temp : q;

程序的流程控制
        if 语句
        if语句格式一
           if(条件表达式)  条件表达式结果是true或者false 也能只是这两者
                {
                        执行语句;
                }

        if语句格式二    //三元运算符就是 if  else语句的简写格式  b = a > 1?100:200;
        int a = 3, b ;        //简写格式什么时候用?
           if(a>1)          //当if else运算后,有一个具体的结果时,可以简化写成三元运算符
                {        //简化是有局限性的,是一个运算符,意味着必须有结果
                        b = 100;
                }
          else
                {
                        b = 200;
                }
        if语句格式三
            if(a>1)           else if 可以有多条
                {
                        b = 100;
                }
          else if (a>2)
                {
                        b = 200;
                }
          .....
          else
                {
                        b = 300;
                }
局部代码块
        写到主函数里面的变量都是局部变量
        变量使用的注意事项
                1.必须有初始化值才能参与运算
                2.必须有自己所属的作用域{      }        
        
例子:        {        //a所属的作用域就是该大括号内,一旦到大括号结束a变量在内存中就会被释放消失掉
                //局部代码块可以定义局部变量的生命周期
                int a = 3 ;
                System.out.println(a+4);

        }
        System.out.println(a) //该例结果会显示编译错误 a的作用域只在{}内外面无法找到该变量

if语句练习-星期
        E:\Java2018\Day04--ifTest
if语句练习-四季
        E:\Java2018\Day04--ifTest2   //代码的复用性,当代码的重复性太大的时候记得使用区域

switch(开关、交换)语句
        选择结构
        switch(表达式)
                {
                        case 取值1:    case // 案列 事情  在程序中指备选答案
                                执行语句;
                                break;           break // 跳出
                        case 取值2:
                                执行语句;
                                break;
                        case 取值3:
                                执行语句;
                                break;
                .....
                        default:            //默认  程序指默认的其他情况
                                执行语句;
                                break;
                }
                -----E:\Java2018\Day04--switchDemo
switch  练习
        星期和季节
                E:\Java2018\Day05--switchTest

if语句和switch语句的区别
        if :
                1. 对具体的值进行判断
                2. 对于区间的判断
                3. 对运算结果是boolean类型的表达式进行判断
        switch :
                1. 对具体的值进行判断
                2. 值的个数通常是固定的
                对于几个固定的值判断,建议使用用switch语句,因为switch语句会将具体的答案都加                载进内存。
                效率相对高一点。

while , do while , for 循环语句                任何语句的结束方式只能有 {} 或者 ;
        while(条件表达式)    ctrl+c  直接结束控制台的运行,即结束打印
                {
                        执行语句;
                }        
                -----E:\Java2018\Day05---whileDemo
        
        do
                {
                        执行语句;
                }
                while(条件表达式);   // 这里有分号,跟while区分开来
        
        do while 语句的特点:无论条件是否满足,循环体至少执行一次。
                ------E:\Java2018\Day05---dowhileDemo

        for循环
        for(初始化表达式;循环条件表达式;循环后的操作表达式)  每个表达式之间用;分开
                {
                        执行语句;(也就是循环体)
               
                }
                -----E:\Java2018\Day05---forDemo----forTest
循环结构的使用场景        
        什么时候使用循环架构?
        当对某些代码执行很多次时,使用循环结构完成。

        当对一个条件进行一次判断时,可以使用if语句。
        当对一个条件进行多次判断时,可以使用while语句。

        注意:
                在使用循环时,一定要明确哪些语句需要参与循环,哪些不需要。
                循环通常情况下,需要定义条件,需要控制次数。
        E:\Java2018\Day05----forTest

语句for循环嵌套
        E:\Java2018\Day05----forforDemo
forfor循环语句嵌套
        1.分析图形的组成
        2.不成文规定尖向上改内循环条件表达式,尖朝下改内循环初始化条件表达式   只能用于参考
        3.对于第二条也可以使用第三方变量解决 不要局限思想        
        E:\Java2018\Day05----forforTest2

其他流程控制语句
        break:跳出
                break作用范围:要么是switch语句,要么是循环语句。
                记住:当break单独存在时,下面不要定义其他语句,因为执行不到。
                                break跳出所在的当前循环。如果出现了循环嵌套,break想要跳出指定的循环,可以通过标记符号来完成
        
        continue:继续    指的是继续循环去
        作用的范围:循环结构
        continue:结束本次循环,继续下次循环
        如果continue单独存在时,下面不要有任何语句,因为执行不到,continue也可以使用标记符号


函数         function
        函数在Java中就是定义在类中具有特点功能的一段独立小程序
        函数也称为方法
        定义函数的格式:

                修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,....)  参数  参加运算的数据
                {
                                执行语句;
                                return 返回值;

                }
               
               
                Java是强类型语言,Java语言对每一种数据都进行了具体的划分
                名称定义一定要有阅读性
                return  还有个作用就是结束函数 即执行到return时函数结束 return下面的语句执行不到
        函数底层运算原理
               
        函数的重载
                在同一个类中,允许存在一个以上的同名函数,只要他们
        函数重载练习
               

数组
        概念:同一种类型数据的集合,其实数组就是一个容器。
        数组的好处
                给数组中的元素从0开始编号,方便操作这些元素
        格式1:
                元素类型[] 数组名 = new 元素类型[元素个数或者数组长度];

二维数组
        数组中的数组,数组中的元素还是一个数组

构造函数
        1.函数名与类名相同
        2.不用定义返回值类型
        3.没有具体的返回值
作用
        给对象初始化
注意
        1.默认构造函数的特点
        2.多个构造函数是以重载的形式存在的



0 个回复

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