一、面向对象概述
1、面向对象编程包括:
OOA:面向对象分析
OOD:面向对象的设计
OOP:面向对象的编程实现
2、面向对象思想说明
OOA:通常是把构成问题的实物分解成各个对象,给对象赋予一定的属性和行为,通过多个对象互相协调来解决问题。
OOD:这些行为对象没有先后顺序,共同作用才构成了整个系统。我们只要用代码设计出这几个类型的对象,然后让他们互相通信,传递消息就可以完成系统功能。
OOP:编写代码。
面向对象编程思想实际上就是一种运用对象,类,继承,封装,聚合,关联,消息,多态性等概念来构造系统的软件开发方法。
3、面向对象编程思想:
系统以对象为中心来组织
对象相互发送信息
相关的属性和行为被同意到对象上
关注的焦点是对象以及对象的职责
是的系统构建更容易,易维护,易扩展,易复用
解决问题的方式更接近人的思维方式,使人容易理解
二、类的定义
1、什么是类:
把相似的对象划归到一个类
在软件设计之中,类就是一个模板,它定义了通用语一个特定种类的所有对象的属性(变量)和行为(方法)。
2、类的格式:
[类修饰符] class 类名 {
类的成员
...
}
类的成员:
成员变量(属性):属性有默认值所以不用赋值就可以使用
成员方法(方法)
嵌套类
代码块
例如:
public class Demo{
public int a;//成员变量(属性)
public void show(){
成员方法(方法)
}
public Inner{
}
{
System.out.println();
}
}
3、属性和局部变量:
局部变量:方法中的声明的变量,方法中的参数或代码块中声明的变量,都是局部变量,局部变量必须先声明,才能使用
属性:属性可以和局部变量同名,使用this关键字进行区分,属性在整个类中生效,无论在什么地方声明
三、类和对象的关系
1、类是创建对象的模板,对象是类的实例
2、对象的创建:
1)、类是对某一类事物的描述
2)、对象是实际存在的某类事物的个体,也称为实例
3)、创建语法语句:
类名 对象名=new 类名();
Employee tao=new Employee();
3、对象的使用
在其他类中,使用对象名点运算符调用属性和方法
引用类的属性:对象名。属性
引用类的方法:对象名。方法名(实参)
在类内的方法中,访问属性和方法可以直接访问
4、创建对象的原理
1)、编写一个类:编写的类不会占用内存
2)、在主函数中创建对象
3)、运行有主函数的类
只有主函数的类才可以运行
无论有多少个类,只有主函数中才会创建对象,才会占用内存;
5、创建匿名对象:
创建完对象,在调用该对象的属性或者方法时,也可以不定义该对象的句柄,而是直接调用这个对象的方法。这样的对象叫做匿名对象。
Int a=new Employee().age;
6、垃圾回收机制:
当没有对象引用指向原先分配给某个对象的内存时,该对象便成为垃圾。JVM的一个系统级线程会自动释放该内存块。
四、对象的使用
1、构造方法(构造器)
构造方法也是方法,但他是特殊的方法,所有的对象都是通过构造器来构造
2、创建对象
类名 对象名=new 构造方法();
3、构造器(构造方法)特点:
构造方法名必须与类相同的名称
不含返回值类型,也没有void
不能在方法中用return语句
例如:
public class Employee{
public Employee(){
}
public class Test{
public static void main(String[]args){
employee emp=new Employee();
}
}
4、构造方法的使用
构造方法用来完成对象的创建,即完成对象的实例化
一个类可以不写出构造方法,编译器会自动的给这个类增加一个没有任何参数的构造器,称为“默认的空构造器”,当编程者为该类定义了构造器,系统就不再提供默认的构造器
5、构造方法的重载
构造方法可以像普通方法一样重载,通常一个类中不止一个构造方法,而是有多个不同参数的构造器,用户可以根据需要选择不同的构造器创建对象
网友评论