面向对象和面向过程

类和对象是面向对象的产物,如果java这门语言没有面向对象的特点,就没有类(Class)和对象(Object)。

面向过程和面向对象是程序设计的思维方式。 面向对象从面向过程这种思维衍生而来。

面向对象
把要解决的问题,分解成组成部分,每个部分就是解决问题的组件,每个组件用类(Class)表示,而函数是包含在类中。面向对象在解决复杂问题的时候,相比较跟符合人的思维方式,,但是理解起来比较抽象。
面向对象考察人的抽象思维。
在Java中,万物皆对象,用Class来描述对象,类是对象的抽象描述。对象是由属性(静态特征)和行为(动态特征)组成。对象的名称用类名表示,java中用成员变量来表示类的属性。

 现在写的类不是静态(static),用面向对象的方法。
 类名首字母大写。

面向过程
把要解决的问题,分解成若干步骤,每个步骤用函数表示,然后再main中做函数的依次调用。(理解:面向过程的编写最小单位是函数)典型的语言是C语言。

面向过程和面向对象的区别
面向对象着眼于全局,面向过程着眼于局部。

一个java文件可以有多个类,但是只有一个类是public,并且这个public的类和文件名称相同,而且main方法要且在public类中才能调用
This.hero=”寒冰”//当前对象的引用this.变量表示调用成员变量,也可以不用this,直接 hero=“寒冰”
变量在赋值的时候遵循就近原则,局部变量近就用局部变量,这个时候就可以用this了

/**
	 * 键盘控制移动
	 */
	String drive;
	/**
	 * 移动行为
	 */
	public void move(char a) {
		switch (a) {
		case 'w':
			this.drive="up";
			break;
		case 's':
			this.drive="down";
			break;
		case 'a':
			this.drive="lefe";
			break;
		case 'd':
			this.drive="right";
			break;
		default:
			break;
		}
		System.out.println("我是"+h.name+"我正在向"+this.drive+"方向走");
	}
H.name为什么不行?

错误!:

hero h= new hero();//实例化
		h.name = "寒冰射手";
		h.sex = '女';
		h.country="艾欧尼亚?";
		h.weapon="弓箭";
		h.bloodstain=1000;
		move('w');

//这句是错误的,它的意思是调用本类里的move函数,事实上,在本类(main类)里并没有move函数,所以没用!
所以这是调用本类方法。
调用其他类,就要加上“h.”表示调用hero类里的move方法。
这样才有效。
错误!:
Class hero(){
}//这不是定义一个类!
正确方法:

 class hero{
}

如下:
编写一个类:

class hero{
	/**
	 * 名字
	 */
	String name;
	/**
	 * 性别
	 */
	char sex;
	/**
	 * 国家
	 */
	String country;
	/**
	 * 生命值
	 */
	double bloodstain;
	/**
	 * 武器
	 */
	String weapon;
	/**
	 * 
	 */
	/**
	 * 键盘控制移动
	 */
	String drive;
	/**
	 * 移动行为
	 */
	public void move(char a) {
		switch (a) {
		case 'w':
			this.drive="up";
			break;
		case 's':
			this.drive="down";
			break;
		case 'a':
			this.drive="lefe";
			break;
		case 'd':
			this.drive="right";
			break;
		default:
			break;
		}
		System.out.println("我是"+this.name+"我正在向"+this.drive+"方向走,快来辅助我");
	}
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值