黑马程序员——学习笔记——知识复习1

来源:互联网 发布:程序员如何入门 编辑:程序博客网 时间:2024/06/05 19:11

                                                  ------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


2014年11月30日

天气:大雨

心情:痛并快乐着


今天到了月底了,本来是准备和妹子出去吃顿好吃的,可是莫名其妙的有吵架了,算了,还不如回来继续学习。一想,差不多学了一个月了,我是不是该总结下呢,刚好复习下前面学的东西。于是,从头开始扫了一遍视频和自己做的笔记。


一.从JVM 到 JRE 到JDK ,

首先JVM 是我们所说的虚拟机,运行我们编译出来的.class文件的,直接与我们的操作系统打交道的东西,所以说是我们JAVA实现跨平台的最核心的东西;

然后是JRE,JRE可以说是我们JAVA的运行环境,里面有一个bin目录和lib目录,bin里头就是我们的JVM,而lib里头则存放了我们JVM运行所需要的类库,它是介于我们操作系统和我们的JAVA应用程序之间的一个虚拟的平台。但是我们要注意的是JRE的版本与我们的操作系统是有关系的。


最后是JDK,JDK就是我们所说的JAVA开发工具包了,它里头包含了我们开发JAVA所需要的所有东西了,最关键的就是4个文件夹:bin,lib,include,jre.我们一般会说JDK包含了JRE,然后JRE包含了JVM


二.基本的语法

这里我就写一些对我来说比较容易忘记的东西:

1.break和continue

break:我们称之为"跳出";

作用范围:要么是switch语句,要么是循环语句;

注意:

1.当break语句单独存在是,下面不要定义其他语句,因为执行不到;

2.break是跳出当前所在的循环;

3.如果出现循环嵌套,break想要跳出指定的循环,可以通过标号(就是给循环起标记)的方式来实现。

continue:我们称之为“继续”;

作用范围:结束本次循环,继续下次循环;

注意:如果continue单独存在的时候,下面不要有任何语句,因为执行不到。

2.函数

函数的特点:

1.将功能代码进行封装;

2.便于进行服用;

3.只有被调用的时候才会执行;

4.增强代码的复用性;

5.不能在函数内部定义函数;

两个明确:

1.这个功能的结果是什么?就是确定返回值类型。

2.这个功能实现过程中是否需要位置内容的参与,就是明确参数列表。

3.内存的划分

1.寄存器;

2.本地方法区,本地系统平台中的东西;

3.方法区

4.栈内存:存储的都是局部变量,一旦作用域结束,则自动释放

5.堆内存:存储的是数组和对象,

特点:

1.每个实体都有首地址

2.堆内存中的每个变量都有默认的初始化值,根据类型不同而不同

3.垃圾回收制

4.数组

数组是一种实体,所以在内存中是以对象的方式存在,需要引用类型来访问

什么时候使用数组呢:如果数据出现了对应关系,并且对应关系的一方是有序的数字编号,并作为角标使用,这点我们要与Map区分开来

[I@1fb8ee3 这是在内存中的数组存在方式,@的左边是实体的类型,“["表示数组的形式,”I“表示是int类型,@右边是哈希值。

二维数组:数组中的数组,需要注意的是当我们没有对数组进行初始化的时候,则一维数组默认为Null,而二维数组是没有的,等我们去分配,如果强行去读取,则会报空指针异常。

二、面向过程与面向对象(冰箱与大象的故事)

1.面向过程

强调的是过程(动作);

2.面向对象

强调的是对象(实体);

特点:

1.面向对象就是一种常见的思想,符合人们的思考习惯

2.面向对象的出现,让复杂的问题简单化

3.面向对象的出现,让曾经在过程中的执行者变成了对象中指挥者

类:事物的描述

对象:该类的实例

成员:成员变量<-->属性,成员函数<-->行为

成员变量与局部变量的区别

1.成员变量定义在类中,整个类的都可以访问;

          局部变量定义在函数,语句,局部代码块中,只在所属区域有效

2.成员变量存在于堆内存的对象中

   局部变量存在于栈内存的方法中

3.成员变量随着对象的创建而存在,随着对象的消失而消失

   局部变量随着区域的执行而存在,随着所属区域的结束而释放

4.成员变量都有默认的初始化的值

   局部变量是没有的

3.匿名对象

定义对象的简写格式

当对象对方法仅进行一次调用的时候,会选择使用匿名对象,也可以选择不使用

4.封装

是指隐藏对象的属性和实现细节,仅对外提供公开访问的方式

好处:

1.将变化隔了。

2.使用更加便捷

3.提高重用性

4.提高安全性


原则:

1.将不需要对外提供的内容都隐藏起来(private)

2.把属性都隐藏,提供公共方法对其进行访问

5.构造函数

给对象进行初始化的,可以进行重载

注意:

1.创建对象都必须通过构造函数进行初始化

2.一个类如果没有构造函数,则系统默认创建一个空参数的构造函数

一般函数与构造函数的区别

1.一般函数在对象创建后,需要该函数功能时,才会调用它

   构造函数则是只要一创建对象,就会调用构造函数,初始化对象

2.一般函数在对象创建后可以调用多次,也可以不调用

   构造函数只能调用一次,且必须调用

今天就学了这么多了,明天继续吧。加油!




0 0
原创粉丝点击