面向对象
面向对象
1.初识面向对象
**面向对象的本质就是:以类的方式组织代码,以对象的方式(封装)数据 **
2.方法回顾和加深
静态方法不能调用非静态方法
静态方法是和类一同加载的
java 是值传递,不是引用传递
// 值传递
public static void main(String[] args) {
int i = 1;
System.out.println(i);
change(i);
System.out.println(i);
}
public static void change(int i) {
i = 10;
}
3.对象的创建分析
4.面向对象三大特性
4.1封装 : 把代码封装在一起,然后对外提供一个小口
高内聚,低耦合。该露的露,该藏的藏
记住这句话就够了:属性私有,get / set
封装一般是针对属性的,对方法的封装比较少
4.1.1 private 关键字
public class Person {
private String name; // 私有属性
String address; // 公开属性
}
public static void main(String[] args) {
Person person = new Person();
person.address = ""; // 没有报错
person.name // 报错了
}
要想改变对象的属性,需要构建 set / get 方法
为什么要通过 get / set 方法对属性进行更改,而不是直接更改呢?
是因为在设计之初,设置 get / set 是为了可以对属性进行修改时进行校验
public class Person {
private int age;
public int getAge() {
return age;
}
// 对设置属性进行校验
public void setAge(int age) {
if (age > 120 || age < 0) {
System.out.println("年龄输入不合法");
} else {
this.age = age;
}
}
}
4.2继承: 继承爸爸的所有方法
private:
4.2.1 继承只能继承父类的 public 的属性和方法, priviate 的属性和方法是不可以被继承的;但是可以通过 getter/ setter 方法对父类属性进行操作(封装的特点)
protected:

4.3 this 、super 存在的目的是为了解决 继承、作用域中 变量名一样所造成的混乱
Person 类


浙公网安备 33010602011771号