面向对象-01


 

面向对象三个特征:封装,继承,多态
Java的引用型数据包括对象、数组、以及接口

成员变量和局部变量区别
1.作用范围:成员变量作用于整个类中,局部变量作用于函数中,或者语句中。
2.在内存中的位置:成员变量在堆内存中,因为对象的存在,才在内存中存在。局部变量存在栈内存中。

例:

class Car
{
 String colour = "red";
 int num = 4;
 
 public void run()
 {
  System.out.println(colour+"....."+num);
  }
}
class CarDemo
{
 public static void main(String[] args)
 {
  Car c = new Car();//创建对象,c就是一个类类型变量,类类型变量指向对象。在堆内存开辟空间
  c.colour = "blue";//改变此对象颜色
  c.run();//调用方法
  
  Car c1 = new Car();//创建对象c1
  c1.run();
 }
}

----------------------------------------------------------------------------------------------------------------------------------- 

匿名对象:是对象的简化形式

(1)对对象方法仅进行一次调用    

例1:

class Car
{
 String colour = "red";
 int num = 4;
 
 public void run()
 {
  System.out.println(colour+"....."+num);
  }
}
class CarDemo
{
 public static void main(String[] args)
 {
   new Car.num = 5;//创建匿名对象

   new Car.color  = "blue";//当创建此匿名对象时,上面的匿名对象消失

   new Car.run();//当创建此匿名对象,上面的匿名对象消失,并运行了run()方法,输出red和4
 }
}

 所以,匿名对象调用属性无意义,调用方法有意义

(2)匿名对象可以作为实际参数进行传递

例2:

class Car
{
 String colour = "red";
 int num = 4;
 
 public void run()
 {
  System.out.println(colour+"....."+num);
  }
}
class CarDemo
{
 public static void main(String[] args)
 {

  show(new Car());// 匿名对象作为实际参数进行传递
 }

public static void show(Car c)//接收匿名对象

 {

  c.colour = "blue";

  c.num = 5;

  c.run();//输出改变后的结果

 }

}

---------------------------------------------------------------------------------------------------------

个人总结:要掌握对象的创建,利用对象使用方法和属性。掌握匿名对象的内涵。会画内存流程图,有助于理解匿名对象性质。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值