Java的面向对象

面向对象

  • 面向对象与面向过程

    • 面向过程:完成某个功能中每一步需要怎么完成,具体到事件的步骤与过程
    • 面向对象:完成某个功能的实施者,将功能封装进具体的对象中
  • 面向对象的三个阶段

    • 面向对象分析OOA------>Object Oriented Analysis
    • 面向对象设计OOD------>Object Oriented Design
    • 面向对象编程OOP------>Object Oriented Programming

创建类

  • 类中有方法和属性

    • 属性就是对对象的"名词"描述,比如人的姓名,性格等描述
    • 方法就是对对象的"动词"描述,比如跑,跳,走
  • 创建类

    • 属性

      • [修饰符] 属性类型 属性名 = [默认值] ;一般不进行默认值赋值
    • 方法

      • [修饰符]  方法返回值类型  方法名(形参列表) {
                // n条语句
        }
        
package com.shanlei;

/**
 * @Auther: shanlei
 * @Date: 2020/12/1 - 12 - 01 - 17:11
 * @Description: com.shanlei
 * @version: 1.0
 * 创建人类
 */
public class Person {
    // 名词-->属性(只把有需要的内容写到代码里,不相关的东西不要放在代码中)
    int age;// 年龄
    String name;// 姓名
    double height; // 身高
    double weight; // 体重

    // 动词-->方法
    // 吃饭的方法
    public void eat(){
        System.out.println("我喜欢吃饭");
    }
    //睡觉的方法
    public void sleep(String address){
        System.out.println("我在"+address+"睡觉");
    }
    // 自我介绍
    public String introduce(){
        return "我的名字是"+name+",我的年龄是"+age+"岁,身高"+height+"米,体重"+weight+"公斤";
    }
}

创建对象

  • 通过同一个类创建的对象,属性是私有的,方法是公共的;
  • 在创建对象的时候,第一次会进行类的加载,再次用这个类创建对象的时候,不会再进行类加载
  • 初始化对象的时候,如果没有给对象的属性进行赋值,会自动赋默认值
package com.shanlei;

/**
 * @Auther: shanlei
 * @Date: 2020/12/1 - 12 - 01 - 17:54
 * @Description: com.shanlei
 * @version: 1.0
 */
public class Test {
    // 这是main方法,是实现程序主要逻辑
    public static void main(String[] args) {
        // 创建人类对象
        // Person 属于引用数据类型
        Person zs = new Person();
        // 可以对对象的属性进行读取与修改
        // 对对象的属性进行修改赋值
        zs.name = "张三";
        zs.age = 19;
        zs.height = 180.3;
        zs.weight = 62.3;
        
        // 读取输出对象的属性
        System.out.println(zs.name);

        // 调用对象的方法
        zs.sleep("家");
        System.out.println(zs.introduce());
		
        // 通过同一个类创建的对象,属性是私有的,方法是公共的
    }
}

上一篇:element-ui限制输入框输入的数不小于0且整数位最多为5位小数位最多为两位


下一篇:React 新旧生命周期与 Fiber 架构