zoukankan      html  css  js  c++  java
  • c# IS与AS的使用方法

    //解决:在很多情况下,我们并不知道对象是否支持某一接口,这时,可以试图讲对象转化为接口类型
    //在c#里面,我们可以采取两种方法获的对象知否支持某个接口

    代码如下:

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace ConsoleApplication6
    {
        
    class Program
        {
            
    static void Main(string[] args)
            {
                conn cn 
    = new conn();
                
    if (cn is Iconnect)//是否实现了接口
                {
                    Iconnect iconn 
    = (Iconnect)cn;
                    iconn.read();
                    Console.ReadLine();
                }
                
    else
                {
                    Console.WriteLine(
    "can not connvert");
                    Console.ReadLine();
                }

                
    //IS操作符很清晰,但是操作效率不高,另种方式是AS

                conn cnn 
    = new conn();
                Iconnect icnn1 
    = cnn as Iconnect;
                
    if (icnn1 != null)
                {
                    icnn1.write();
                    Console.ReadLine();
                }
                
    else
                {
                    Console.WriteLine(
    "can not connvert");
                    Console.ReadLine();
                }
                
    //as 操作符首先测试转换是否合法,如果合法就转换,否则返回NULL。关键词NULL表示空引用
            }
        } 

        
    public interface Iconnect
        {
            
    void read();
            
    void write();
        }

        
    public class conn : Iconnect
        {
            
    public void read()
            {
                Console.WriteLine(
    "实现了read()方法");
            }
            
    public void write()
            {
                Console.WriteLine(
    "实现了write()方法");
            }
        }

    }

    结论:

    1.IS操作符很清晰,但是操作效率不高,另种方式是AS

    2.as 操作符首先测试转换是否合法,如果合法就转换,否则返回NULL。关键词NULL表示空引用

  • 相关阅读:
    nmap 查看内网存活主机
    msf ms17_010 port:445
    nmap 检测ms17-010 port:445
    msf mysql port:3306
    msf ssh port:22
    Wireshark的两种过滤器与BPF过滤规则
    Wireshark使用记录
    过滤搜索引擎的抓取数据
    WEB容器开启、关闭OPTIONS方法
    代码泄露到Github
  • 原文地址:https://www.cnblogs.com/muer/p/1742569.html
Copyright © 2011-2022 走看看