初识面向对象(oop)
Java的核心思想就是面向对象编程
面向对象与面向过程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Stl3UVIJ-1690638983977)(C:\Users\polaris\Desktop\桌面\图片\Java学习图片\7.27\01.png)]
面向对象编程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qXB62vbR-1690638983978)(C:\Users\polaris\Desktop\桌面\图片\Java学习图片\7.27\02.png)]
三大特性
封装、继承、多态
本质
以类的方式组织代码,以对象的方式组织(封装)数据
方法的调用
静态方法
有static即为静态方法,可直接调用 类名+方法名
和类一起加载的
非静态方法
无static即为非静态方法,要对其进行实例化,即new
实例化之后才存在
类与对象的创建
类与对象的关系
创建与初始化对象
-
使用new关键字创建对象
-
使用new关键字创建时,出了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用。
-
类中的构造器也称为构造方法,实在进行创建对象时必须要调用的,并且构造器有以下两个特点
必须和类的名字相同
必须没有返回值,也不能写void
规范
一个项目应该只存在一个main方法
代码演示
package oop.demo02;
//学生类
public class Student {
//属性:字段
String name ;
int age ;
//方法
public void study(){
System.out.println(this.name + "在学习"); //this指代当前类
}
}
在上面类中创建方法
在下面类中运行应用
package oop.demo02;
//一个项目应该只存在一个main方法
public class Application {
public static void main(String[] args) {
//类是抽象的,需要实例化
//类实例化之后会返回一个自己的对象!
//student对象就是一个Student类的具体实例
Student student = new Student();
Student xiaoming = new Student();
Student xiaohong = new Student();
System.out.println(xiaoming.name); //输出null,此时为初始默认值
System.out.println(xiaoming.age); //输出0,此时为初始默认值
//赋值
xiaoming.name ="小明";
xiaoming.age = 17;
System.out.println(xiaoming.name); //输出小明
System.out.println(xiaoming.age); //输出17
}
}
以类的方式组织代码,以对象的方式组织(封装)数据