课时003:自动转型多态,方法分类,类分类,接口继承

自动转型定义:子类的对象,可以自动转型为父类的类型

    父类类名 变量名 = new 子类的类名();

多态性:多个同一个类型的对象,调用同一个方法,执行的过程不一样

多态出现的原因->自动转型+方法重写->建立在继承的前提下

public class Test {
	public void study(){
		System.out.println("学生正在学习中...");
	}//学生类
	public class UnStudent extends Student{
		public void study() {
			System.out.println("大学生正在学习中....");
		}
	}//大学生类
	public static void main(String[] args) {
		//自动转型
		Student us = new UnStudent();
		Student us1 = new Student();
		us.study();//执行Unstudent类的  学习  方法
 		us1.study();//执行 Student的
	}
}

二、方法分类

方法类型:普通方法、构造方法、抽象方法

普通方法:public 返回类型 方法名(参数){}  

//public void eat(){}

构造方法:public 类名(参数){}

//public Student () {}

抽象方法:public abstract 返回类型 方法名(参数);

//public abstract void eat ();

三、类的分类


类的类型:普通类、抽象类、接口

普通类:public class文件名{}

抽象类:public abstract class 文件名{}

接口:public interface 文件名{}


普通类:1、方法只能是构造方法和普通方法,一定不能有抽象方法

     2、可以定义变量属性,也可以定义常量属性

 3、可以用来构造对象

 

抽象类:1、三种类型的方法都可以存在

    2、可以定义变量属性,也可以定义常量属性

    3、抽象类不能构造对象

 

接口:1、只能有抽象方法,构造方法和普通方法不能定义

2、只能是常量属性

不能构造对象//下有表


类型 常量 变量 一般方法  构造方法 抽象方法  构造对象
一般类 允许 允许 允许  允许     允许
抽象类 允许 允许 允许  允许   允许
接口 允许   允许

注意:接口是没有构造方法的

      接口中的常量:static final可以省略

   接口中的抽象方法:abstract单词可以省略

 

四、接口继承

抽象类和接口的作用:当父类,被继承,约束子类的定义

继承抽象类:extends

继承接口:implements

接口和抽象类的继承:子类如果是普通类,则必须要重写继承过来的抽象方法

注意:接口是多继承的//一个类可以继承多个接口类


this:指代一个对象:当前类的对象

如何寻找this所代表的对象:

  1、看this再哪个方法中使用的  

  2、看哪个对象调用了此方法

结果是:调用此方法的对象就是this所指代对象




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值