zoukankan      html  css  js  c++  java
  • 有些方法为什么会声明称static静态的

    有些方法在调用的时候,没有必要都要先实例化一下,只需要:[类名. 静态方法 ]就行了。

    哪些方法的调用没有必要实例化呢?网上找了个例子:

    举个例子:Car类,
    1.静态方法Run(),
    Car.Run(); //访问方式:类.方法(); 静态方法也可以叫做类方法

    2.非静态方法Color()
    Car car1 = new Car();
    car1.Color(); //实例化后才可以访问,具体到某部车才有颜色
    car1.Run(); //实例化后,也可以访问静态方法,(不推荐)

    假如想知道你的车是怎么跑得(调用),没有必要把特定的一辆车开到你面前演示怎么跑得(实例化),因为汽车跑都是一个样子的,只要想一想汽车怎么跑得就知道了。这时,跑Run()声明称静态的。
    但是如果想知道你的汽车的某一个特性,比如颜色,你可能就要到车前面去看一看了(实例化)。Color()这个方法就不是静态的了。

    其他:

    1)静态方法不再是针对某个对象调用,所以不能访问非静态成员
    2)在静态方法中不能调用非静态属性,也不能调用非静态方法(因为static属性或方法可以在对象没有实例化就可以直接调用

    知识点:
    声明static类型的属性或方法之后此属性或方法也称为类方法,可以有类名称直接调用。
    一般调用static属性的时候最好是使用类名称直接调用,采用“类名.属性”的方式调用。

    int a=10;

    static void Func()
    {
      Console.WwriteLine(a);//这样写是错误的,静态方法不能调用非静态成员。static int a=10;就对了。

    }

  • 相关阅读:
    [转]MVP+WCF+三层结构搭建项目框架
    PowerDesigner之PDM(物理概念模型)
    atoi 和 itoa
    最短作业优先(SJF)
    TCP 三次握手过程详解
    TCP/UDP,SOCKET,HTTP,FTP 简析
    计算机的OSI和TCP/IP网络模型
    理解数据成员指针、函数成员指针
    虚函数底层原理
    C++多态有哪几种方式?
  • 原文地址:https://www.cnblogs.com/zhibolife/p/3699889.html
Copyright © 2011-2022 走看看