2020-04-28

面向对象


类和对象

类:

    对于一类事物的统称,包含对于属性描述和行为描述

    已人类为例

    属性描述:身高体重,样貌...

    行为描述:吃饭,睡觉,上班,学习,打游戏..  

对象:

    具体的,独立的,唯一的个体

小总结

生活中面向对象和面向过程的例子

        面向对象直观,高效,并且是符合我们生活案例的一种方式面向过程较为繁琐的方式,但是面向对象的基础就是面向过程。

类和对象

        类统称的概念

        对象唯一的

Java中定义类的格式【重点】

格式分析

格式:

        class类名{

                属性描述;

                行为描述;

        }

类名:

        要求符合大驼峰命名法,见名知意

        类名这里可以认为是一个数据类型名,自定义数据类型

属性描述:

        描述当前类有哪些属性

        例如:

                人类的身高体重,年龄姓名

行为描述:

        描述当前类有哪些行为

        例如:

                人类的吃饭行为,睡觉行为,打游戏行为


自定义完成Person类

/**

*自定义Person类,人类

* @author Anonymous

*

*/

class Person {

        /*属性描述【成员变量Field】*/

        //姓名属性描述  这里暂时不需要初始化只是描述当前类有哪些属性

        // String是字符串类型,name成员变量

        String name;

        //年龄描述

        // int是数据类型 age成员变量

        int age;

        //性别描述

        // char是数据类型 gender成员变量

        char gender;

    /*

    *行为描述【成员方法Method】

    *一下方法目前不需要static不要问

    */

    //吃饭行为描述

    public void eat(String food) {

        System.out.println("吃"+food);

    }

        //睡醒行为描述

    public void sleep() {

        System.out.println("月亮不睡你不睡,你是秃头小宝贝");

    public void game() {

        System.out.println("WOT World Of Tank坦克世界");

    }

}

Java中创建对象的格式【重点】

格式:

        Scanner 扫描器

        Scanner sc = new Scanner(System.in);

赋值号左侧:

    Scanner: 

        数据类型名,Scanner类,【类名】。

    sc:

        sc可以认为是Scanner类的对象,sc对象名,同时也是一个【引用数据类型变量】

赋值号右侧:

    new:

        1.在内存的【堆区】申请当前对象所需的内存空间

        2.擦除整个内存空间中的所有数据,所有的内存空间中二进制位都是0

   Scanner(System.in);

        和类名同名的方法

        目前类名();即可

格式:

类名 对象名 = new 类名();

创建Person类对象

/*

*这里创建一个Person对象

*格式:                                         

*类名 对象名 = new类名();                   

*                                               

*这里创建了一个Person类的对象,对象名saolei       

*/

Person saolei = new Person();                   

System.out.println(saolei);                     

/*                                               

* com.qfedu.b.Object.Person@15db9742           

* com.qfedu.b.Object完整的包名

* Person类名

* @ 所在内存位置

* 15db9742是当前Person类的对象,saolei所在【堆区】内存空间首地址

*/

【使用成员变量】

int[] arr = new int[10];

arr.length 

        这里没有小括号,得到的数组的容量,是一个属性

操作类内的成员变量格式:

        类对象.成员变量名可以赋值操作,可以取值操作

使用成员变量方式

/*

*通过Person类的对象,saolei操作name成员变量,age成员变量,gender成员变量

*进行赋值操作

*                                               

* . 的

*/

saolei.name = "海航中路彭于晏";                     

saolei.age = 16;                                 

saolei.gender = '男';                             

/*                                               

*通过Person类的对象saolei取值成员变量内容

*/

System.out.println("Name:"+saolei.name);       

System.out.println("Age:"+saolei.age);         

System.out.println("Gender:"+saolei.gender);

【使用成员方法】

Scanner sc = new Scanner(System.in);

sc.nextInt(); 通过Scanner类的对象 sc调用nextInt();

sc.nextFloat();

sc.nextDouble();

sc.nextLine();

  .     的

格式:

类对象.成员方法(所需参数);

通过类对象使用成员方法

/*

*格式:                   

*  类对象.成员方法(所需参数); 

*   .  的

*/

saolei.eat("鲱鱼罐头鱼丸");   

saolei.sleep();         

saolei.game();

总结

格式

a.

    自定义类的格式

b.

    创建类对象格式

c.

    通过类对象调用成员变量的格式

d.

    通过类对象调用成员方法的格式

你可能感兴趣的:(2020-04-28)