java之面向对象<二>

一、封装
1、 对象的所有属性和方法是一个整体
2、 属性要封装(隐藏),把属性定义成private ,然后通过 公有的get和set方法间接调用
a.所有的属性使用使用private修饰,这时属性只能在本类中 使用。
b.提供公有的get和set,实现对其的间接使用。
3、 方法要封装(隐藏),把方法定义成private,然后通过公有方法间接调用

二、
static:静态的
static 修饰属性,那么这个属性将属于类所有(公家)
没有被static修饰的属性,他是属于对象所有(个人)
static修饰方法,那么这个方法将属于类所有(公家)
没有被static修饰的属性,他是属于对象所有(个人)
个人可以访问个人的 个人可以访问公家的
公家可以访问公家的 公家不可以访问个人的

三、默认值
1、变量不带默认值
int a;
System.out.println(a);//错误
2、数组带默认值
int[] a=new int[3];
System.out.println(a[0]);//0
3、类的属性带默认值

四、static块和普通代码块
static{
//代码
}
{
//普通代码块
}

static块 > 普通代码块 > 构造方法

static:静态的 ,被其修饰的属性和方法都属于类,通过类名直接调用。
没有被他修饰的属性,方法将属于对象,必须依赖对象才可以使用。
static修饰属性,修饰方法
static{}静态代码块,类加载时就会执行,而且只执行一次,资源的加载。

private
私有的,只能在同一个类中使用。需要和static区别开来
this
当前类的对象(引用),需要将其看做一个对象。不需要 手 动创建的。

this调用方法
this调用属性
this调用构造方法 this(参数列表) ,只能在构造方法非注释的第一行。

final:最后的最终的
修饰属性,将其变成常量,必须赋值
修饰方法,方法不能改变,不能被重写
修饰类,类不能被继承

五、重载
java重载:同一个类中,同名的方法,因为参数不同,就有不同的结果
重载的特征:同一类中,方法名相同,参数不同,与返回值类型无关。其中参数不同分为:参数个数不同、参数类型不同、参数的顺序(看类型,不看参数名)不同。
重载的多个方法调用的时候由参数来决定,按参数类型和个数一一要匹配执行

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

一、封装
private
Object类:java中所有类的基类
二、继承(extends):类与类之间的一种关系,被继承的类称为 父类(基类,超类).继承的类称为子类。子类继承父类后,会自动拥有父类的一些特征。父类更加抽象,子类会更加具体。

继承的好处:
1.提高代码重用性
2.提供程序可扩展性

四大访问修饰符:
public : 同一个类中,所有的包, 都可以使用
protected:同一个类中,同一个包中,不同包的子类中可以使用,
默认 同一个类中,同一个包中
private 同一个类中

内存分析:
栈内存:用于存储所有的基本数据类型,和对象的引用
堆内存:所有使用new关键创建的对象

继承的特征:
1、儿子没有属性和方法,可以向父亲去拿

2、儿子出生之前要让父亲先出生

3、private修饰的属性和方法不能被子类继承使用

4、this和super
this:表示当前这个对象的引用
this.属性:表示引用当前对象属性
this.方法:表示引用当前对象方法
this():表示调用当前对象的构造方法
super:表示当前对象父类的引用
super.属性:表示引用当前对象的父亲的属性
super.方法:表示引用当前对象的父亲的方法
super():表示调用当前对象的父亲的构造方法

5、类的继承是单继承
一个子类只可以继承一个父类

6、父类只有带参的构造方法,子类必须在自己构造方法通过
super(参数)显示调用父类的构造方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值