面向对象(局部变量与成员变量的区别)(方法的形式参数问题)

类与对象:

类:----是一组相关的属性和行为的集合

对象:-----是该类事物的具体体现

成员变量 就是事物的属性

成员方法 就是事物的行为

定义类其实就是定义类的成员(成员变量和成员方法)

创建对象格式:

类名 对象名 = new 类名();

成员变量和局部变量的区别:

A:在类中的位置不同-

成员变量在类中方法外

局部变量方法内或者是方法声明上

B;在内存中位置不同

成员变量在堆内存中

局部变量在栈内存中

C:生命周期不同

成员方法随着对象的存在而存在,随着对象的消失而消失

局部变量随着方法的存在而存在,随着方法的存在而消失

D:初始值不同

成员变量有默认的初始值

局部变量没有默认初始值,必须先定义,赋值,才能使用

形式参数问题

方法中-----基本类型作为形式参数

//定义一个学生类
//形式参数是基本类型
class Student{
   
     public int sm(int a,aint b){
     
        return a+b;

       }
}

形式参数是基本类型的调用:


//创建对象
Demo d = new Demo();
//传入参数---对象名.方法名(参数)
//传入参数也就意味着方法开始执行--并具有返回值
d.sum(10,20);
//输出结果---基本形式参数都具有返回值
//所以采用赋值输出
int result = d.sum(10,20);
System.out.println("result:"+result);
	

方法中-----形似参数是引用类型

//定义一个类
//形式参数是引用类型
//没有具体的返回值,只能通过创建对象进行调用

class Student1{

     public void sm1(){

       System.out.pritln("学习");
    
        }

}

形式参数是引用类型的调用

//创建对象
Demo B= new Demo();
//引用类型没有参数----直接输出
B.sm1();
//引用类型有参数
//传入参数---对象名.方法名(参数)
//直接输出
对象名.方法名(参数)

方法中-----形式参数是引用类型并且是一个类类型

class Student3{
    
    //此时的引用形式参数中的,参数类型定义的是上一个Student类
    //在引用形式参数类型时定义一个类的名字,说明该方法需传入的参数必须是该类创建的对象

    public void sm2(Student1  S){
  
     s.show();   

     }


}

此时如何调用Student3中的方法

第一步:调用类中的方法首先需要创建一个该类的对象

Student3 A= new Student3();

第二步:此类中的方法为引用型形式参数---其引用类型是一个类的名字---故我们需要对此类创建对象,将对象传参给此方法

首先引用那个类我们就对这个对象

Student1 B = new Student1(); 

第三步:通过本类创建的对象--将引用类创建的对象---传参个给sm2方法

对象传参的格式-----对象名.方法名(参数)-----把Student1的地址传给sm2

A.sm2(B);

第四步:参数传递完成后方法将会执行-----方法是s.show();

此方法的含义是调用Student1中的show方法--------其最终结果显示为“学习”

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值