Java基础
面向对象
-
做一份水煮鱼;
- 面向过程:买鱼,调料,切鱼煮鱼,装盘,开吃
- 面向对象:人去饭店,点一份水煮鱼
面向过程是模型化的,把类想象成盒子,里面装有你需要的东西,需要什么就直接拿;
-
面向过程的优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护。
类
- 类就是对现实事物的抽象,主要用于描述现实中具体存在的事物,是对事物的抽象。
- 因为事物的特点是无限的,所以在抽象的过程中只会抽象项目中使用的特点。
- 为了是我们抽象的过程简单,程序把类的抽象分为属性和行为。
- 属性(定义在类中的变量):用于描述事物的基本特性。学生:年龄,身高,体重。
- 行为(定义在类中的方法):用于描述事物的具体功能,是动态过程。学生:学习、玩游戏。
- 定义的类(模板)中只能有属性和行为,不能有其他东西。
对象
-
类是对事物的抽象,是一个模板,不能表现具体事物。对象是类的实例化,用于描述具体的事物。例
学生:类 对象所有的抽象; 对象:张三、李四、王五。
-
创建对象:类名 对象名(引用数据类型) = new 类名();
-
对象的访问: 对象名.属性 访问属性
对象名.行为(方法) 调用类中的方法(行为)
构造方法
- 构造方法的名称和类名完全相同;
- 没有返回值,包括void也不能写;
构造方法的作用
- 用于创建对象,如果没有构造方法,则无法创建对象。
- 在创建对象是调用,用于初始化属性。
注意:因为构造方法是必须存在的,如果没有主动声明构造方法时,系统会默认添加一个无参空方法体的构造方法。
方法的重载
- Java语言支持重载,允许一个类中定义名称相同但参数列表不同的方法。
- 参数重载的两种可能性:
- 数量重载:根据方法传入的参数的参数个数不同进行重载。
- 类型重载:根据方法传入的参数的参数类型不同进行重载。
注意:构造方法与普通方法都支持重载。
静态修饰符(static)
-
修饰属性:
- 被static关键词修饰的属性称为静态属性,在JVM加载类对象时在静态常量区分配空间。
- 因为静态变量被所有对象共享,静态变量访问通过 类名.静态属性。
-
修饰方法:
-
被修饰的称为静态方法,在JVM加载类对象时分配空间。
-
因为静态方法被所有对象共享,静态方法访问通过 类名.方法名()。
-
-
修饰代码块
- 被static修饰的代码块称之为静态代码块,静态代码块在JVM加载类时执行。
类是对事物的抽象,是一个模板,不能表现具体事物。对象是对类的实例化,用于描述具体的事物。例如学生 类:所有的描述;对象:张三、李四、王五;
创建对象:类名 对象名(引用数据类型) = new 类名();
对象的访问:对象名.属性 ; 访问属性