Java中贯穿始终的思想--面向对象思想

本文探讨了Java中的面向对象思想,包括面向对象与面向过程的区别,对象与类的概念,以及面向对象的三大特征——封装、继承和多态。通过实例解释了如何在Java中实现这些概念,并阐述了它们在实际编程中的应用。
摘要由CSDN通过智能技术生成

面向对象思想

面向对象与面向过程

一个经典的问题,
把大象装进冰箱分几步。
对于面向过程思想来说。
三步走,

  1. 打开冰箱
  2. 装进去
  3. 关上冰箱

但是对于面向对象思想
在问题中涉及到两个对象
大象 冰箱 贯穿问题是始终的对象为 冰箱
所以冰箱的行为为

  1. 冰箱->开门
  2. 冰箱->装东西
  3. 冰箱->关门

然后确定了对象的行为我们把对象的行为组织好,就完成了整个问题。

以上不难看出,其实面向对象思想中包括面向过程思想。只是面向对象站在一个更高的层次来看待问题的解决的办法。

对象与类

对象,我们所说的对象是一种现实中具体存在的事物。
在代码中,对象就是在程序具体运行过程中的一块“内存”。
(可以这样理解,但是不够直观,因为这个地方每个人的理解不太一样,学下去你就会知道在你的理解中对象具体是什么。)

,类是对现实中一类事物的抽象的描述,类是一种概念。
类主要存在两个点:一个是事物的共同的特征,二是事物的共同的行为。
在Java中,类就是一段代码,它也是一种数据类型。

类是对象的抽象描述,对象是类的一种具体化,实例化。

在一个Java文件中,应该有且只有一个public类,而且这个类的名字要与文件名一致。

构造方法
每一个类中都会有一个与其名字一样的方法,(可以写出,也可以不写,也可以重写),他的二作用是用来创建类的对象。

  1. 类的构造方法是不能有返回值
  2. 类的构造方法必须与类名一致
  3. 如果没有定义构造方法,编译器会自动定义一个无参的构造方法。如果定义了构造方法,编译器将不会创建。
  4. 构造方法可以重载
    当然有方法的重载,就应当有变量或者说是属性名字一致的情况
    1.在构造方法中,this代表的是当前创建变量的属性。
    2.在普通方法中,代表的是当前调用方法属性。

面向对象的三大特征

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

封装

  1. 广义封装
    编写一个类的过程就是一个封装的过程
    封装要遵循高内聚低耦合
    高内聚:功能高度集中,一个类不应该有过多的功能。
    低耦合:各功能之间的联系越少越好
  2. 狭义封装
    在Java中,类中的内部信息尽量隐藏起来。
    就是将类中的属性全部使用private修饰,让他变成私有的属性变量
    那么怎么获取呢,构造公共的get,set方法
    在这里插入图片描述
    在这里插入图片描述

继承
继承描述的就是类与类之间的关系
字类:继承别人的类就是字类。
父类:被别人继承的类就是父类。
在这里插入图片描述
在这钟继承的关系下,

  1. 字类会继承父类所有的属性和方法。
  2. 字类还可以扩展自己的属性跟方法。
  3. 子类可以重写父类的方法
  4. 子类可以定义与父类一致的属性,但是不是同一个。
  5. 一个类只能有一个直接的父类,(单继承)。
  6. 继承是可以传递的(即字类可以继承父类继承的属性与方法)
  7. 构造方法是不会被继承的(构造性)(构造方法不算是一个方法,所以它不会被继承),虽然他不会被继承但是在字类创建对象时,会先调用父类的构造方法,然后再调用子类的构造方法。
package demo2;

public class Person {
   
	private String name;
	private String sex;
	private int age;
	public String getName() {
   
		return name;
	}
	public void setName(String name) {
   <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值