Java基础——面向对象

面向对象和面向过程的不同

1.面向过程

在面向过程的时候,我们需要考虑怎么去实现一个功能。
比如:你饿了,现在的你还只是个孩子,无法自己吃饭,我们现在需要解决的是怎么样让你吃到饭(父母用勺子一勺一勺的喂给你吃…)。这就是面向过程。

2.面向对象

在面向对象的时候,我们不需要去考虑怎么实现,怎么做。而直接考虑考虑谁来做,谁去做。
又比如:你饿了,现在的你长大了,能够自己解决吃饭的问题。我们需要解决的就是告诉你该吃饭了,至于你怎么吃,吃什么,用筷子还是用刀叉,需不需要人投喂,这些不再是我们考虑的问题。

类和对象

1.类

抽取出一类对象公共的部分,形成一个类。
比如,汽车就可以是一个类,汽车都有轮子,都能跑,都能载人等等,这些汽车都有的特性,就可以提取出来,形成一个汽车类。至于我的轮子是大是小,怎么跑…这些问题交由对象去解决。

2.对象

就是对类的具体化。就比如,你知道了汽车类,根据这个类,造出了具体东西。这个东西就是类的具体化。不管你造的是大黄蜂还是擎天柱,只要是通过汽车类具体化出来的,就是一个汽车对象。

创建类

1.创建一个类

格式:

修饰符 class 类名{

}

举例:

public class Car{
	//创建了一个汽车类
	...
}

2.类中属性

也可以叫成员变量。就是用来描述这个类的特性的变量。
格式:

修饰符 属性类型 属性名 = 默认值;//默认值没有可以不写

举例:

piblic class Car{
	public String carName;//汽车品牌名
	private double width;//车身宽度
	public double heigth;//车身高度
}

如上,定义了一个汽车类,汽车的公有属性有:汽车品牌、车身宽度、车身高度等等…其他的属性没有一一例举。

3.类中方法

这个类实现一个该类特有的功能的方法
格式:

修饰符 返回类型 方法名(参数列表){//参数列表可以为空
	实现语句...
}

举例:

piblic class Car{
	public String carName;//汽车品牌名
	private double width;//车身宽度
	public double heigth;//车身高度

	public void run(){
		...
	}
}

如上,汽车类里面定义了一个行驶的方法(run)

创建对象

创建对象需要使用new关键字
格式:

对象类型 对象名=new 构造器

举例:

public class test{
	public ststic void main(String[] args){
		Car c=new Car();
	}
}

构造器

创建类的时候需要用到构造器,现在说一说什么是构造器。
构造器的作用就是用来初始化类对象的属性,构造器也叫构造方法,特点是无返回值,且名字跟类名相同。
空构造器是默认的,不用单独给出,如果实现了构造器的重载,需要再次声明空构造器、
利用断点调试可以发现执行完构造器之后,对象的属性都被初始化了:
在这里插入图片描述

无参构造器

无参构造器就是指没有参数的构造器,如:

public class test{
	public ststic void main(String[] args){
		Car c=new Car();//使用的就是无参构造器
	}
}

构造器的重载

重载指的是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。同一个类中,每一个构造器的参数列表不能相同。
当我们创建好一个类,默认会有一个空的构造器,如:
在这里插入图片描述
里面并没有"Car()"构造器,但是我们却能直接使用。
如果我们重载了构造器,则必须添加空构造器。
验证一下:
在这里插入图片描述
添加空构造器:
在这里插入图片描述

有参构造器

构造器里面有参数列表的叫有参构造器

this

这是Java里面的一个关键字
他可以:

1.指代对象

在这里插入图片描述
在创建对象的时候,指代这个对象。

2.修饰属性

细心地小伙伴可能发现了,在上面的重载方法中,用到了"this",在重载构造器的时候,如果形参列表和类里的属性重名了,可以用"this"来指代类里的属性。如果不重名,则"this"可以省略。
试一试:
在这里插入图片描述
正常的:
在这里插入图片描述

3.修饰构造器

在重载构造器的过程中,可以用this来修饰构造器:
在这里插入图片描述
试验一下:
在这里插入图片描述
类对象的属性成功初始化了,说明构造器里合理使用this()指代其他构造器是合理的。

指代本类当中的方法

举例:
在这里插入图片描述
以后遇到其他用法再接着说。
下一篇先用这些基础知识,做一个小demo
给个赞吧,求求了
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徽徽徽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值