java中类的成员之:属性,方法

一、类的属性(或成员变量)Field:
*                成员变量   vs  局部变量
*           1.相同点:①变量的声明:  数据类型  变量名  = 初始化值;
*                     ②都有其作用域,仅在作用域内有效
*           2.不同点:
*                     ①在类中声明的位置不同
*                          >属性:直接定义在类的内部的变量
*                          >局部变量:方法内定义的;方法的形参;代码块内部;构造器内部;。。。
*                     ②成员变量声明的数据类型前可以指明这个变量的权限:private 缺省 protected public
*                  局部变量声明的数据类型前不可以有权限的声明。
*                     ③成员变量可以不显式的赋值,那么就会使用其默认赋值。
*                          byte short int long==>0
*                          boolean==>false
*                          float double==>0.0
*                          char ==>\u0000 空格
*                          引用数据类型 ==>null
*                     局部变量:除方法的形参之外,都需要显式的赋值,否则报错
*                               方法的形参是在方法调用的时候赋值的。
*                     ④在内存中保存的位置不同:
*                          成员变量保存于堆空间;
*                          局部变量保存于栈空间
*                         
*
*           总结:①变量按照数据类型分: 1.基本数据类型(byte short int long boolean float double char) 
*                                    2.引用数据类型(类、数组、接口)
*                ②变量按照声明的位置:1.成员变量(属性:直接定义在类的内部的变量) 2.局部变量(方法内定义的;方法的形参;代码块内部;构造器内部;。。。)

* 二、类的方法(成员方法、Method、成员函数):封装了一定功能的机构体。
*           比如:
*           public void eat(){//方法体}
*           public void showNation(String nation){//方法体}
*           public String getName(){return name}
*           public int getTime(int time,String s,boolean b){return time;}
*           方法声明的格式:
*           权限修饰符  方法的返回值类型  方法名(形参列表){
*                //方法体;
*           }
*           >权限修饰符:表明这个方法可以被调用的范围。java规定了4种不同的权限:private 缺省 protected public
*           >方法的返回值类型:void / 有具体的返回值类型。
*                     void:表示此方法没有返回值
*                     有具体的返回值类型:基本数据类型或者引用数据类型。
*                                      要求方法体内必须有return + 相应类型的变量
*                
*           >方法名:就是一个标识符,需要满足命名的规则、规范:xxxYyyZzz.  "见名知义"
*           >形参列表:属于局部变量,个数从零个到多个都可以。
*           >方法体:体现了一个方法具体功能的实现。
*
*    注:方法内可以调用本类中声明的其他的方法或属性。
*         但是方法内不可以定义新的方法


* 三、完成具体功能的步骤。
* 1.先去找具体功能所在的类,如果有,直接调用。如果没有,自己创建。
* 2.创建类,实际上就是创建类的成员。主要类的成员:属性、方法
*
* 四、面向对象编程思想的落地的法则一:(重点)
*    1.创建一个类,并提供类的属性、方法
*    2.创建类的对象(或 new 一个类的对象   或 类的实例化)
*    3.通过"对象.属性" 或 "对象.方法" 的形式,进行功能的调用

4.类的初始化的内存解析
4.1  内存划分的结构:
      栈(stack):局部变量 、对象的引用名、数组的引用名
      堆(heap):new 出来的“东西”(如:对象的实体,数组的实体),含成员变量
      方法区:含字符串常量
      静态域:声明为static的变量

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

* 五、创建一个类的多个对象,不同的对象之间没有关系,各自拥有一套类的“副本”:属性。
*    即:当对一个类的对象的属性修改值时,不会影响其它对象的属性的值。
*   
* 六、对象的内存解析(见图)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值