wangc
Jan 24, 2020
java—面向对象基础
1.面向对象思想
- 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每个细节。
- 面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的类,来帮我做事儿。
2. 类和对象
- 类是对一类事物的描述,是抽象的。
- 对象是一类事物的实例,是具体的。
- 类是对象的模板,对象是类的实体。
- 成员变量:对应事物的属性;成员方法:对应事物的行为
3. 封装性
- private:间接访问private成员变量,就是定义一对儿Getter/Setter方法
- this:即谁在调用,this就代表谁。
- 构造方法:当一个对象被创建时候,构造方法用来初始化该对象,给对象的成员变量赋初始值。
4. 标准的类
一个标准的类通常要拥有下面四个组成部分:
- 所有的成员变量都要使用private关键字修饰
- 为每一个成员变量编写一对儿Getter/Setter方法
- 编写一个无参数的构造方法
- 编写一个全参数的构造方法 这样标准的类也叫做Java Bean
5. 代码实例
类的创建
public class Student {
//**************成员变量***************
private String name;
private int age;
private boolean male;
//**************成员方法***************
public void study() {
System.out.println("学习中...");
}
public void sayHello(String name) {
// this
System.out.println(name + ",你好!我是" + this.name);
}
// 构造方法,创建对象时使用的方法,注意格式
// 可以再创建对象时执行操作
public Student() {
System.out.println("无参构造方法已执行");
}
public Student(String name, int age) {
System.out.println("含参构造方法已执行");
this.name = name;
this.age = age;
}
// 通过定义setter/getter方法,间接访问成员变量
// 防止不合理的数据被随意访问
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;
}
//bool类型变量用isxxx
public boolean isMale() {
return male;
}
}
类的使用
public class StudentUse {
public static void main(String[] args) {
Student stu = new Student("小光", 13);
stu.sayHello("小王");
stu.setAge(23);
System.out.println("我现在" + stu.getAge() + "岁了。");
}
}