第五章 面向对象(上)

第五章 面向对象(上)

5.1 面向对象思想

​ Java语言是一种面向对象的程序设计语言,而面向对象思想(OOP)是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计、开发计算机程序。
​ 这里的对象泛指现实中一切事物,每种事物都具备自己的属性行为。面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算机事件的设计思想。

  1. 面向过程POP

    面向过程(Process-Oriented Programming):以函数(方法)为最小单位,数据独立于函数之外;以过程,步骤为主,考虑怎么做;

  2. 面向对象OOP

    面向对象( Object Oriented Programming):以类/对象为最小单位,以对象(谁)为主,考虑谁来做,谁能做;(类包括:数据+方法)

  3. 面向对象仍然包含面向过程,只不过关注点变了,关注谁来做;

  4. 面向对象的基本特征

    面向对象包含了三大基本特征,即封装、继承和多态。

5.2 类和对象

5.2.1 概念

  1. ​ 类是一类具有相同特性的事物的抽象描述,是一组相关属性行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该类事物。

    • 属性:就是该事物的状态信息。
    • 行为:就是该事物能够做什么。
  2. 对象

    ​ 对象是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性和行为。

  3. 类与对象的关系

  • 类是抽象的
  • 对象是具体的
  • 类是对象的模板,对象是类的实体

5.2.2 创建类和对象

​ 在Java语言中,类的属性和行为分别称为成员变量和成员方法。

  1. 类的定义:
public class ClassName {
  //成员变量(在类中,方法外)
  //成员方法 
}
  1. 对象的创建
  • 格式:
new 类名();//也称为匿名对象

//给创建的对象命名
//或者说,把创建的对象用一个引用数据类型的变量保存起来
类名 对象名 = new 类名();
  • 说明
    • 引用数据类型的变量中存储的是对象的地址,所以对象名中存储的是对象地址
    • 内存地址的显示是以“类型@对象的hashCode值"方式呈现;
    • 同一个Java源文件中,多个类的位置没有要求,谁在上面谁在下面都可以;

5.3 成员变量

5.3.1 成员变量分类

实例变量:也叫对象属性,属于某个对象的,通过对象来使用;

类变量:也叫类变量,属于整个类的,不是属于某个实例。

5.3.2 声明方法

【修饰符】 class 类名{
    【修饰符】 数据类型  属性名;    //属性有默认值
    【修饰符】 数据类型  属性名 = 值; //属性有初始值
}
  • 属性的类型可以是Java的任意类型,包括基本数据类型、引用数据类型(类、接口、数组等);
  • 实例变量的值是每个对象独立的
class Circle{
    double radius;
}
public class TestCircle{
	public static void main(String[] args){
        //声明两个对象:C1、C2
		Circle c1 = new Circle();
		Circle c2 = new Circle();
        //默认值:
		System.out.println("c1这个圆的半径是:" + c1.radius);//0.0
		System.out.println("c2这个圆的半径是:" + c2.radius);//0.0
		
		//修改c1这个圆的半径的值
        //C1的radius和C2的radius是相互独立的
		c1.radius = 1.2;
		System.out.println("c1这个圆的半径是:" + c1.radius);//1.2
		System.out.println("c2这个圆的半径是:" + c2.radius);//0.0		
	}
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值