目录
一、面向对象编程的概念
1-1 介绍类与对象
类与对象的定义
类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。
对象是具有类类型的变量。类和对象是面向对象编程技术中的最基本的概念。 [1]
类与对象的关系
类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。
类型的声明
先声明类类型,然后再定义对象
类的定义对象
类其实就是一个模板,比如说类就好比一张房子的设计图纸,或者说是一个倒印模具,创建一个类就好比设计一张图纸,刻一个模板。对象就好比一座建好的房子,一个成型的模型,无疑想要一座房子或者一个模型都先需要一张图纸和一个模板,而这就是类和对象的关系。
1-2 创建类与对象
对象是根据类创建的。在Java中,使用关键字 new 来创建一个新的对象。创建对象需要以下三步:
声明:声明一个对象,包括对象名称和对象类型。
实例化:使用关键字 new 来创建一个对象。
初始化:使用 new 创建对象时,会调用构造方法初始化对象。
对象由类的构造方法,实例化而来
例如:有一个类Student,那么对象的实例过程:
public class Student{
String name;
public static void main(String [] args){
Student stu = new Student();//此处即创建了一个对象
}
}
1-3 成员变量
成员变量是指类的一些属性定义,标志类的静态特征,它的基本格式如下:
【访问修饰符】【修饰符】【类型】【属性名称】= 【初始值】
访问修饰符:public(公共的);protected(受保护的);无修饰符和private(私有的)。
修饰符:对属性特征的描述:如static,final 等等。
类型:属性的数据类型,可以是任意类型。
属性名称:任何合法标识符。
初始值:赋值给属性的初始值。
举例:
public static int index = 0;
很多时候我们不希望成员变量使用默认值, 而是需要我们显式设定初值. 那么此时有五种方法供我们成员变量初始化:
1:默认初始化,即程序所赋予的默认值,上面已经讲过,此处不再过多陈述。
2:就地初始化:即在定义成员变量时便进行初始化,如下所示:
public String name = "张三";
public int age = 18;
3:类外初始化,即通过对象的引用进行初始化,这种方法一般用的最多,下面来看下实现过程:(注意私有的可通过setXX和getXX方法实现)
public static void main(String[] args) {
Person person = new Person();
person.name = "张三";
person.age = 14;
}
4:通过实例代码块和静态代码块进行初始化:这个在后面我们会专门讲到,在这里只需要知道这两个代码块的作用一般是提前初始化一些数据.
package Jiating;
public class Dog {
String name; int age;
float weight;
public static void main(String[] args){
Dog duoduo=new Dog();
duoduo.name="多多";
duoduo.age = 6;
duoduo.weight =13.5f;
Dog lucky=new Dog();
lucky.name = "Lucky";
lucky.age =3;
lucky.weight =10.2f;
System.out.println(duoduo.name + "今天" + duoduo.age +"岁了");
System.out.println(lucky.name + "体重" + duoduo.weight +"千克");
}
}
1-4 成员方法
成员方法就是对象所具有的动态功能。基本格式如下:
【访问修饰符】【修饰符】【返回值类型】【方法名称】【参数】【异常】【方法体】
访问修饰符:public(公共的);protected(受保护的);无修饰符和private(私有的)。
修饰符:对属性特征的描述:如static,final,abstract 等等。
返回值类型:方法返回数据的类型。
方法名称:任何合法标识符。
参数:可以有多个,使用逗号分隔。
异常:关键字:throws 【具体异常】
方法体:该方法具体实现功能的地方。
package IFather;
public class MethodSample01 {
public String isOddNumber(i