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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

一, Java历史
        java语言有20多年历史 ,1995年发布Java 1.0版本,原公司 SUN 公司(Stanford University Network),2009年甲骨文公司(Oracle)收购。
二,DOS命令   Win + R  输入cmd回车
    ①  D :---- 直接到D盘   不区分大小写
    ② cd 文件夹名称   进入指定文件夹,文件夹名称可以不全称,省略后按TAB键,自动补全,多次按TAB可以来回切换
    ③ cd..  回到上一层文件夹,直到C盘或者D盘的根路径
    ④  在文件夹下 输入 cd \  直接回到根目录-D盘或者C盘
    ⑤dir 显示文件夹目录下文件夹名称 修改时间等
    ⑥ cls 清屏
    ⑦exit  退出
三,命名规则
       ①,可以包括:英文字母26个(区分大小写),0-9数字,$ 美元符号 和 _ 下划线
      ②,标识符不能以数字开头
      ③,标识符不能是关键字。
四,数据类型分为:基本数据类型和引用数据类型, 基本数据类型分为四类八种。
五, 数据类型转换
    当数据类型不一样时,将会发生数据类型装换
    1,自动装换(隐式)
    特点:①,代码不需要进行特殊处理,自动完成。
              ②,规则:数据范围从小到大;与字节数不相关。
     2, 强制类型转换。
    特点:①、代码需要特殊的格式处理,不能自动转换;
              ②、 范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据
    3,注意事项:

            ①、byte/short/char 这三种类型生数学运算时,先提升为int类型,再进行运算。
            ②、Boolean布尔类型不能发生数据类型转换。
六, 运算符
       1,一旦运算当中有不同类型的数据,那么结果将会是数据类型范围大的那种。  double result = x + 2.4;  // int  + double ----> double + double = double
       2, 任何数据类型,和字符串运算都转换为字符串。
       3, 只有变量才能使用自增自减运算符,常量不能使用。  30++ //错误
       4,后++ 后 -- 规则: 先使用,后++/--  ,  是指:  先使用, 然后马上执行++/--, 再运算其他.
       5, 只有变量才能进行赋值运算,常量不能写在赋值运算的左边。
       6,   复合赋值运算符其中隐含了一个强制类型转换。
      7,逻辑运算符具有短路效果。当第一个条件已经确认了结果是,后续的表达式不会运行,直接短路。
七,方法
    定义一个方法的格式:
        public static void 方法名称(){
                方法体
         }
    方法名称的命名规则和变量一样,使用小驼峰
    方法体:也就是大括号当中可以包含任意条语句。
    注意事项:
    1,方法定义的先后顺序无所谓
    2,方法的定义不能产生嵌套包含的关系
    3,方法定义好了之后,不会执行的,如果想要执行,一定要进行方法的调用;---->调用方法,格式:  方法名称();
八,流程控制
    主要是if语句,while语句,for循环等,主要两个关键字:break 和 continue
    1. break
   ①, 可以用在switch语句中, 一旦执行, 整个switch语句立即结束
   ②, 可以用在循环语句当中, 一旦执行, 整个循环语句立即结束, 打断整个循环.
   2. continue  继续 一旦执行, 跳出当前次循环剩余内容, 马上开始下一次循环
    多个循环嵌套, break 和 continue 只对最里层的有用..
九, 方法
    三要素: 返回值类型,  方法名称,   参数列表.  
        三种格式 :
                        1,单独调用 :   方法名称(参数); ----sum(10, 20); 注意:可以不用接收返回值而直接调用.
                        2, 打印调用:    打印括号内输入  方法名称(参数):  打印返回值. 无返回值,不能打印调用或者赋值调用.
                        3, 赋值调用:    数据类型 变量名称 = 方法名称(参数);   接收返回值.
        方法注意事项
    1, 方法应该定义在类当中, 但是不能方法嵌套
    2, 方法定义的前后顺序无所谓
    3, 方法定义后不会运行,要用得调用,  单独调用, 打印调用, 赋值调用
    4, 如果方法有返回值, 那么必须有 return, 不能没有
    5, return 后面的返回值数据, 必须和方法的返回值类型对应起来.
    6, 对于一个void没有返回值的方法,不能写return后面的返回值, 只能写return自己.  可以写   return;   但是不能写 return 10;  
          return;     // 没有返回值, 只是结束方法的执行而已
    7, 对于方法当中最后一行的return,可以省略不写. 就是return;
    8, 一个方法当中可以有多个return语句, 但是必须保证同时只有一个会被执行到.
    9,方法的重载 (Overload) :  多个方法的名称一样, 但是参数列表不一样
         因素: 1. 参数个数不同  2, 参数类型不同  3, 参数的多类型顺序不同
十, 数组 Array
    特点:
        1,  数组是一种引用数据类型
        2,  数组当中的多个数据, 类型必须统一
        3,  数组的长度在程序运行期间不可改变.
   格式:静态:数据类型[]  数组名称 = new 数据类型[] {元素1, 元素2,........};   
             省略格式:  数组类型[] 数组名称 = {元素1, 元素2, 元素3,......};
            动态: 数据类型[]  数组名称 =  new  数据类型[数组长度];
十一,Java的内存需要划分为5个部分:
        栈(Stack): 存放的都是方法中的局部变量.
        堆(Heap): 凡是new出来的东西, 都在堆当中
        方法区(Method Area): 存储.class 相关信息, 包括方法的信息.--方法名称,参数等
       本地方法栈(Native Method Stack): 与操作系统相关
       寄存器(pc Register): 与CPU相关.


十二, 面向对象
        面向对象的三大特征: 封装, 继承, 多态.
      面向过程: 当需要实现一个功能的时候, 每一个具体的步骤都要亲力亲为, 详细处理每一个细节
      面向对象: 当需要实现一个功能的时候, 不关心具体的步骤, 而是找一个已经具有改功能的人, 来帮我做事...
十三, Scanner 类-----》从键盘输入
      使用步骤:1, 导包:  import 包路径.类名称;
                        如果需要使用的目标类,和当前类位于同一个包下, 则可以省略包语句不写.
                        只有Java.lang包下的内容不需要导包, 其他包都需要import语句.
                        import  java.util.Scanner;


        2, 创建:  类名称 对象名 = new 类名称();  --有时候括号内有参数,根据方法需要
                    // system.in 代表从键盘进行输入   
                     Scanner sc = new Scanner(System.in);


        3, 使用:     对象名.成员方法名();
                        // 获取输入的一个int数值:  sc.nextInt();
                        int num = sc.nextInt();
                        // 获取键盘输入的一个字符串
                        String str = sc.next();
十四, Random 类---产生随机数字
        1, 导包: import java.util.Random;
         2, 创建: Random r = new Random();
        3, 使用: 获取随机数字--> int num = r.nexInt(); ---int所有范围, 有正负两种
                                    --> int num = r.nextInt(3)---[0-3) 范围内随机,就是0-2
十五,ArrayList 当中的常用方法
    1,  public boolean add(E e)--->向集合中添加元素, 参数的类型和泛型一致
            // 对于ArrayList集合来说, add添加一定是成功的,所以返回值可用可不用,但是对于其他集合, 不一定成功, 一定需要使用返回值.
    2, public E get(int index)---> 从集合当中获取元素, 参数为索引编号, 返回值为对应位置位置的元素
        //String name = list.get(2); ------>得到第2号索引位置的名称
    3, public E remove(int index)--->从集合当中删除元素,返回值就是被删除的元素
    4, public int size()---->获取集合的尺寸长度, 返回值是集合中包含的元素个数.
十六, 字符串  注意:字符串的内容用不可变.
    创建字符串的常见方式:  3  +  1
    1, public String ();------> 创建一个空白的字符串, 不含任何内容
    2, public String (char[] array); -----> 根据字符数组的内容, 来创建对应的字符串
    3, public String (byte[] array);------> 根据字节数组的内容, 来创建对应的字符串.
    4, 直接创建  String a = "Hello";   
            注意: 直接写上双引号, 就是字符串对象.
        1-3 为重载创建: String st = new String ();--->括号内分别为:空的, char型数组, byte型数组.
十七, 静态static 关键字  一旦用了static 关键字, 那么这样的内容不再属于对象自己, 而是属于类的,
       1, 静态只能直接访问静态,静态不能直接访问非静态.
            成员方法 ---> 可以访问成员变量  也可以访问静态变量
            静态方法 ----> 不能直接访问非静态, 可以访问静态
            因为:内存当中是 先有静态内容, 后有非静态内容.
        2, 静态方法当中不能用this, 因为this代表当前对象, 通过谁调用的方法,谁就是当前对象. 然而静态方法调用时不用对象的,直接类名称.方法名,所以不能用this


   

0 个回复

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