package com.alibaba.demo01;
/**
* 模拟现实世界的学生(一个一个具体的个体,看得见摸得着)
* 设计了一个学生类(作为模板)
*
* 学生的信息:
* 静态信息(属性):姓名,性别,年龄....
* 动态信息 (行为):吃饭,睡觉,打游戏,抵制学习...
*/
public class Student {
//属性
private String name;//姓名
private Student deskmate;//同桌
private String sex;//性别
private int age;//年龄
//方法
public void eat(){
System.out.println(name+"开始吃饭");
System.out.println(name+"吃饭");
drink();
System.out.println(name+"吃饭");
System.out.println(name+"吃完了");
}
public void drink(){
System.out.println(name+"喝果汁");
}
public void say(){
System.out.println("我叫"+this.name+",我的同桌"+this.deskmate.name);
}
//构造器(构造器方法名和类名一样)
public Student() {
//构造器,创建对象,{}方法体用来做对象的初始化工作
System.out.println("Student类无参构造器");
}
public Student(String name, Student deskmate, String sex, int age) {
this.name = name;
this.deskmate = deskmate;
this.sex = sex;
this.age = age;
}
//get和set方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Student getDeskmate() {
return deskmate;
}
public void setDeskmate(Student deskmate) {
this.deskmate = deskmate;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
package com.alibaba.demo01;
/**
* 这是一个测试类
* 用来测试Student类的使用
* 怎么测试?
* 调用构造器创建对象
* 使用对象(调用方法)
*/
public class StudentTest {
//main主方法,程序执行的入口(JVM开启一个主线程来执行)
public static void main(String[] args) {
//创建对象(new)
Student s = new Student();
s.setName("小利");
s.setSex("女");
s.setAge(18);
Student s2 = new Student("小张", s, "女", 18);
//设置xx的同桌
s.setDeskmate(s2);
//调用方法
s.eat();
s2.eat();
s.say();
s2.say();
}
}