Java 面向对象编程基础 (Day 06-08)

零、基本认识

面向对象, 耦合度低、扩展性高

通过对象与对象之间的协作,完成各种任务(像现实生活中)

两个概念, 三个特征, 三个步骤:

  1. 类和对象的概念

  2. 面向对象三大特征: 封装、继承、多态

  3. 三个步骤:

    面向对象的分析:OOA

    面向对象的设计:OOD

    面向对象的编程:OOP

一、类

(一)定义

代表一类具有共同特征的事物, 是一个模板, 对应现实生活中的一个概念(抽象)

(二)语法(编写代码的开始)

  1. 类体 = 属性+方法, 且必须通过 [对象] 才能访问某个具体(非static的)属性/方法
            [修饰符列表] class 类名{
                属性/状态; //属性通常是采用一个变量的形式来完成定义的。
                方法/动作;  //类体中不能直接编写java语句  [除声明(+初始化)变量之外]
            }

//关于类的知识点内容List

            [修饰符列表] class 类名{   
                    静态代码块;
                    实例代码块;
        
                    静态变量;
                    实例变量;
        
                    构造方法;
        
                    静态方法;
                    实例方法;
            }

二、对象

(一)定义

实际存在的个体. 对应现实生活中实际存在的事物.

实例化:

  • 类-实例化->对象

  • 对象-抽象->类

(二)语法

  1. new 类名()

    new运算符: 作用是创建对象(在JVM堆区开辟新的内存空间)

  2. 属性(即成员变量)没有手动赋值的话, 系统赋默认值

    类型 默认值
    byte, short, int, long 0
    Float, double 0.0
    boolean false
    char \u0000
    对象 null

    数据类型两大类:

    • 引用数据类型: 数组, 接口, 对象

    • 基本数据类型: 见上表

三、变量/方法类型

(一)变量类型的划分

  1. 成员变量

    1. 实例变量

    2. 类变量/静态变量

  2. 局部变量

变量类型.png

(二)static关键字

静态数据存放于代码区, 类加载时即开辟空间/写入, 有“共享”性质

决定对变量/方法的访问方式:

  1. 有static: 类名.方法名(实参列表)
  2. 无static: 引用.方法名(实参列表) (即new一个对象, 通过对象访问)

四、特点之——封装

(一)优点

  1. 隐藏复杂, 之间简单的操作入口
  2. 封装后才是真正的“对象”(独立体)
  3. 安全性: 完全暴露/毫无限制不叫封装, 可以确保数据安全/有效
  4. 实现代码复用, 且有较好的适应性

(二)步骤

  1. 所有属性私有化修饰, 让其只能在本类中进行访问

  2. 对外提供简单的访问入口(如getter & setter), 实现安全访问

    其内部有安全控制语句(安全过滤)

*getter & setter的命名规则:

小驼峰, 直接跟变量名(首字母大写). 如: setAge(int a){...}

你可能感兴趣的:(Java 面向对象编程基础 (Day 06-08))