0
点赞
收藏
分享

微信扫一扫

面向对象初步理解

玉字璧 2022-04-21 阅读 100
ideajava

面向对象(自我理解,如有错误,敬请改正):一种编程思想,从对象本身出发,实现某个功能,包含以下下几个内容:

  1. 对象:万物可以是对象,一本书,一个人,一台电脑。
  2. 方法:实现对象的某一个行为的办法,比如人会吃饭,会喝水,喝水吃饭的行为,都要在方法中实现
  3. 类:具有共同属性和行为的对象的集合,比如电子设备类包括手机和电脑,食物类包括馒头和包子
  4. 对象的属性:人的高矮胖瘦 电脑的型号 书的种类
  5. 类和对象的关系:类是对象的集合,对象是类中一个具体的实例
  6. 对象的属性具有默认值,默认值与对应的数据类型相关,具体详见下表格,在定义一下数据类型时若没有赋值,则为该数据类型的默认值
数据类型默认值
byte0
short0
int0
long0
double0.0
float0.0
char空字符   
booleanfalse

属性, 行为,和对象的关系,我们来用一段代码来帮助理解

public class Person {
    public static void main(String[] args) {
        sleap();
    }
    /**
     * 昵称   (
     */
    String nickname;            (属性)
    /**
     * 性别 1代表男 0代表女
     */ 
    int gender;                 (属性)
    /**
     * 年龄
     */
    int age;                    (属性)


//(吃,喝,睡,都是人的一种行为,要实现这些行 为就需要方法来实现)
//属性和行为都是对象所具有的
    public void eat(){                       
        System.out.println("民以食为天");
        drink();
    }

    public void drink(){
        System.out.println("这酒怎么喝?你干了,我随意");
        sleap();
    }

    public static void sleap(){
        System.out.println("养精蓄锐");
    }

}

我们创建一个Person的测试类,并调用Person中的方法

注意:如果用类名.方法名来调用非静态方法会报错

                实例化对象名.方法名不会出错!!

/**
 * 静态方法可以通过类名点方法名的方式调用,非静态方法不可以用类名点方法名调用<br>
 * 可以通过类的实例化对象名点方法名的方式调用静态方法<br>
 * 也可以通过类的实例化对象名点方法名的方式调用非静态方法<br>
 */
public class Person01Test {
    @Test
    public void test01(){
        // 静态方法可以通过类名点方法名的方式调用
        // 但是不能通过类名点方法名的方式调用非静态方法
        Person.sleap();
    }

    @Test
    public void test02(){
        // 静态方法可以通过类名点方法名的方式调用
        // 但是不能通过类名点方法名的方式调用非静态方法
        Person.sleap();
        Person person01 = new Person();
        // 可以通过类的实例化对象名点方法名的方式调用静态方法
        // 也可以通过类的实例化对象名点方法名的方式调用非静态方法
        person01.eat();
        person01.drink();
        person01.sleap();
    }
}

输出结果

 

 

 

举报

相关推荐

0 条评论