Java面向对象01-对象和类

本文介绍了面向对象编程的基础概念,包括对象和类的区别与联系。详细解释了如何通过类定义对象的属性和行为,并通过示例代码展示了如何创建类和对象,以及如何调用类的方法来改变对象的状态。

对象和类

  1. 现实世界是有很多对象组成的,基于对象抽出类
  2. 对象—真实存在的单个个体,类—–代表一类个体
  3. 类中可以包含成员变量和方法
    *所有对象所共有的特征/属性—数据(成员变量)
    *所有对象所共有的行为——–方法
  4. 一个类可以创建多个对象
    同一个类创建的对象结构相同,数据不同
  5. 类是对象的末班,对象是类的具体实例
  6. 基本类型之间画等号—赋值
    *对其中一个变量的修改不影响另一个变量
    引用类型之间画等号—指向同一个对象
    *对其中一个引用的修改,也会影响另一个引用
  7. null和NullPointerException(空指针异常)
  8. null:空,没有指向任何对象,若引用的值为null,则该引用不能做任何操作,否则会出现空指针异常
    ## 案例 ##
    创建一个Cell类
//创建一个格子类
public class Cell {
    int row;
    int col;
    void drop(){  //下落一行
        row++;
    }
    void moveLeft(){  //左移一列
        col--;
    }
    void moveRight(){  //右移一列
        col++;
    }
    String coord(){  //打印格子坐标
        return row+","+col;
    }     
}

创建一个Cell测试

import java.util.Scanner;
public class CellTest {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        Cell c=new Cell();
        c.row=2;
        c.col=3;
        System.out.println("格子初始坐标:"+c.coord());
        do{
            System.out.println("请输入操作(1.下落一行,2.左移一行,3.右移一行,0.退出):");
            int a=sc.nextInt();
            if(a==0){
                System.out.println("游戏结束!");
                break;
            }else {
                switch(a){
                case 1:c.drop();
                       print(c);
                       System.out.println("格子新坐标:"+c.coord());
                       break;
                case 2:c.moveLeft();
                       print(c);
                       System.out.println("格子新坐标:"+c.coord());
                       break;
                case 3:c.moveRight();
                       print(c);
                       System.out.println("格子新坐标:"+c.coord());
                       break;
                 default:System.out.println("输入错误!");      
                }
            }
        }while(true);
    }
    //打印场地及格子位置的方法
    public static void print(Cell c){
        for(int i=0;i<20;i++){
            for(int j=0;j<10;j++){
                if(i==c.row&&j==c.col){
                    System.out.print("* ");
                }else{
                    System.out.print("- ");
                }               
            }
            System.out.println();
        }       
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值