java学习笔记之面向对象(一)

面向对象

面向过程和面向对象

面向过程

强调的是过程(动作)

面向对象

强调的是对象(实体)

特点:
  1. 面向对象是一种常见的思想,符合人们的思考习惯。
  2. 面向对象的出现,将复杂问题简单化。
  3. 面向对象的出现,让曾经在过程中的执行者,变成了对象中的指挥者。

有对象用对象
没对象造对象
想用功能
先找对象

特征

(有特征才能说用了面向对象的思想)

  1. 封装
  2. 继承
  3. 多态

类与对象的关系

用java语言对现实生活中的事物的描述

对于事物描述通常关注两方面:

  1. 属性——通过数值
  2. 行为——通过动作(功能)

只要明确该事物的属性和行为并定义在类中即可

对象

其实就是该类事物实实在在存在的个体
在java中通过new创建

类与对象的体现

例如要描述一辆小汽车:

  1. 属性:
    轮胎数
    颜色
  2. 行为:
    运行(在java中,函数表示此功能)
class Car
{
	int num;
	String color;
	
	void run()
	{
		System.out.println(num+"..."+color);
	}

}

class  CarDemo
{
	public static void main(String[] args) 
	{
		//在计算机中创建一个car的实例。(通过new关键字)
		Car c = new Car();// “c”就是一个类类型的引用变量,指向了该类的对象。
		c.num = 4;
		c.color = "red";
		c.run();//要使用对象中的内容可以通过“对象.成员”的形式来完成调用。
	}
}
细节:

定义类,其实就是在定义类中的成员。
成员:
成员变量——属性
成员函数——行为

对象的内存体现

堆内存当中存放的都是对象
对于字符串数据类型,若要定义在堆中,默认初始值为空。

成员变量和局部变量的区别
  1. 成员变量定义在类中,整个类中都可以访问。
    局部变量定义在函数,语句,局部代码块中,只在所属的区域有效。

  2. 成员变量存在于堆内存的对象中。
    局部变量存在于栈内存的方法中。

  3. 成员变量随着对象的创建而存在,随着对象的消失而消失。
    局部变量随着所属区域的执行而存在,随着所属区域的结束而释放。

  4. 成员变量都有默认初始化值。
    局部变量没有默认初始化值。

误区:
赋值并不是给类中的内容赋值,而是给对象中的内存赋值。

类类型参数:
类类型的变量一定指向对象。要不就是null。

匿名对象:

没有名字的对象
其实就是定义对象的简写格式。
例如:

Car c=new Car();
c.run();

写成:

new Car().run();
什么时候可以用匿名对象:
  1. 当对象对方法仅进行一次调用的时候,就可以简化成匿名对象。
  2. 匿名对象可以作为实际参数进行传递。

基本数据类型参数传递图解:

基本数据类型参数传递图解

引用数据类型参数传递图解:

引用数据类型参数传递图解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值