首页 > 其他分享 >里氏转换原则

里氏转换原则

时间:2022-08-17 14:56:14浏览次数:63  
标签:转换 Apple 原则 对象 里氏 子类 父类

六大原则如下:

①单一职责原则;②开闭原则;③里氏转换原则;④依赖倒置原则;⑤接口隔离原则;⑥迪米特原则;

里氏转换原则

①子类对象可以直接赋值给父类变量;

②子类转换成父类,只是子类对象的特有属性无法利用父类对象操作,父类对象可以操作其非特有的属性(由父类继承而来的属性);

③如果父类对象中装的是子类对象,可以将这个父类对象强转为子类对象;

Apple a1 = new Apple("苹果", "红", 1,"");
a1.printFruit();
Fruit F1 = new Apple("苹果", "红", 1, "");
F1.printFruit();
Console.ReadKey();
Apple a2 = (Apple)F1;    

虽然声明的对象是父类对象,但实际的内存空间是子类对象的。 

is和as关键字

is和as两个关键字都可以进行类型转换。

is:如果转换成功,返回true,失败返回false;

as:如果转换成功,返回对应的对象,失败返回null。

 

标签:转换,Apple,原则,对象,里氏,子类,父类
From: https://www.cnblogs.com/tenyuan/p/16595195.html

相关文章

  • C++ 类型转换
    1、std::string转intstringvalStr="IconVisible"; intvalInt=atoi(valStr.c_str()); 2、std::string转char*stringvalStr="IconVisible";constchar*......
  • 使用openssl转换证书pem转jks
    选择一个安装号openssl和java环境的服务器opensslpkcs12-export-in'8076163__chnenergy.com.cn.pem'-inkey'8076163__chnenergy.com.cn.key'-out'keystore.p12'-......
  • vba 数组判断与转换
    PrivateFunctionCountArr(arr)'*****************************'计算数组是几维数组'*****************************Dimi%,j%OnErrorGoToerrFori=1To10......
  • Java类型转换
    类型转换Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。运算中,不同类型的数据先转化为同一类型,然后进行运算。转换从低级到高级(根据容量来看): 低---......
  • 2022最新有效 哔哩哔哩Bilibili手机端.m4s文件缓存转.mp4教程 支持每个视频单独一个文
    项目地址:https://github.com/kaixinol/BiliCache2MP4下载地址:https://github.com/kaixinol/BiliCache2MP4/releases/https://pan.baidu.com/s/16lcp5HLjkZG8MGN_MhX9gA......
  • 数据转换3-osgb转成3dtile格式
     选择的是包含所有osgb文件夹的Data文件文件添加成功之后,空间参考,零点坐标等会根据文件自动生成,需要更改点击设置选择即可存储类型:选择“散列”,如果没有注意到,Ce......
  • 35.概念/意义一致原则
    主语和谓语动词的一致关系并非只取决于语法上的单、复数形式,还取决于主语的单、复数意义。有时主语在语法形式上并非复数,但含有复数意义,其后的谓语动词应用复数形式;反之,主......
  • 33.语法一致原则
    主语和谓语动词之间的一致关系主要表现在“数”的形式上。一般来说,如果主语是复数形式,谓语动词应用复数形式;如果主语是单数形式,谓语动词应用单数形式。这种一致关系叫作“......
  • 34.就近原则
    (3)“neither+名词/代词+nor+名词/代词”结构作主语时,谓语动词的单、复数形式应与nor后的名词或代词保持一致。NeitherJohnnortheyknowhowtooperatethemachine.......
  • python 中实现将fasta中DNA序列转换为RNA
     001、root@PC1:/home/test#lsa.fastatest.pyroot@PC1:/home/test#cattest.py##测试程序#!/usr/bin/pythonin_file=open("a.fasta","r")di......