JavaSE 面向对象(一)

本文探讨了面向过程和面向对象两种编程风格的区别,强调它们之间的互补性。介绍了C语言(面向过程)与Java、C++等面向对象语言的特点,并详细解释了类和对象的概念,以及如何通过实例化创建对象。
摘要由CSDN通过智能技术生成

1.面向过程和面向对象
面向对象,是软件开发中的一类编程风格、开发范式。
 除了面向对象,还有面向过程、指令式编程和函数式编程。在所有的编程范式中,
我们接触最多的还是面向过程和面向对象两种。

面向过程和面向对象是程序设计的一种风格(思想)我们千万不要把面向过程和面向对象对立起来。他们是相辅相成的。面向对象离不开面
向过程

面向过程:(procedure -Oriented Programming),简称POP
 典型的语言:C语言
以函数为组织单位,解决问题时,分析实现所需的步骤,然后一步一步实现即可
相对于面向对象语言,扩展能力差、后期维护难度较大

面向对象:( Object Oriented Programming),简称OOP
典型的语言:Java、C#、C++、Python、Ruby和PHP等
是以类为单位进行组织是一种程序设计思想,主要面对的是一类具有相同属性和功
能事物中的个体,是一种设计者思维,适合解决复杂问题.代码扩展性强,可维护性高
2类和对象
类:具有相同特征的事物的抽象描述(定义)
同一类事物的抽象描述,是抽象的、概念上的定义
对象:该类事物具体存在的一个个个体,是真实存在,也称为实例
(是以类为模板,在内存中创建出来的具体实例)
类的结构:
(1)变量:事物属性的描述
(2)方法:事物的行为
(3)构造方法:初始化对向
(4)块:一段没有名称的代码
(5)内部类:即在类体中声明的类

   

万事万物(大千世界中具体存在的东西),皆为对象
人类-->
张三-->
编程是对现实生活事物的体现,根据现实事物的

• 第一步:发现类
根据不同类型的车,抽象出“车类” 各种车
类的声明格式为:
[访问权限修饰符] [修饰符] class Car{
}
访问修饰符有两种public,无(默认)
修饰符:final,abstract
关键字class用来定义一个类
Java类名的命名规范:
类名首字母大写,见名知意,驼峰表示
这个总结的过程,其实是抽象化的过程。抽象出
来车的特征,可以归纳为一个车类。
类和对象
• 第二步:发现类的共有属性(成员变量)
汽车类共有的特征:
1. 颜色
2. 名称
3. 型号
… …
名词
public class Car{
//成员变量定义
String name; //名称
String color; // 颜色
float price;//价格
}
声明成员变量的格式为:
[访问权限修饰符] [修饰符] type attr_name [=defaultValue] ;
成员变量是定义在类中,方法体之外的变量。
成员变量可以使用Java语言中任何一种数据类型(包括基本类型和引用类型)。
在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化。
成员变量可以被类中方法、构造方法和特定类的语句块访问。
成员变量的作用范围为整个类体。
• 第三步:发现类的共有行为(成员方法)
汽车类共有的行为:
1. 启动
2. 行驶
3. 刹车
… …
动词
public class Car{
//成员变量定义
String name; //名称
String color; // 颜色
float price;//价格
方法声明格式为:
[访问权限修饰符] [修饰符]/ void start(){
System.out.println("汽车启动");
[return 返回值;]
}
}
创建并使用对象:
对象:是类的一个实例,是以类为模板在内存中创建的实际存在的实例。
对象的创建和使用
Car bm= new Car();
Car bm:使用Car类作为类型声明一个变量bm. new Car():使用new 创建对象,然后调用Car类的构造方法初始化对象. = :将右边创建的对象地址赋给左边的bm变量
同一类的每个对象有不同存储空间。
对象是类的一个实例,必然具备该类事物的属性和行为(即方法)。
使用对象名.属性或对象名.方法的方式访问对象成员(包括属性和方法)

总结类和对象:
类是一类事物的抽象概念,是一个模型. 
对象是由这个模型所创造的,一个个具体存在的,实实在在存在的实例. 所以创建对象的过程也叫实例化对象. l 
现实生活中先有对象后有类,而编程时先设计类后创建对象
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值