目标:面向对象的核心知识
面向对象?
用代码去高度模拟现实世界的事物,从而让软件来解决人类的业务,为人类服务。
面向对象的代码是高度接近人类自然语言。
Java是面向对象的高级编程语言。
面向对象是用类和对象去描述万千事物的。
什么是类?
类是相同事物共同特征的描述。任何事物都是属于一个类的。 人类,学生类。
类只能描述一类事物,并不能描述具体的某个对象。
什么是对象?
对象是真实存在的实例。 实例==对象。
总结: 有了类和对象就可以描述全部的事物。
必须先有类才能有对象。
如何定义类?
修饰符 class 类名{
}
– 1.类名首字母应该大小(满足驼峰模式):StudentName.
– 2.一个Java代码中可以定义多个类。
– 3.只能有一个类用public修饰,而且public修饰的类名必须成为Java的文件名称。
– 4.规范上来说,在实际开发中,建议一个Java代码中只定义一个类。
类中的成分(类中有且仅有5大成分,五大金刚):
修饰符 class 类名{
a.成员变量Field:描述类或者对象的属性信息的。
b.成员方法Method:描述类或者对象的行为的。
c.构造器(构造方法,Constructor): 初始化类的一个对象返回。
d.代码块:还没有学。
e.内部类:还没有学
}
类下只要不是这5大成分代码就报错!
面向对象的三大特征:封装,继承,多态。
封装:
– 思想:合理隐藏,合理暴露。
– 规范:成员变量一般要私有,方法一般要暴露,提供成套的getter+setter方法
来暴露成员变量的取值和赋值。
– 封装的作用:提高安全性,提高代码的组件化思想。
– 封装已经成为Java代码的规范,即使毫无意义,代码还是要按照封装的规范来书写。
构造器:
– 初始化类的一个对象返回。
– 格式:修饰符 类名称(形参列表){
}
– 创建对象:
类名 对象名称 = new 构造器;
– 构造器有两种:有参构造器,无参数构造器。
– 特点:一个类默认自带一个无参数构造器,但是如果我们自己定义了有参数构造器
那么默认的无参数构造器就消失了。
this关键字:
– this代表了当前对象的引用。
– this可以出现在构造器和方法中。
– this出现在构造器中代表构造器正在初始化的对象。
– this出现在方法中,哪个对象调用方法,this就代表哪个对象。
– this可以访问对象的成员变量,区分成员变量是局部的还是对象中的成员变量。
小结:
记住。
public class ClassDemo {
public static void main(String[] args) {
Student zzj = new Student();
zzj.setName("猪刚鬣");
Student swk = new Student("齐天大圣",2000);
System.out.println(swk.getName());
}
}
class Student{
// 成员变量
private String name ;
private int age ;
public Student() {
}
public Student(String name, int age) {
// this出现在构造器中代表构造器正在初始化的对象。
this.name = name; // swk.name = 齐天大圣
this.age = age; // swk.age = 2000
}
public String getName() {
return name; // swk.name
}
public void setName(String name) {
// this出现在方法中,哪个对象调用方法,this就代表哪个对象。
this.name = name; // zzj.name = 猪刚鬣
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}