面向对象

面向对象

什么是面向对象?

面向对象是针对于面向过程来讲的,把相关的数据和方法组织成一个整体来看待,从更高层次来进行系统建模,更贴近事物的自然运行模式

类和对象

我们将某一些具有相同特征或者相同动作的事物,将他们的相同特征和动作封装成一个类。
例如:

class people{
	String name;
	double height;
	int age;
	public void watchTV();
	public void playGames();
}

对于上述人类而言name height age是特征;watchTV playGames是动作
这些特征我们称之为属性(成员变量);动作称之为方法(成员函数)

当我们需要一个具体的对象时

People laoWang=new people();

这时我们定义了一个laoWang对象
总结:
类是抽象的概念
对象是具体的某个,真实存在的事物

构造函数

构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
注意:
1、构造函数的函数名与类名保持一致,构造函数不写返回值类型不代表无返回值。
2、构造函数可以带哦用构造函数,一般是参数少的调用参数多的,一定注意不可以递归调用构造函数。

class people{
	String name;
	double height;
	int age;
	public People(){
		People(null;0;0);
	};
	public People(String hisName){
		People(hisName,0,0);	
	};
	public People(hisName,hisHeight,hisAge){
		this.name=hisName;
		this.height=hisHeight;
		this.age=hisAge;
	}
	public void watchTV();
	public void playGames();
}

测试类

class Test{
	public static void main(String[] args){
		People laoWang=new People(laoWang,175,50);
	}
}

注意:this
this是一个指向对象的指针,在构造函数中成员变量前面一般加this,在成员函数中可以不用

getter和setter的创建

先来说一下java对数据的保护
为了保护数据Java中由关键字private表示私有的,为了保证数据的正确性不让用户随意更改或者查看数据,一般我们都会给成员变量前面加private,表示这个数据是私有的,类外无法访问。
同时因为加了private之后类外无法访问成员变量,但是真的需要查看或者修改数据时,我们使用getter和setter方法,getter是读取成员变量,setter是修改成员变量
命名格式为:成员变量是age

public int getAge(){
	return age;
}
public void setAge(int hisAge){
	this.age=hisAge;
}

注意:我们并不是对每个成员变量都要设置getter和setter,这种命名方式是一种规范,并不一定必须这样命名,如果使用其他名字编译和运行都没问题,但是大家都这样用是一种命名规范,这使你的代码更加规范。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值