Java基础学习(八)面向对象之类、属性、方法

1.关于于的设计

2.类的组成成分:

1) 属性(成员变量,Field)

2)方法(成员方法,函数,Method)

2.1属性

* 成员变量 vs 局部变量

相同点:

1.遵循变量声明的格式: 数据类型 变量名 = 初始化值

2.都有作用域

不同点:

1.声明的位置的不同 :成员变量:声明在类里,方法外

* 局部变量:声明在方法内,方法的形参部分,代码块内

2.成员变量的修饰符有四个:public private protected 缺省

* 局部变量没有修饰符,与所在的方法修饰符相同。

3.初始化值:一定会有初始化值。

* 成员变量:如果在声明的时候,不显式的赋值,那么不同数据类型会有不同的默认初始化值。

* byte short int long ==>0

* float double ==>0.0

* char ==>空格

* boolean ==>false 

* 引用类型变量==>null

* 局部变量:一定要显式的赋值。(局部变量没有默认初始化值)

4.二者在内存中存放的位置不同:成员变量存在于堆空间中;局部变量:栈空间中

总结:关于变量的分类:

 1)按照数据类型的不同:基本数据类型(8种) & 引用数据类型

 2)按照声明的位置的不同:成员变量 & 局部变量

2.2 方法:提供某种功能的实现

* 1)实例:public void eat(){//方法体}

* public String getName(){}

* public void setName(String n){}

* 格式:权限修饰符 返回值类型(void:无返回值/具体的返回值) 方法名(形参){}

* 2)关于返回值类型:void:表明此方法不需要返回值

* 有返回值的方法:在方法的最后一定有return + 返回值类型对应的变量

* 记忆:void 与return不可以同时出现一个方法内。像一对“冤家”。 

* 3)方法内可以调用本类的其他方法或属性,但是不能在方法内再定义方法!

3.面向对象编程的思想的落地法则一:

1)设计并创建类及类的成分

2)实例化类的对象

3)通过“对象.属性”或"对象.方法"的形式完成某项功能

4.类的初始化的内存解析

4.1 内存划分的结构:

栈(stack):局部变量 、对象的引用名、数组的引用名

堆(heap):new 出来的“东西”(如:对象的实体,数组的实体),含成员变量

方法区:含字符串常量

静态域:声明为static的变量

4.2 理解的基础上,学会基本的创建的类的对象在内存中的运行。

weinxin
我的微信
有问题微信找我
DannyWu

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: