类和对象的创建
面向对象
面向对象的定义
就是强调对象,比如说我们要做一个大型的项目,但是呢,做这个项目需要划分为
几个功能块(方法)
,这个几个功能块组合在一起就形成了这个项目,但是,我们换了一种思想,我们找一个对象,该对象具备这几个功能,
那我们只需要重点关注这个一个对象就可以了,面向对象
面向过程的定义
就是强调过程,比如说我们要做一个大型的项目,但是呢,做这个项目需要划分为几个功能块(方法),这个几个功能块组合在一起就形成了这个项目,
我们重点关注的就是这几个方法,
因为这几个方法如果都做好,那项目自然也就完成了,那也就说我们重点强调的就是每一个方法,每一个过程,面向方法,面向过程。
面向过程和面向对象有什么关系
面向对象是基于面向过程的,是建立在面向过程基础之上的
面向对象的好处是什么
1.它是一种更符合我们人类思想习惯的思想
2.它可以将复杂的事情简单化
3.它可以将我们程序员从执行者变成指挥者
举例子:
旅游:
面向过程:
自己买各种旅游装备,自己查找攻略,自己准备食物,自己准备交通工具,什么事都要自己去做
面向对象:
找一家旅游公司,就完事,指挥旅游公司办事就可以了
找对象:
面向过程:
如果没有对象的话,我们生活很累,碗自己刷,衣服自己洗,什么活都要自己干
面向对象:
如果我们有对象的话,我们什么都不干了,只要指挥对象做事情就可以了
类和对象的创建
类的定义
类是事物的属性(外在特征)和行为(具备的功能)的集合
想要知道Java中类是什么,我们要先知道现实生活中的类是什么,因为Java源于现实生活
---------------现实生活中的"类"到底什么意思呢?------------------------------------
很多相似事物的综合,许多相似或者相同事物的综合
比如说人"类",为什么我们人类呢,因为我们什么都相似,我们都有共同的外在特征,比如都有耳朵鼻子嘴巴等,都有姓名,年龄等等。我们都有相似相同的功能,比如都有吃喝拉撒睡,所以说把我们围在一起,就称为人类。
对象的定义
对象是类的具体的体现
如果拿人"类"为例的话,那对象就是类中具体的你,我,他
怎么写一个类
类的定义
定义类要用关键字class
类的格式
class 类名 {
类的属性;
类的行为;
}
类的方法
步骤:
1.知道你要写的类是什么,从现实生活中去寻找
2.该类事物中有哪些属性(外在特征/成员变量)
3.该类事物中有哪些行为(成员方法)
举例子:
需求:定义一个人类
1.我们找描述的人类
2.属性:姓名,年龄,性别,血型,星座
3.动作:吃,喝,拉,撒,睡
class Person {
//类的属性
String name;
int age;
String sex;
String xuexing;
String xingzuo.
//类的行为;
public void eat() {
System.out.println("吃");
}
public void drink() {
System.out.println("喝");
}
public void la() {
System.out.println("拉");
}
public void sa() {
System.out.println("撒");
}
public void sleep() {
System.out.println("睡");
}
}
怎么创建一个对象
创建对象的格式
创建对象的格式
类名 对象名 = new 类名()
;
Person p = new Person();
怎么使用对象
对象名.属性名 = 属性值;
p.name = “tom”;
p.age = 18;
p.sex = “女银”;
p.xingzuo = “处女座”;
p.xuexing = “AB型”
package day07;
//测试类:里面提供主方法
public class demo04 {
//程序执行的入口,是主方法
public static void main(String[] args) {
//创建一个小人
Person p1=new Person();
//给这个人的属性
p1.name="zhangsan";
p1.age=20;
p1.sexs="male";
p1.xuexing="B";
p1.xingzuo="taurus";
//给这个人的行为
p1.eat();
p1.drink();
p1.sleep();
//创建一个猪
Pig p2=new Pig();
//给这个猪的属性
p2.name="wangwu";
p2.sex="male";
p2.color="yellow";
//给这个猪的行为
p2.eat();
p2.sleep();
p2.gong();
}
}
//人类
class Person{
//属性:外在特征,成员变量
String name;//姓名
int age;//年龄
String sexs;//性别
String xingzuo;//星座
String xuexing;//血型
//行为:具备的功能,成员方法
public void eat(){
System.out.println("eat");
}
public void drink(){
System.out.println("drink");
}
public void sleep(){
System.out.println("sleep");
}
}
//猪类
class Pig{
//属性
String name;
String sex;
String color;
//行为
public void eat(){
System.out.println("pig eat");
}
public void sleep(){
System.out.println("pig sleep");
}
public void gong(){
System.out.println("pig gong");
}
}