您的位置:首页 > 职场人生

黑马程序员—Java入门学习日记基础篇-面向对象总结3

2014-12-28 12:52 288 查看
------- android培训java培训、期待与您交流! ----------

- Java面向对象编程知识点总结。

一:构造代码块。

为对象进行初始化,而且优先于构造函数执行。

为所有对象进行统一初始化,而构造函数是为不同对象进行不同的初始化。

实例如下:

class Person {

{

System.out.print(“共性初始化”);

Void eat (){

System.out.println(“生下来就吃饭”);

}

}//只要建立对象,该区代码将首先被执行。

Person (int age)

{

this.age= age;

}

}

二.this的用法1.用于区分局部变量和成员变量的同名问题。

2.用于代表本对象,代表所在函数对所属对象的引用。

3.构造函数之间或普通函数之间调用使用,this();调用默认构造函数。

4.this语句只能写在函数的第一行位置,因为初始化要首先使用this语句。

示例如下:

class Test

{

{

System.out.println("构造代码块");

}

private int a;

private String name;

Test(){

this.print();

System.out.println("第一个构造函数");

}

Test(String name){

this();

System.out.println(name);

}

Test(int a){

this.a=a;

}

public void print(){

System.out.println("第一个构造函数调用。私有变量a ="+a);

}

}

class GouZao{

public static void main(String[] args)

{

Test ts = new Test("调用第二个构造函数");

}

}


运行结果:

三.static(静态)关键字的使用:

1.用于修饰成员变量和成员方法。

2.随着类的加载而加载,消失而消失。

3.静态先存在,对象后存在。

4.静态方法只能调用静态变量。

5.静态方法中不可以使用this、super关键字,因为静态方法先于对象出现。

6.什么时候使用静态修饰符:

1.当对象中出现共享数据时。

2.定义静态函数:当方法中没有访问到非静态数据时,方法可以定义成静态。

7.静态代码块:

Static

{

静态代码块中的代码、、、、、

静态代码块随着类的加载而加载,只执行一次,用于给类进行初始化,优先于主函数执行。

}

静态变量的提取如下图所示:



四.主函数。

1.是一个特殊的函数,可以作为程序的入口,被JVM调用。

2.public表示:访问权限最大。

3.static表示主函数随着类的加载而加载。

4.main可以被JVM识别。

五.

Java中的内存结构。

Java在运行时需对内存进行分配操作,为了提高效率,对内存空间进行了区域的划分,因此每一片区域都有自己的特点的处理数据方法和内存管理机制。

栈内存用于存储基本数据类型变量和对象句柄,存在于栈中的数据可以共享(存储局部变量,当使用完后,所占空间会自动释放)。

堆内存,数组和对象,通过new创建的实例都存放堆内存中,每一个实例都有内存地址值,实例的变量都有默认的初始化值,当实例不在被使用,会在不确定的时间被垃圾回收器回收。

方法区:用于存储类中的自定义方法和static静态成员变量。

六.对象初始化。

1.初始化过程:1.通过JVM加载类到内存中,并开辟方法区初始化静态属性。

2.执行类中的static静态代码块,给类进行初始化。

3.在堆内存中开辟空间,分配内存地址。

4.在堆内存中建立对象的特有属性,并进行默认初始化,使用构造函数进行初始化。

5.执行构造函数中的其他语句。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: