面向对象

一、继承相关问题

1.继承了什么?

子类实际上继承了父类所有的东西,只不过调用被限制

  • public 整个项目
  • private 本类之内可以调用
  • protected 其子类可调用(即,只有子类可以调用,无需考虑是否同包)
  • 缺省的、不写 同一个包下可调用

或者也可以说

  • 同包下: 只有 私有的不能调用
  • 不同包下:
    子类中 ,public protected 可以调用
    非子类中,子类对象只能调用 public

2.其他问题

  • 不止类之间能继承,接口之间也可以
  • 实现类是必须重写接口中所有的方法,但是类与类的继承不需要
  • (实现类)子类以及子类对象会优先调用重写之后的方法
  • 父类参数在子类重写时不能改
  • 静态方法只能调用静态资源

二、封装相关问题

github的单例模式

三、接口相关问题

public class Door {
	//上层的类只需要写一个开锁的方法,参数为接口,方法体为接口的开锁方法
	public void useLock(LockInterface lock){
		lock.open();
	}
}

public interface LockInterface {
	void open();//接口,只有空方法没有具体实现
}

class PwdLock implements LockInterface{
	//接口的具体实现
	void open(){
		system.out.print("密码开锁");
	}	
}

class MainClass{
	//这里的main方法再实际项目中是业务类,业务类课以调用任意的接口实现类
	public static void main(String[] args) {
		Door door = new Door();
		PwdLock pwdLock = new PwdLock();
		door.useLock(pwdLock);
	}
}

四、五大原则

1.单一职责原则

一个类的功能要单一,不要把太多代码与方法都写在一个类中。

2.开放封闭原则

  • 扩展开放
    单继承、多接口、方法精良都放在接口里
  • 修改封闭
    对重要 私密 的属性 方法进行私有化

3.里氏替换原则 - 自动转型

如果一个地方需要的类型是父类类型的时候,这个父类的所有子类对象又可以替代父类
子类应当替换父类出现在父类可能出现的任何位置上

4.依赖倒置原则

具体(类) 依赖抽象(接口) 具体不依赖具体 抽象不依赖具体

5.接口分离原则

接口功能尽量单一
eg.LockInterface open close、OpenInterface open、LoginInterface login
接口 可以在 不同类之间实现组合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值