目录
理解什么是面向对象和面向过程
首先在学习类和对象之前,我们得先明白两个内容:面向对象、面向过程。
通过字面意思理解大概可以猜到,一个是对象一个是过程,我用一个简单的例子来说明,比如我们要洗衣服,很简单有两种办法,一个是机洗一个是手洗,把这两种办法可以和面向对象和面向过程结合起来。
面向过程:
面向对象:
四个对象相互合作:机洗:人、衣服、洗衣粉、洗衣机
通过这个例子我们可以很形象的理解这两点,面向过程它注重完成某个事物的过程,而面向对象它注重结果和至于怎么实现,它不在乎。所以我们都知道Java是一门面向对象程序设计的语言,而我们最初接触学习的C语言是一门面向过程,偏底层的编程语言。但是我们都知道C生万物,C语言还是相当重要。
类和对象
理解了什么事面向对象和面向过程,下来我们在学习什么是类和对象,我们先学什么是类,因为对象是实例化一个类产生的。
类
类呢还有抽象类,这个先不讲,我们讲的是普通类,可以简单理解一个模板,就是对一个实际事物的描述,就像我们所说的模型,既然是这样它肯定有自身的属性,在比如一个人的模型或者是描述,它就会有姓名、性别、年龄等等一些属性,类里我们可以通过成员变量来定义属性,它也会有各种行为,我们可以通过成员方法来实现这就是类。
创建一个类
class ClassName{
field; // 字段(属性)或者成员变量
method; // 行为或者成员方法
}
举个列子:创建一个person类
package poke;
public class person {
public String name;
public int age;
public String sex;
public void eat() {
System.out.print("吃饭 ");
}
public void sleep() {
System.out.print("睡觉 ");
}
public void play() {
System.out.print("打豆豆 ");
}
public void show() {
System.out.print(name + age + sex + "正在 ");
}
}
创建一个person类:
public String name; public int age; public String sex;
这是成员属性姓名、年龄、性别。
public void eat() { System.out.print("吃饭 "); } public void sleep() { System.out.print("睡觉 "); } public void play() { System.out.print("打豆豆 "); } public void show() { System.out.print(name + age + sex + "正在 "); }
成员方法eat()、sleep()、show()。
类的实例化
之前我们说了类的实例化就创建了一个对象,类不能直接使用。
我们在同包中再建一个java文件利用在main方法中使用关键字“new",创建一个对象
person person = new person();
此时的对象还没有被实例化,我们可以通过" . "来访问person类中的成员属性和方法并赋值实例化。
package poke;
public class Text {
public static void main(String[] args) {
person person = new person();
person.name = "张三 ";
person.age = 18;
person.sex = " 男 ";
person.show();
person.play();
}
}
运行结果如下图:
同理我们还可以在new一个对象:
package poke;
public class Text {
public static void main(String[] args) {
person person = new person();
person.name = "张三 ";
person.age = 18;
person.sex = " 男 ";
person.show();
person.play();
System.out.println("");
person person2 = new person();
person.name = "李四 ";
person.age = 18;
person.sex = " 女 ";
person.show();
person.eat();
}
}
所以在java中一个类可以创建多个对象
注意事项:
-
创建类时,类名的书写要尽量使用英语并且用大驼峰方法表达,如:MyClas就是每个单词的首字母大写。
- 一个文件里面一般只有一类。
- 使用main方法时所在类一般用public修饰。
- 类要与对应文件同名,负责会报错。
- 不能随意修改增删public,它涉及访问权限,使用错误会导致可能访问不了类中的属性及方法。