欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

面向对象浅见

程序员文章站 2022-01-07 09:47:54
面向对象面向对象的概念面向过程和面向对象的区别对象类面向对象实战思路类的创建创建对象使用对象创建对象的过程OOP实例:求长方体的体积构造器的定义成员变量面向对象的概念面向对象的方法主要是把事物给对象化,包括其属性和行为。面向对象编程更贴近实际生活的思想。总体来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象,(万物皆对象)面向过程和面向对象的区别他们都是解决问题的思想。面向过程:通过过程来解决问题,没有对象的概念,只是如何解决这个问题的过程。面向对象:通过对象来解决...

面向对象的概念

面向对象的方法主要是把事物给对象化,包括其属性和行为。面向对象编程更贴近实际生活的思想。总体来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象,(万物皆对象)

面向过程和面向对象的区别

他们都是解决问题的思想。
面向过程:通过过程来解决问题,没有对象的概念,只是如何解决这个问题的过程。
面向对象:通过对象来解决问题,需要先构建对象(赋予解决问题的能力),然后指挥对象去解决问题。

对象

万事万物皆对象,对象就是一个具体存在的能够解决问题的个体;
如何区别:通过对象的属性和行为。
属性是记录对象的特征的。
行为是对象解决问题的能力。

类是对象的抽象,对象是类的实例化,类是一个模板,通过类来构建对象,在类里面定义对象的属性和行为;

面向对象实战思路

遇到问题,分析问题
通过分析,抽象成类
通过类构建对象
通过对象,解决问题。

类的创建

类的结构

[修饰符public]   class  类名{
		//属性:成员变量
   	  [修饰符public]   数据类型   属性名[=初始值];
		//方法:成员方法
		[修饰符public static]   返回值类型void   方法名([参数]){
	//方法体:解决问题的过程
		}
}  

具体实例
这是一个简单的学生成绩信息,有属性,方法和构造方法

public class Student {
	private String name;
	privateint xuehao;
	privatedouble score;
	privateStudent() {
	}
	public void score(String name,int xuehao,double score) {
		System.out.println("学生成绩信息:姓名"+name+",学号:"+xuehao+",成绩:"+score);
	}
}

创建对象

类名 对象名=new 类名();

public static void main(String[] args) {
		Student  s=new  Student();
	}

使用对象

对象.属性名;
对象.方法名();
案例

s.name="xiaohua";
s.xuehao=123;
s.score=90;
s.score();

创建对象的过程

面向对象浅见

OOP实例:求长方体的体积

定义一个长方体类

public class changfangti {
	public  int  lenght;
	public int width;
	public int	height;
	public changfangxing(int c,int k,int g) {
		lenght=c;
		width=k;
		height=g;
	}
	public void tiji() {
		System.out.println("长方体的体积为:"+lenght*width*height+"cm");
	}
}

主函数调用

changfangti gg=new changfangti(1, 2, 3);
gg.tiji();

构造器的定义

1.创建对象
new 类名();
这里调用的是构造器;
2.构造器
构造对象的过程
定义: 【修饰符】 构造器名称(参数){ 方法体}

//构造器:构造方法
	public  Circle() {
		//构造对象之后,用于初始化这个对象的属性操作
		r=4;
	}

3.使用构造器
new 构造器名字();
执行过程:首先通过类构建一个对象,然后执行方法题完成该对象的属性初始化。
4.缺省构造器
如果类中没有定义构造器,系统会在编译时自动创建一个无参构造器,即缺省构造器:public 类名(){}

但是如果你自己定义了构造器,系统则不会帮你生成缺省构造器。

成员变量

1.变量
变量分为两种,一种是局部变量,另一种是成员变量,也就是全局变量;
成员变量:定义在类中,对象的属性;
局部变量:定义在方法体中的变量。
2.成员变量和局部变量的区别
第一,声明位置不同:成员变量生命在类中,方法体外,局部变量定义在方法体内;
第二,修饰符不同:成员变量前可以用各种修饰符修饰,局部变量只能用参数类型来修饰;
第三,作用范围不同:成员变量可以作用于所有方法,局部变量只能存在于方法体内部;
第四,缺省值不同:成员变量有缺省值,局部变量没有缺省值。

3.成员变量缺省值
整数类型,0
浮点类型,0.0
char类型,空白字符
布尔类型,false

引用类型,null

4.变量重名问题
变量的作用域:一个变量只能在声明它的最小语句组中使用,超出这个语句组就不能使用。

重名规则:
一个类中,所有的成员变量之间,不可以重名。
一个方法中,所有的局部变量之间,不可以重名。
成员变量可以和局部变量(参数)重名,方法内直接使用的是局部变量。
一个方法中,局部变量和参数不能重名。

本文地址:https://blog.csdn.net/qq_43803695/article/details/110825855