面向对象的引入
引言:对于面向过程和面向对象的官方解释不想鳌述,我们要知道面向对象是一种编程思想,这里我们的侧重点应该是“思想”,对于初学者来说不会有很深的感受,所以我们在刚接触面向对象的时候不必太担心,因为这种思想是通过对具体实例分析中慢慢养成的。面向对象是一个量变引起质变的产物,就是说我们在使用面向过程编程发现有些宏观的问题解决不了,或者操作起来非常繁琐,所以我们把问题分类思考。比如我们在考驾照的时候都知道车怎么开,但是没有思考汽车是怎么造出来的,所以我们知道怎么开车也解决不了汽车的生产。
1、类与实例
问题一:什么是类?
类就是一类东西,比如电脑是一类东西,台式机、笔记本、平板也是一类东西
问题二:什么是实例?
实例是明确告诉你是哪一类东西的哪一个,比如张三的平板电脑就是一个实例
问题三:什么是对象?
记住一句话“一切皆对象”,一个类可以是一个对象,一个事例可以是一个对象,一个变量也可以是一个对象。对象中保存一些数据,通过对象可以操作这些数据(注意:个人理解不是因为有对象才有数据,是因为有数据我们才引入对象)
问题四:对象有什么特征?
1)对象有方法,我们把一个人定义为一个对象,那么这个对象可以吃,睡,学习。吃,睡,学习就是这个对象具有的方法
2)对象有属性,一个人拥有姓名,性别,年龄,这些就是对象的属性
2、类的定义
我们就以上述的人作为类我们称为人类
//--定义一个Person类
public class Person{
}
类有具有属性和方法,所以我们往person类里面塞入属性和方法
public class Person{
//--定义属性(人具有的属性有哪些:姓名,性别,年龄)
String Name;
String Gender;
int Age;
//--定义方法(人具有的方法有哪些:吃,睡,学习)
void eat(){
System.out.println("我是人,我得吃饭!!!");
}
void sleep(){
System.out.println("我是人,是需要睡觉的!!!");
}
void study(){
System.out.println("我是人,我得学习,不然会被社会淘汰的!!!");
}
}
3、类的实例化
我们光有人类也不行,体现不了每个人也就是每个个体的独特性,大家想象一下如果世界上人都一模一样,是不是还挺恐怖的,所以我们要给每个人注入灵魂,捏脸
public class Person{
//--定义属性(人具有的属性有哪些:姓名,性别,年龄)
String Name;
String Gender;
int Age;
//--定义方法(人具有的方法有哪些:吃,睡,学习)
void eat(){
System.out.println("我是人,我得吃饭!!!");
}
void sleep(){
System.out.println("我是人,是需要睡觉的!!!");
}
void study(){
System.out.println("我是人,我得学习,不然会被社会淘汰的!!!");
}
//--类的实例化
public static void main(String[] args) {
//--创建对象
Person person = new Person();
//--每个人的属性是不一样的,所以我们人的属性赋值
person.Name = "张三";
person.Gender = "男";
person.Age = 18;
//--通过对象调用方法,来让这个人动起来
person.eat();
person.sleep();
person.study();
}
}
这样我们的人类中的一个实例就创建完成了,开启新的人生
我是人,我得吃饭!!!
我是人,是需要睡觉的!!!
我是人,我得学习,不然会被社会淘汰的!!!