封装、继承、多态的基础

封装
基本类型与引用类型
int a=5; int b=a;将变量a的值,拷贝一个给变量b,变量a与变量b是相互独立的;
int[] a={1}; int[] b=a;
将数组a引用的地址,拷贝一个副本给数组b,数组a与数组b相互关联,都指向同一个数组;
Student a=new Student();Stedent b=a;同数组

object oriented programming
		//抽象:模具
		//类:class


1.访问修饰符

访问修饰符 [abstract/static/final....] class/interface/enum 类名称 {}

2.属性

静态特征、成员变量、全局变量

3.方法

访问修饰符 [static/final/volatile/transient...]数据类型 属性名称;
1、程序运行时,自动为属性赋无效的初值,同数组的初始化
		  方法、动态特征、函数、行为
访问修饰符 [abstract/static/final/native....] 返回类型 
方法的名称([形式参数列表]{方法体}
形式参数:定义类型,数量,顺序

(1)入口方法:程序的入口

public static void main(String[] args){…}

(2)构造方法:初始化(赋值)

public 与类同名([形式参数列表]){…}
//构造方法的重载
//同一个类中,方法名称相同,参数不同(数量不同,类型不同,不同类型顺序不同)

(3)自定义方法

//使用方法:功能,参数,返回值
//创建方法:方法的源码
void:方法无返回类型
/方法的返回值:只能有一个
return [值];
1、终止方法
2、返回值
//方法的入参规则:可以有多个
//三个以内,直接入参
//3个以上,封装入参
4.this关键字

当前对象,在同类中某构造方法中通过重载调用其他构造方法,且必须为第一句。

对象
//创建对象
//实际参数:定义值
类 对象名称=new 构造方法([实际参数列表]);
new //一般是引用类型,一般是地址;
//访问对象
//外部访问
//访问对象的{可见}属性
对象名称.属性名称
//访问对象的{可见}方法
对象名称.方法名称{实际参数列表}
//内部访问:直接访问

1.类的认知

//GC JVM垃圾回收器
//数据类:实体类
// 类型 数值
//变量 1 1
//数组 1 n
//类 n(个对象) 1(描述了1个对象)
//对象数组 n n
//业务类

2.static

和基本类型的存在,证明Java不是存粹的面向对象语言
优点:方便跨类调用
缺点:违背oop.
8.基本类型对应的包装类

基本类型      	包装类				扩展方法
String			String
char			Character
byte			Byte
short			Short
int				Integer				 int Integer.parseInt(String s);
long			Long
float			Float
double			Double
boolean			Boolean

继承
目标:
//代码的重用性
//耦合度
//扩展性

继承 extends (继承是为了重用,更是为了扩展)
class B{}
class A extends B{}
所有类的祖宗:object
单根继承
凡是符合“Xxx is a Yyy” class Xxx extends Yyy{}
super 父类的对象,或者调用父类的构造方法,且必须为第一句。
继承本质:每一个子类对象中都有一个独有的父类对象,由虚拟机负责创建。
父类不可继承内容
//私有
//构造方法 super(…)
//访问修饰符 类 同包 异包子类 其它(异包非子类)
public ✔ ✔ ✔ ✔
protected ✔ ✔ ✔
default(无) ✔ ✔
private ✔

继承关系不同性质代码执行顺序(父>子/静态>普通>构造)
父类静态代码块
子类静态代码块
父类普通代码块
父类构造方法
子类普通代码块
子类构造方法

多态
//概念:一种类型多种表现形态
//必要条件:
//继承
//重写
//子类重写父类的方法:参数,返回值完全相同,访问权限>=父类
//类型转换
//☆自动类型转换:子类对象给父类引用
//强制类型转换:将父类引用指向的子类引用,转化为子类对应的实际引用;

		boolean is=objectA instanceof class B
		((classB)objectA)

//重载也是多态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值