关于类与继承两次课的总结

类包括:普通类、接口、抽象类 三种
方法包括:普通方法、构造方法、抽象方法
1、继承(内部包括方法重写、自动转型及多态三种)
注意:子类继承到父类中除了构造方法外的所有属性和方法
1)方法重写
定义:子类重新写一遍父类的若干方法
格式:与父类中要被重写的方法在返回类型、方法名、参数(个数、顺序、类型)三方面一致,方法体可不同。
访问权限:子类方法的访问权限不小于父类方法的访问权限
private < 默认的 < protected < public
  public interface People {
public void play(String str);
}
public class Teacher extends Student implements People{
public void play(String str){
System.output.println("你好");
}
}

与方法重载的区别:
方法重写,存在继承,在子类中,格式与父类中的方法三方面一致;
方法重载,在同一个类中,对已定义的方法在返回类型、方法名上一致,参数类型、数目、顺序至少有一者相同。

2)自动转型
定义:将要定义的对象 转型为父类类型
格式:父类类名 变量名 = new 子类类型 ();
对象特点:执行父类中没有被子类重写的方法、 执行子类重写父类的方法。
   public interface People {
public String name="张三";
}
public class Teacher implements People{
}
public class Manager{
public static void main(String[] args){
People tea = new Teacher();
}
}


3)多态
定义:多态是一种情形
a 两个或多个对象的类型一致 b调用同一个方法 c程序所执行的内容不同

2、类的介绍及比较
类的 定义:抽象的、主观的、所有物体的共同点的集合
类名必须与定义该类的文本文件名一致,且第一个字母大写。
1)普通类
格式:public class 类名{
}
内容:包含 属性和构造方法、普通方法;
与对象的区别:类:抽象的、主观的、所有物体的共同点的集合
对象:具体的、客观的、现实中存在的实体
必须有一个普通类定义主函数(程序入口)
主函数格式:public static void main(String[] args){
}

2)接口
格式:public interface 文件名{
}
内容:必须为常量的属性、只含有抽象方法,不含有构造函数(不能直接用于创建对象)
常量属性的定义格式:public static final 类型 变量名 = 常数值
抽象方法(没有方法体)定义格式:public abstract 返回类型 方法名 (参数类型 参数名);
访问类型 : 属性方法都只能是公有的(public)
作用:被继承,可以充当子类的多个上级之一
继承:
为普通类所继承时,关键字为implements;
接口继承接口时,关键字为extends;
接口的继承是多根继承写在要继承的类之后,一般 类的继承承是单根继承
另外:普通类继承(实现)接口的时候,必须同时重写(实现)接口中的所有抽象方法
   public interface People {		//接口类
public abstract String name="张三";
public abstract void play(String str);
public void read();
}
public interface Menber{
public abstract void readString();
}
//一般类继承接口 接口被继承,充当子类的多个上级之一
public class Student implements People Menber{
public String name="张三"; //重写接口中的抽象方法
public int score=10;
public void read(){}
public void play(String str){} //重写接口中的抽象方法
public void study(Teacher t){
}
public void readString(); //重写接口中的抽象方法
//public void read(String name);
}


2)抽象类
格式:public abstract class 文件名{}
特点:可以有抽象方法,也可以有普通方法
抽象类不能被创建对象
继承:继承关键字extends
//建立抽象类
   public interface People {		//接口类
public String name="张三";
public void play(String str);
public void read();
}
//抽象类继承接口
public abstract class Adult extends people{
public void play(String str);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值