【学习笔记】java面向对象基础编程1

/***********

目录

一. java中的类, 方法和变量

二. Java命名空间及访问规则

三. 对象的构造方法

四. 对象的内存分析

五. This关键字的使用

六. 方法重载(OverLoad)

**********************************************************/

一. java中的类, 方法和变量

1. 对象是类的一个实例. 抽象数据类型称为类. 类是对象的模板.

2. 类的语法规范.

【学习笔记】java面向对象基础编程1

类的修饰符: public 公开; abstract 抽象;final 最终; 默认缺省方式 friendly

一组: public private protected 

二组: static final transient

类名第一个字母要大写(规范)

成员变量的类型可以是java中的任意数据类型, 包括类, 接口, 数组

驼峰标识: nameSecond

全局变量默认初始化表: 

 【学习笔记】java面向对象基础编程1

注意: 成员变量没有初始化会自动初始化.

局部变量没有初始化则报错.

 

【学习笔记】java面向对象基础编程1

编译结果:

 

 

3.方法定义的规范

 【学习笔记】java面向对象基础编程1

方法修饰符: 

 

参数类型可以是简单数据类型, 也可以是引用数据类型(数组, 类或者接口)

参数传递的方式: 简单数据类型是值传递, 对象是引用传递.

 

4.简单数据类型的参数传递, 备注

 【学习笔记】java面向对象基础编程1

说明区别: 

System.out.print 输出后不自动换行

System.out.println 输出后换行

可以使用 System.out.println(); 来直接换行

 

5.引用传递

 【学习笔记】java面向对象基础编程1

改变的是地址, 引用即是指针. 这里面传递的是int[] 的一个对象intArray, 所以该传递为引用传递.

运行结果如下: 

 

总结, 值传递是对数据进行一个拷贝, 而引用传递是一个对象指针的传递.

 

6.重要部分(实例方法和类方法): 

 【学习笔记】java面向对象基础编程1

实例变量和类变量, 前面已经说明.

实例方法没有加static, 而类方法有加static.

类(静态)成员方法简称为类方法和静态方法.

成员实例方法(对象方法)简称为实例方法.

 【学习笔记】java面向对象基础编程1

 

 

7.重要部分(构造方法):

 【学习笔记】java面向对象基础编程1

(一)对象的生命周期

 【学习笔记】java面向对象基础编程1

  1. 对象的创建, 要有构造方法.
  2. 创建对象分声明和分配内存两步.

 

内存情况:

【学习笔记】java面向对象基础编程1 

定义一个变量, 并没有分配内存, 只有赋初始值才会分配内存.

定义一个局部变量并赋上初值, 此时在栈区中有分配内存. 当这个函数的生命周期完成之后, 栈区的内容清除了.

 

3.垃圾回收

【学习笔记】java面向对象基础编程1

强制垃圾回收, 使用: 

System.gc();

调用的是 finalization 方法, 可以重写. 相当于析构函数.

理解下面的代码: 

 【学习笔记】java面向对象基础编程1

 

在person 为空的时候, 表示没有引用了, 此时堆区中的属性没有被引用, 故可以被销毁.

如果有被引用, 即使使用了System.gc(); 对象也不会被销毁.

Finalize 可以用来做一些特殊的工作, 如如C++合作. 一般情况下, 不提倡使用.

 

【学习笔记】java面向对象基础编程1

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(java)