java学习Day09--面向对象(上)

面向对象

面向过程(pop)

分析具体的实现步骤一步步实现

面向对象(oop->object-oriented programming)

以分类的方式进行思考和解决问题,对事物整体进行分析,进行分类

案例:把大象装进冰箱

面向过程方式思考

1.打开冰箱门

2.把大象装进去

3.关闭冰箱门

面向对象方式思考

设计类:

1.人类(装东西)

2.大象

3.冰箱(存储东西)

4.门(开门,关门)

面向对象也是离不开面向过程的,具体细节的实现还是以面向过程进行

Java类

类是一个模板,是对用一个类实物(对象)的共同属性`特征进行定义,把这些信息创建一个文件(.java类)记录下来.

类的定义:

​ 类的结构:

​ 变量:事物属性的描述;

​ 方法:事物的行为;

​ 构造方法:用于创建对象;

​ 内部类:即在类体中声明的类;

​ 块:一段没有名称的代码块

​ 设计类:

​ 1.发现类 语法

​ 2.定义类的属性,特征,变量

​ 3.定义类的行为,功能,方法

/**
 * 发现类
 * [访问权限修饰符] [修饰符] class(定义类) 类名 {
 *      变量:事物属性的描述;
 *      方法:事物的行为;(可以做的事情)
 *      构造方法:用于创建对象;
 *       内部类: 即在类体中声明的类。
 *       块:一段没有名称的代码块
 * }
 * 访问修饰符有两种 public 或者 不写
 * 修饰符: final , abstract
 * 类名: 类名首字母大写,见名知意,驼峰表示
 */
public class People {
    
    
    /**
     * 发现共有属性
     * 成员变量定义
     * [访问权限修饰符] [修饰符] type 变量名;
     */
    String name;
    String sex;
    int age;

   
    /**
     成员方法
     人有睡觉吃饭学习等行为
     [访问权限修饰符] [修饰符]/void  方法名(参数类型 参数名){
     sout();
     [return 返回值;]
     }
     */
    /*睡觉的方法*/
    public void Sleep() {
    
    
        System.out.println(name + "说费觉觉");
        return;
    }

    /* 吃饭的方法*/
    public void Eat() {
    
    
        System.out.println(name + "说开饭了,冲冲冲");
    }

    /*学习的方法*/
    public void Study() {
    
    
        System.out.println(name + "说一秒不学习,浑身难受");
    }
}

Java对象

对象是类的一个实例,是以类为模板,在内存中创建的实际存在的实例.

对象其实就是具体存在的实例,创建对象就是实例化对象

/*
          类定义好后,是一个文件,但不能使用
          以类为模板创建对象,对象是实例,视具体存在的,可以被使用
          People cui = new People();
                       new + People 类的构造方法,在内存中创建一个具体的对象
                      People cui 以People类为类型声明一个变量cui
                       = 让cui变量 指向(引用)内存中的对象
           cui.name = "张三";
           使用cui变量 . 调用对象中的属性(变量)\行为(方法)
         */
        People zhang = new People();
        zhang.name = "张三";
        zhang.age = 21;
        zhang.sex = "男";
        System.out.println("姓名:" + zhang.name + "\t性别:" + zhang.sex + "\t年龄:" + zhang.age);
        zhang.Eat();
        zhang.Sleep();
        zhang.Study();

变量分类

按数据类型分为:

​ 基本类型:8种

​ 引用数据类型:以类作为类型,数组

按照位置分类为:

成员变量:事物的属性

在类中定义,方法体之外

​ 可以使用java中支持的所有的数据类型

​ 可以不进行初始化赋值,在创建对象时,虚拟机会默认赋值.

​ String :null char:" " int:0 Boolean:false

​ 在成员方法中可以访问成员变量

局部变量:事物的行为

在方法,构造方法,代码块中定义的,支持所有的数据类型

​ 使用前初始化赋值,方法结束后变量随之销毁

方法分类

成员方法

    	/*
        成员方法
        [访问权限修饰符] [修饰符] [返回值类型]/void 方法名(参数类型  参数名){
             语句块
             [return  值]
        }
        */	
	public void Sleep() {
    
    
        System.out.println(name + "说费觉觉");
        return;
    }
	//int day,String deep  方法参数也是局部变量
	public void Play(int day,String deep){
    
    
        System.out.println(name+deep+"使劲玩");
    }
	 People zhang = new People();
	 //成员方法必须通过对象调用
     zhang.Sleep();
	 zhang.Play(22222,"哈哈哈哈");

猜你喜欢

转载自blog.csdn.net/XiaoFanMi/article/details/110095996