面向对象:
面向对象的三大特征:封装、继承、多态。
面向对象思想就是在计算机程序设计中,参照现实事务,将事务的属性特征、行为特征抽象出来,描述成计算机事件的设计思想。他区别于面向过程思想,强调的是调用对象的行为来实现功能。
1. 类与对象:
(1). 成员方法的调用与内存变化:![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/133dca793538a06bdfa2b569b04ffffb.png)
(2). 对象的调用(对象作为参数)与内存变化:
(3). 使用对象类型作为方法的返回值:
(4)局部变量、成员变量:
2. 封装
1.概述:面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改。 封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问。要访问该类的数据,必须通过指定的 方式。适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。
2. 原则:将属性隐藏起来,若需要访问某个属性,提供公共方法对其访问。
(1) 两个关键字private和this:![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/763f00bc222dbfb23f2dde124b16303f.png)
(2) 构造方法:![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/bb54e3df6916ea84e3c9c91dbc069cff.png)
(3)一个标准的类(Java Bean):![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/bbcfcafc6fe5f9bb50cb2e2943ee3aaa.png)
例子:
public class Student
{
//成员变量
private String name;
private int age;
private boolean male;
//构造方法
public Student() {}
public Student(String name,int age,boolean male) {
this.name = name;
this.age = age;
this,male = true;
}
//成员方法
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setMale(boolean male) {
this.male = male;
}
public boolean isMale() {
return male;
}
}