java 面向对象,面向过程,对象

面向对象;面向过程;

面向过程:分析出解决问题的步骤,利用一个又一个功能(函数)把步骤一步一步实;典型语言C语言;

面向过程适合解决简单问题,相对于面向对象扩展能力较差,后期维护难度较大;

面向对象:关注点为类;参照现实事物,将事务的属性(变量),功能(函数,方法)用类抽象组织表示出来;适合解决复杂问题,延展性强,可维护性高;

面向过程:eg:如何开车:点火启动---离合挂挡---油门---前进;(思考方式:按步骤实现,一步一步解决步骤);

面向对象:eg:如何造车:车是怎么做成的;汽车(座椅,车壳,底盘,发动机,轮子,玻璃)(轮胎:制作的步骤面向过程解决…………)面向对象从整体分析,拆分复杂事务,实现部分(一个又一个方法)事务;拆分的事物用面向过程思路去解决;

面向对象,面向过程相辅相成,面向对象离不开面向过程;

 Car car=new Car(); 
 右边:new是创建一个新的对象,Car()以Car类为模板去创建,类型与左边类型同名; 
 左边:Car(类型名) car(变量名)
 =:把右边创建对象的地址赋给左边
 
 
 用一个类的对象有不同的存储空间,互不影响;
 对象是类的一个实例,必然具备该类事物的属性和行为(即方法)
 使用对象名.属性或对象名.方法的方式访问对象成员(包括属性和方法)

成员变量和局部变量
public class Car {
    int price;
    String name;
    String color;
/*
成员变量:方法,构造方法,类中均可调用
int price;
    String name;
    String color;

*/
 public void price(){
         int a;
        //局部变量
        //System.out.println(a);未初始化
        System.out.println(price);
    }
    public void color(){//无修饰符(static),调用方法要用(对象名.方法)
        System.out.println(color);
    }

}

Car bccar=new Car(); bccar.price=1000;//成员变量赋值.对象名.变量. bccar.price();//对象名.方法

引用与对象:

对象好比是一只很大的气球,但是我们抓不住它。引用变量是一根绳,可以用来系汽球。Car car1; (1)创建一根绳子,一根还没有系上任何一个汽球的绳;Car car2;(2)又做了一根绳,还没系上汽球,car1 = new Car();(3)给car1 系上气球;car2 = car1 ;(4)这里,发生了复制行为。要说明的是,对象本身并没有被复制,被复制的只是对象引用。结果是,car2也指向了car1所指向的对象。两根绳系的是同一只汽球*

 

 

对象没有名字,也就没法直接访问它。我们需要通过对象引用来间接访问对象

Car car2 = new Car();创建一个引用类型变量car2,将创建的对象地址传给他

引用类型变量接收地址Car car3 = car2;

car3没有new对象,只是与car2的所表示对象地址相同与car2一样表示同一个地址

此处相当于new Car(); 这个语句在堆空间里创建了实体

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值