学习代码第八天

一、继承(java面向对象的三大特征之一):

含义:子类继承父类,可以直接使用父类的属性和方法(主要使用方法)

	        关系:类与类之间的关系
    		父类:有时候也会叫做  超类、基类。
		关键字:extents
	一般在什么时候使用:
		一般一个小的类和大的类之间这样使用

好处:

		减少的代码的冗余,提高了代码的复用性

特点:

		1.子类可以继承父类非private的属性和方法
		2.子类可以拥有自己特有的属性和方法,既子类可以对父类进行扩展
		3.java类的继承是单继承,但是可以多重继承
		4.子类可以  重写  父类的方法

优点:

		1.提高代码的复用性
		  子类中重复的代码只需要在父类中写一遍,所有子类都可以应用
		2.提高代码的可维护性
		  只需要修改父类属性和方法,所有的子类都会应用
		3.提高类与类之间的关联性,为多态做基础
		  其实这也是继承的缺点,增加了类和类之间的耦合度,耦合度的增加意味着后期扩展性的降低

关键字:this与super

		1.子类的构造方法(无参与有参)里面,第一句默认添加super(),如果要手动添加,也必须放在第一位

补充:构造方法(※):

			1.当一个类  没有构造  方法的时候,系统会默认给该类添加一个无参构造方法
			2.当一个类  构造  了有参构造方法时,系统不会默认给该类添加无参构造方法
	this与super的区别:
		1.this代表本类对象的引用
		      this理解一个代词,就是创建对象的对象本身,new的那个对象)
			“我”吃桃子(谁吃桃子,这个“我”是谁)
		    super代表父类对象
		2.属性和方法都是对象调用的,那么this和super都可以调用方法

补充: 同一个类里面 静态 > 代码块 > 构造方法
子父类里面:父类静态>子类静态>父类代码块>父类构造方法> 子类代码块>子类造方法
类创建要比对象早,static是属于类的,不属于对象
在静态的里面不要调用非静态的,也不要用this与super

二、包(包名全部小写):

概念:为了更好地组织类,

作用:

		一、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用
		二、如同文件夹一样,包也采用了树形目录的存储方式。
		      同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,
		      当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。
		            因此,包可以避免名字冲突。
		三、包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。

关键字:

		import:导入包,告诉下面的代码我要使用哪个包的哪个类
		package:告诉我们当前的类属于哪个包
	完整的类名:
		全限定类名
	包的使用:
		1.为了方便管理
		2.域名倒写
		3.全部小写
		4.import和package的意义

三、抽象类:

概念:被abstract修饰的类叫做抽象类(有抽象方法的类就是抽象类)

		类是对象的抽象化,抽象是类的抽象化
		(抽象:提取共同特征)
	      把一些类的共同特征抽取出来,放到一个类中,这个类就叫做抽象类

抽象方法:被abstract修饰的方法叫做抽象方法

		 抽象方法没有方法体

特点:

		1.抽象类有构造方法,但不能创造对象,抽象类的构造方法就是给成员变量初始化的
		2.抽象类可以有普通的抽象方法,也可以有静态成员变量
		3.抽象类里可以有抽象方法,但是普通类里不能有抽象方法						
		4.抽象类也可以有普通的方法
		5.普通类继承抽象类,必须重写抽象类中的抽象方法
注:抽象类天生就是当爹的

补充(※):

		方法重写:
		子父类关系中,子类和父类的方法名,参数列表,返回值必须相同
		    1.存在继承或者实现功能
		        2.方法名,参数列表,返回值必须相同
		    3.子类的访问权限必须大于等于父类的访问权限(一般情况下都是public)
		    4.子类抛出的异常等级必须小于等于父类抛出的异常
		为什么要方法重写:
			当父类不知道子类的方法到底怎么执行的时候,就需要把这个方法定义成抽象方法,让子类重写这个方法
			子类继承了父类以后,子类就拥有了父类的方法,但是这个方法不适合子类,就需要子类重写这个方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值