学生类与其测试类
package 00.day01;
//学生类
public class Student{
//成员变量
String name;
int age;
String address;
//方法
void study(){
System.out.println(name+"在学习");
}
void sayhai(){
System.out.println("大家好,我叫"+name+"我今年"+age+"岁了,我来自"+address);
}
}
package 00.day01;
//学生类的测试类
public class StudentTest{
public static void main(String[] args){
Student o1=new Student();
o1.name="张三";
o1.age=11;
o1.address="中国";
o1.study;
o1.sayhai;
}
}
在此声明一下,一般来说学生类中的信息为私有的,所以初始化成员变量需要在构造函数中进行,鉴于目前还没写到构造函数,所以先不当私有处理,在后期这些成员变量的构造函数和简单输出可以用编程工具一步搞定,不需要频繁地写代码
格子类与其测试类
这个格子类你们可以联想俄罗斯方块,方块由格子构成,可将它定义为对象,它的行为(下落,左移,右移等)可以定义为方法,本人当初学的时候整个面向对象都是在俄罗斯方块的背景下完成的,在此特意声明一下,方便你们以后再看代码
package oo.day01;
//格子类
public class Cell {
int row;//行号
int col;//列号
void drop(){//下落一格
row++;//行号增一
}
void moveleft(int n) {//左移n格
col-=n;//列号减一
}
String getCellInfo() {//获取行号和列号
return row+","+col;//返回行列号
}
}
package oo.day01;
//格子类的测试类
public class CellTest {
public static void main(String[] args) {
/*Cell c=new Cell();//创建格子对象
c.row=2;//访问成员变量
c.col=5;
c.drop();//调用方法
c.moveleft(3);
String str=c.getCellInfo();
System.out.println(str);*/
Cell c=new Cell();
c.row=2;
c.col=5;
System.out.println("原始位置:");
printWall(c);//将打墙这个方法封装起来,避免代码重复
c.drop();
System.out.println("下落后:");
printWall(c);
}
//打印出墙(方便看格子运动变化过程)
public static void printWall(Cell cc) {
for(int i=0;i<20;i++) {//行
for (int j = 0; j<10; j++) {//列
if(i==cc.row&&j==cc.col) {
System.out.print("* ");
}else {
System.out.print("- ");
}
}
System.out.println();//换行
}
}
}