跟黑马程序员开始,200个视频,开学,学习的经验慢慢总结。因为平时还要干活,所以每天学的东西可能不会太多。

day1

简介:Java是一种高级编程语言,常用于企业的应用开发。

使用:搭建Java开发环境,安装JDK,(想到炉石的JK和DK)。

Java是执行工具,Javac是编译工具 。和大学学的C语言差不多,编写编译运行。

新人开始学java_Java基础

新人开始学java_Java基础_02

注意:1.文件名与文件内名称一致

   2.符号使用英文

day2

1.原来JDK11可以直接java 文件.java了...

2.今天学path,配置环境变量,学这个有什么用?原来是方便公司老版本Java在任意目录运行。

3.配置Java_home,同样是环境变量配置。

4.使用IDEA。类似pycharm。

day3

1.idea果然跟pycharm差不多,因为是一个全家桶的...这感觉才对了,pycharm我还是挺熟的。

2.IDEA需要project,module, package, class来进行管理,要建好几个,感觉有点麻烦,不知道有什么用。

3.写函数能缩写???牛,不知道pycharm能不能。

快捷键:ctrl alt t 召唤保包围方式

新人开始学java_Java_03


4.开始学语法

/     /一行注释

/*  */多行注释,和C语言差不多。

/**  */文档注释,还没讲是干啥的,以后补充

day4

1.字面量,还可以,没什么需要注意的。

新人开始学java_Java_04

2.\n换行,\t tab

变量,果然C语言是基础,学到现在,Java感觉跟c语言差不了多少。

3.一个变量只能在一个大括号内定义一次。

新人开始学java_Java基础_05

和C语言一模一样啊,这些基础的东西逻辑都一样,只是代码不太一样而已...

开始倍速观看...

4.

新人开始学java_Java基础_06

C语言我记得是BODX代表这四个,Java八进制和十进制还不一样。

day5

1.今天学自动类型转换,首先,类型范围小的变量可以直接赋值给类型大的变量。

新人开始学java_Java_07

2.表达式中三个不同类型进行计算时,最终结果类型由表达式的最高类型确定。byte,short,char直接转换成int。

3.强制类型转换,把强行转换的前边加上(类型);另外浮点型转换为整型会直接丢掉小数保留整数。

day6

1.运算符计算时,两个int类型计算得到的结果是int,所以5/2=2,这里容易出错。

2.+号可以连接字符串和变量

新人开始学java_Java_08

秘籍:能算就算,不能算就加起来。

新人开始学java_Java基础_09

注意第四个,这里有点绕。

3.逻辑运算符,条件运算符等等没什么好说的,跟C一样。

4.三元运算符,格式:判断条件?结果A:结果B    跟if差不多。

5.运算符的优先级:这一部分是需要经验的,我现在功力不够。

新人开始学java_Java_10

day6 程序流程:顺序,循环,分支

1.if   跟C语言一样,if()后边不带;

2.switch  (1)表达式类型只能是byte、short、int、 char、string,不支持long、float、double。浮点数和long是因为范围太大了,占用的字节太多,double是因为在计算中会出现精度问题。

              (2)case的值不能重复,而且只能说字面量,一眼能看出来的,不能是变量,例如a=1,case a  。

  (3)不要忘记加break 。

  (4)利用case的穿透性可以简化代码,例如有大量重复的分支时。

3.for循环,基本结构和C语言一样,不多赘述。

4.while循环,同上,记得加i++。

5.do while 先执行后判断。

6.for循环一般用于知道循环几次,while循环一般用于不知道循环几次,然后计数。for循环更灵活一点。for循环中定义的变量在全局中不能使用,while可以使用,因为while是定义在外边的

7.跳转关键字,break continue,两个只能用在循环。

8.随机数     

Random r = new Random();
int data = r.nextInt(10);//生成0~9随机数,包前不包后。
  • 1.
  • 2.

 day7

数组

1.简易格式int ages[] = {12,13,18};

2.定义什么类型的数组就放什么数据。数组里边存放的是地址不是数据。也可将数组看为一种引用。

3.遍历数组快捷键ages.fori,但首先要创建ages这个数组。

4.动态数组int[] ages = new int[3]。方括号里边放的是长度,大括号里放的是数据。

int ages[] = new int[5]{1,2,3,5,4};
  • 1.

这是错的,动态数组方括号里边不放数

5.下面为了进一步理解数组,介绍了Java内存分配,有点指针的味道。

新人开始学java_Java_11

6.案例,找出数组最大值,数组反转,随机排名,后两个都是使用交换索引位置的思想。

7.二维数组没讲,以后补充。

8.注意事项:访问不要超过数组长度,空指针的话输出不了长度。

day8

方法:封装,就是函数,

新人开始学java_Java基础_12

1.void代表无返回值,也不用加return。

2.对于方法的运用要注意有没有形参,有没有返回值。

3.main也是方法,所以定义的方法不能在main中。也就是方法不能包含方法。

4.方法调用是在栈里,最后清空栈内存。

5.调用的是局部变量,不改变全局的变量。要实下边的例子是数组,那么就会变,因为数组指向的是地址。

public class test {
    public static void main(String[] args) {
        
        int a = 10;
        change(a);
        System.out.println(a);//10

        }

    public static int change(int a){
        System.out.println(a);//10
        a = 20; // 局部变量
        System.out.println(a);// 这里的a是局部变量,并不是方法参数  20

        return a;//这个return没有用,所以前边可以改成void 
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

6.方法重载,名称相同,形参的个数、类型、顺序不同,就称为方法重载。

新人开始学java_Java基础_13


7.publicstatic组合使用时,表示该成员是公开的,并且属于类本身,而不是某个实例。这样,其他类可以直接通过类名来访问该成员,而不需要创建类的实例。