Java知识--类的封装

71 篇文章 0 订阅
25 篇文章 0 订阅

1.类的定义:
类{
若干个变量(属性); //成员变量
若干个函数(方法); //成员方法
}
2.类名(完整名称): 包名+类名
3.对象的实例:类 对象 = new 构造函数();
4类的封装性:
(1)所有的变量私有化,写一些setter-getter方法供外面操作这些属性,
在这些方法中可以进行业务控制。
(2)写一些构造方法,供外面在创建对象时,直接把数据封装到对象中
5.构造方法: 名字和类名完全一样,没有返回值(可理解为返回一个对象),
用new来调,调用的结果是在堆内存中创建一个对象空间且返回它的堆内存首地址
构造方法知识点:
(1)如果我们没有手动写构造方法,则Java会自动帮我们添加一个默认构造方法(空参的构造方法)。
(2)如果我们手动写了构造方法,则Java不会帮我们添加默认构造方法(空参的构造方法),如果我们需要就手动再添加
6.类的权限有两种:public 和 缺省
7.属性和方法的权限从低到高(4种):
(1)private: 只有当前类能够访问
(2)缺省(默认): 只有当前包中的所有类(包含当前类)能访问
(3)protected: 当前包中的类能够访问,其它包中若是子类也能访问。其它包中不是当前类的子类则不能访问。
(4)public: 任意类(无论是否是相同的包或子类关系)都能访问
8.深拷贝和浅拷贝

//浅拷贝: 存在引用赋值--捆绑
    /*
    public Person( Person p){
        this.name = p.name; //基本数据类型,值拷贝
        this.birth = p.birth;  //☆引用赋值必捆绑 --地址拷贝
    }
    */

    //深拷贝: 让所有的变量赋值都达到 基本数据类型赋值的深度
    public Person( Person p){
        this.name = p.name; //基本数据类型,值拷贝
        this.birth = new MyDate(p.birth);  //☆引用赋值必捆绑 --地址拷贝
    }

9.静态与非静态
(1)静态的东西(成员变量、成员方法)是属于类的(所有对象公用的), 访问方式:
类名.成员名—推荐方式, 对象名.成员名—可以,但不推荐
(2)非静态的东西属性对象的(仅仅是当前对象所有)
(3)静态块

static{
//静态块,在第一次使用类模板时调用且只调用一次。如果要在第一次使用类模板时执行某些代码如给静态变量赋值(通过多行代码)则用静态块。
    }

(4)可以在非静态方法中访问静态成员,但该方法是属于每个对象的—如果是专用于对静态成员进行操作,最好写成静态的方法
(5)静态方法中不能访问非静态成员,如果要访问得通过对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值