XX教育 - oo - day01

XX教育

  • 回顾:
  • 正课:
    • 1.什么是类?什么是对象?
    • 2.如何创建类?如何创建对象?如何访问成员?
    • 3.引用类型之间画等号:
    • 4.null:空,没有指向任何对象
    • 练习:

回顾:

1.方法:
封装特定的逻辑功能、独立、只干一件事
被调用多次,减少重复,有利于复用,有利于团队协作
2.方法的定义:
修饰词 返回值类型 方法名(参数列表){
方法体
}
3.方法的调用:
1)无返回值: 方法名(有参传参);
2)有返回值: 数据类型 变量 = 方法名(有参传参);
方法名(有参传参);----------不建议
4.return:
1)return 值; //1.1)结束方法 1.2)返回结果给调用方
2)return; //2.1)结束方法

正课:

1.什么是类?什么是对象?

1)现实世界是由很多很多对象组成的
基于对象抽出了类
2)对象:真实存在的单个的个体
类:类型/类别,代表一类个体
3)类中可以包含:
3.1)所有对象所共有的属性/特征-----------变量
3.2)所有对象所共有的行为----------------方法
4)一个类可以创建多个对象
同一类型的对象,结构相同,数据不同
5)类是对象的模板,对象是类的具体的实例

2.如何创建类?如何创建对象?如何访问成员?

3.引用类型之间画等号:

1)指向同一个对象
2)对一个引用的修改,影响另外一个引用
eg: 房子钥匙
基本类型之间画等号:
1)赋值
2)对一个变量的修改,不会影响另外一个变量
eg: 身份证复印件

4.null:空,没有指向任何对象

   若引用的值为null,则该引用不能再进行任何操作了若操作则NullPointerException空指针异常

练习:

1.完成RefNullDemo的文件

RefNullDemo
房子:对象
钥匙:引用
配一把钥匙:引用

package oo.day01;
//引用类型画等号与null的演示
public class RefNullDemo {public static void main(String[] args) {Cell c = new Cell();c.row = 2;c.col = 5;Cell cc = c; //指向了同一个对象cc.row = 8;System.out.println(c.row); //8int a=5;int b=a; //赋值b = 8;System.out.println(a); //5Cell c1 = new Cell();c1.row = 2;c1.col = 5;c1 = null; //空,没有指向任何对象//c1.row = 4; //NullPointerException空指针异常}
}

2.完成Emp和EmpManager雇员信息
3.完成Cell类,包括:-------至少写两次(oo.day02包下)
1)成员变量:row,col

2)方法:drop(),moveLeft(int n),String getCellInfo()

package oo.day01;
//格子类
public class Cell {int row; //行号int col; //列号void drop(){ //下落1格row++;}void moveLeft(int n){ //左移n格col-=n;}String getCellInfo(){ //获取行号和列号return row+","+col;}
}

4.完成CellTest类,包括:
1)main(){}—创建格子对象并测试printWall©;
2)printWall(Cell cc){}—打墙+打格

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); //3,2*/Cell c = new Cell();c.row = 2;c.col = 5;printWall(c); //Cell cc=c;c.drop(); //c.row=3System.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(); //换行}}
}

StudentTest

package oo.day01;
//学生类的测试类
public class StudentTest {public static void main(String[] args) {//创建一个学生对象Student zs = new Student();//访问成员变量zs.name = "zhangsan";zs.age = 25;zs.address = "河北廊坊";//调用方法zs.study();zs.sayHi();Student ls = new Student();ls.name = "lisi";ls.age = 26;ls.address = "黑龙江佳木斯";ls.study();ls.sayHi();//new后,所有成员变量都有默认值Student ww = new Student();ww.study();ww.sayHi();}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部