类和对象
首先强调,这个对象和生活中的对象有密不可分的关系,你对象也是这样对象,这对象却不止你对象。
1. 了解面向过程和面向对象的思想
面向过程:面向方法、面向函数、结构化方法。
代码是有顺序的,需要什么功能就编写什么功能。
它是基于面向过程产生的一种更复杂的编程思想/编程方式。从现实世界抽象而来的!它的代码执行顺序不固定。
Java是不完全的面向对象、Python面向对象 、C#面向对象 、C++面向对象 、PHP也是面向对象的编程语言。
2. 理解类和对象的关系
生活中的对象
万物皆对象:你身边的任何一个物体/实体都可以称之为对象。
我们在描述生活中的一个个对象时通常都会采用特征+行为的方式。
特征:属性
行为:操作、方法
对象的概念:用来描述客观事物的一个实体,由一组属性和方法构成。
生活中的类
我们在看到一群对象/实体时,会下意识进行分类(人类认识事物的必然过程)。“物以类聚、人以群分”
学生(类别)、人类、哺乳类、爬行类、猫类、灵长类、啮齿类…
类(类别):它是一个抽象的概念,它是从一群对象中抽取共性的特征和行为产生的一个概念。没有办法具体拿某个对象来表示某个类别,因为对象只是类的一个个体。
生活中类和对象的关系:类是一个模板,对象是类的一个个体,是根据类这个模板而产生的个体。
程序中的类和对象
Java 是一个"不完全"的面向对象的编程语言。(因为有基本数据类型存在)
它以类(引用数据类型)为基本单位,被class修饰的。
基本数据类型:byte short int long float double char boolean
引用数据类型:数组、类(String就是一个类)、接口、枚举…
程序中的类和对象都是从生活中抽象而成的,你在现实中如何描述它们,程序中也是。
3. 掌握类创建的方式
public class 类名{
// 1.此类的相关属性(成员变量/字段)
// 2.此类的相关方法(成员方法/函数)
}
了解了以后我就来举个例子:
定义学生类
public class Student {
一组属性(成员变量)
学生姓名
public String stuName;
学生编号
public int stuNo;
学生班级
public int classId;
学生专业
public String major;
学生性别
public char gender;
学生年龄
public int age;
学生成绩
public double score;
// 一组方法(成员方法)
// public static void main(String[] args){}
学习方法
public void study() {
System.out.println(major+"专业的"+classId+"班级的"+stuName+"正在好好学习!");
}
自我介绍
public void showMyself() {
System.out.println("姓名:"+stuName);
System.out.println("班级:"+classId);
System.out.println("专业:"+major);
System.out.println("性别:"+gender);
System.out.println("年龄:"+age);
System.out.println("成绩:"+score);
System.out.println("学号:"+stuNo);
}
}
4. 掌握对象创建的方式
语法:类名 对象名 = new 类名();
Student zhangsan = new Student(); // 基于Student模板创建了一个个体/对象
调用属性
对象名.属性名 = xxx; // 赋值
对象名.属性名
调用方法:
对象名.方法名();
5. 掌握基本方法创建
面向过程/方法/函数,结构化方法
方法:是功能,是一系列代码的聚合,也可以理解为一个魔术箱。
基本语法:
访问修饰符 返回值类型 方法名(参数列表){ // 方法声明
// 方法体
}
// Arrays.toString(参数); 将数组转换为字符串
public void(表示没有返回值) showMyself(){
syso();
}
功能代码的存储空间,以后使用可以复用。