一,面向对象的三大特征
封装、继承、多态。
二.类和对象
1、如何用java语言描述现实世界的事物呢?
举例:人
五官,姓名,年龄,性别....
吃饭,学习,说话....
水杯:
颜色,材质,形状,容积...
装水,泡茶...
属性:用于描述事物的信息
行为:用来描述事物能够做什么的
我们学习编程语言,目的其实用来描述现实世界的事物
而我们现在所学的语言:java
现在就要开始学习如何用java来描述一个现实世界的事物
首先,我们知道java的最基本的单位是:类
所以我们应该通过java中的类去描述现实世界的事物
按照我们分析现实事物的角度出发得到一个与java中类的对应关系
现实事物: 类:
属性:用于描述事物的信息 成员变量:用于描述事物的信息
行为:用来描述事物能够做什么的 成员方法:用来描述事物能够做什么的
类:是一组成员变量和成员方法的集合,可以把类看作一个抽象的概念
对象:是该类的具体的表现,具体到一个个体
举例:
事物:人
属性:姓名,性别,年龄...
行为:吃饭,睡觉,学习...
类:Person
成员变量:name,gender,age
成员方法:eat(),sleep(),study()
对象:是该类的具体的表现,具体到一个个体
学生,老师,医生,律师,程序员
2.如何定义一个成员变量和一个成员方法。
如何定义一个成员变量? 1、定义的位置:在类中,方法外 2、定义的格式: 数据类型 变量名;
如何定义一个成员方法? 1、定义的位置:在类中 2、定义的格式: 修饰符 返回值类型 方法名(参数列表){ 方法体; }
/*
定义一个学生类,完成类的成员(成员变量和成员方法)
在一个java文件可以定义多个类,我们这里,就先定义基本的类,和测试类
将来编译的时候,JVM会读取java文件,有多少个class类,就编译生成多少个.class文件
注意事项:一个java文件中只能有一个类被public修饰
只需要记住被public修饰的类规范是要与java文件名一致
如何在测试类中使用学生类呢?
创建该类的对象去使用
如何创建对象呢?创建对象的格式是什么呢?
类名 对象名称 = new 类名(..);
*/
//这是一个学生类,类是java最基本的单位
public class Student {
//成员变量
//姓名
String name;
//性别
String gender;
//年龄
int age;
//定义成员方法
//学习
public void study(){
System.out.println("我热爱学习大数据");
}
//吃饭
public void eat(){
System.out.println("学习饿了,吃会东西");
}
//睡觉
public void sleep(){
System.out.println("学习类,睡一会觉");
}
}
class StudentTest{
public static void main(String[] args) {
// System.out.println("HelloWorld");
//如果不创建对象能不能使用呢?(指的是能否访问到成员变量或者成员方法)
// System.out.println(name);
//创建一个学生对象才能使用
Student s1 = new Student();
//这样我们就创建出一个学生对象s1
//如何通过对象访问成员变量呢?
//访问格式:对象名.成员变量名
//访问s1对象的姓名是什么
// s1.name; //访问到的变量值不能直接使用,应该用一个变量接收或者直接使用输出
System.out.println(s1.name); //null
System.out.println(s1.gender); //null
System.out.println(s1.age); //0
//如何给成员变量赋值
s1.name = "王宇";
s1.gender = "男";
// s1.age = "明旺 "; //注意,赋值的时候,注意数据类型
s1.age = 18;
System.out.println(s1.name);
System.out.println(s1.gender);
System.out.println(s1.age);
//如何去调用成员方法呢?
//调用格式:对象名.成员方法名(...);
s1.study();
s1.eat();
s1.sleep();
}
}