栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

事务的多态性

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

事务的多态性

java的多态性
  • 事务的多态性
  • Java引用变量有两个类型:
  • 一个是编译时的类型,一个是运行时的类型。
  • 编译时类型由声明该变量时使用的类型决定,运行时由实际赋给该变量的对象决定。
  • 如果编译时类型和运行时类型不一致,就可能出现所谓的多态。
  • instanceof 运算符
  • 判断两个类型是否能够转换

抽象方法:

不允许包含方法体;子类中需要重写父类的抽象方法,否则,子类也是抽象类
static final private 不能与abstract

多态的分类
  1. 编译时多态(设计时多态):方法重载
  2. 运行时多态:Java运行时系统根据调用该方法的实例的类型来决定选择调用哪个方法则被称为运行时多态
我们平时说的多态,多指运行时多态
class  baseClass{
   public int book = 6;
   public void base(){
       System.out.println("父类的普通方法");
   }
   public void test(){
       System.out.println("父类被覆盖的方法");
   }
}
public class SubClass extends baseClass{
   public String book = "我说,长安尽头有神明";
   public void sub(){
       System.out.println("子类的普通方法");
   }
   public void test(){
       System.out.println("子类覆盖父类的方法");
   }

   public static void main(String[] args) {
       //编译与运行时类型完全一样,因此不存在多态
       baseClass bc = new baseClass();
       //输出6
       System.out.println(bc.book);
       //下面两次将调用baseClass下的方法
       bc.base();
       bc.test();
       //编译与运行时类型完全一样,因此不存在多态
       SubClass su = new SubClass();
       //输出我说,长安尽头有神明
       System.out.println(su.book);
       //下面调用将执行从父类继承到的base方法
       su.base();
       //下面调用将执行当前类的test方法
       su.test();
       //编译与运行时类型不同,因此发生多态
       baseClass PloymophicBc = new SubClass();
       //输出6----------表明访问的是父类的Filed
       System.out.println(PloymophicBc.book);
       //下面调用将执行从父类继承到的base方法
       PloymophicBc.base();
       //下面调用将执行当前类的test方法
       PloymophicBc.test();
       //因为PloymophicBc的编译时类型是baseClass
       //baseClass类没有提供sub方法,所以下面方法编译时会出现错误
       // PloymophicBc.sub();

       if(PloymophicBc instanceof SubClass)
       {

       }
   }
}

接口
//接口访问修饰符:public 默认
public interface INet {
	
	void network();
	
	
	//接口中可以包含常量,默认public static final
	int TEMP=20;
	
    //default:默认方法 可以带方法体 jdk1.8后新增
	//可以在实现类中重写,并可以通过接口的引用调用
	default void connection(){
		System.out.println("我是接口中的默认链接");
	}
	
	//static:静态方法 可以带方法体 jdk1.8后新增
	//不可以在实现类中重写,可以同接口名调用
	static void stop(){
		System.out.println("我是接口中的静态方法");
	}
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/459773.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号