类,组件,命名空间--

您对类和面向对象的理解如何。

1类的介绍

1)为什么要使用oop?(object-oriented programming) oop有3个特点,封装性,继承性,多态性

2)实例化的3中方法

Text mytext=new Text()   new 生成一个对象,对象变量mytext仅仅是对 对象  的一个引用,。。。 对象是保存在堆中,对象变量存在栈中(内部为堆中对象的地址),

FileStream fs=File.Create("data.inp")--(对于没有可以访问的构造函数,Create方法返回类实例的一个引用)

使用反射 (Reflection)

3)静态(static)成员,

静态成员不属于任何对象1:它可以通过类名直接访问,2:实例成员必须建立对象的引用来访问。

常量 起始是一种隐式的静态,也可以通过类名直接访问

public  const double PI=3.1415;

public static int p=0;

结论 : 实例字段和类的一个实例是相关的,类的每一个实例都有自己的一个实例字段的副本, 静态字段和类的本身的相关的,不和实例相关,无论你创建多少个类的实例,静态字段只有一个副本。

何时来使用static ,当我们需要全局数据和代码的时候(代码被公用) ,c# 2.0 之后static 关键词也可以用来修饰类 (当类的任何成员都为静态的时候)

3命名空间,namespace

命名空间可以按逻辑对类进行划分 1增强可读性,2减少了类名的冲突。

2) 分层结构的命名空间(命名空间中还能包含其他的命名空间)

namespace TeamX

{

  namespace Business

{

pubclic class a{}

}

}

4组件,

组件:用我们自己的话说 就是很多和类放到了一起 我们称为组件,在.net 中也被称为程序集(assembly),组件和存放的物理位置有关,跟命名空间无直接关系

类,组件,命名空间--

时间: 2024-08-03 20:28:47

类,组件,命名空间--的相关文章

Python学习之旅—面向对象进阶知识:类的命名空间,类的组合与继承

前言 上篇博客笔者带领大家初步梳理了Python面向对象的基础知识,本篇博客将专注于解决三个知识点:类的命名空间,类的组合以及面向对象的三大特性之一继承,一起跟随笔者老看看今天的内容吧. 1.类的命名空间 在上一篇博客中,我们提到过对象可以动态添加属性,一起来回忆下昨天的知识点,看如下的代码: class A: pass a = A() a.name = 'alex' print(a.name) 这里我们手动为a对象添加了一个属性name,然后直接打印可以得到a对象的名称.通过这个例子,我们可以

cocos2d-x 源码分析 : control 源码分析 ( 控制类组件 controlButton)

源码版本来自3.1rc 转载请注明 cocos2d-x源码分析总目录 http://blog.csdn.net/u011225840/article/details/31743129 1.继承结构 control的设计整体感觉挺美的,在父类control定义了整个控制事件的基础以及管理,虽然其继承了Layer,但其本身和UI组件的实现并没有关联.在子类(controlButton,controlSwitch,controlStepper等中实现不同的UI组件).下面通过源码来分析control与

php类和命名空间介绍,成员方法和类方法,类的继承与方法重写

1. 类和命名空间的介绍 foo.php: <?php // require_once 'lib.php'; // $h = new Hello(); //类的实例 // $h->sayHello(); //实例访问类的方法s// $d = new Desktop();// $d-> work(); // require_once 'Apple/foo.php';  //foo.php的文件位置 // $h = new \jkxy\Hello(); //foo.php的命名空间,在Hel

[Yii2.0] 以Yii 2.0风格加载自定义类或命名空间 [配置使用Yii2 autoloader]

Yii 2.0最显著的特征之一就是引入了命名空间,因此对于自定义类的引入方式也同之前有所不同.这篇文章讨论一下如何利用Yii 2.0的自动加载机制,向系统中引入自定义类和命名空间.本文旨在抛砖引玉,如果有理解不当敬请指正,欢迎大家把自己的方法拿出来分享.我们希望被引入的类应该达成一下两点: 在应用中的任这里输入代码意位置可以使用该类名或命名空间,而不用显式调用require()/include(). 利用Yii的autoloader,仅在类被调用时加载,以遵循Yii按需加载的原则,节省资源. 我

Form表单类组件与Map地图组件

笔记内容:Form表单类组件与Map地图组件 笔记日期:2018-02-04 form之switch组件 switch组件是一个开关选择器,wxml示例代码如下: <view class='container'> <view class='switch_text'>switch</view> <switch name='switch1' checked='true' /> <switch name='switch2' /> <switch

类的命名空间&amp;组合

类的命名空间◆类中的静态变量可以被类调用也可以被对象调用◆对不可变数据类型来说,类变量最好用类名操作 class Person: money = 0 mother = Person() father = Person() Person.money += 1000 Person.money += 1000 print(Person.money) ◆对于可变数据类型来说,对象的修改是共享的,重新赋值是独立的 class Course: langauage = 'Chinese' def __init

类组件

// 类组件 class Person { constructor (name,age) { this.name =name this.age = age } sayHi () { console.log(this) } } let person = new Person('李李') person.sayHi() 关键字:class.constructor 原文地址:https://www.cnblogs.com/js-liqian/p/11747761.html

React - 组件:类组件

目录: 1. 类组件有自己的状态 2. 继承React.Component-会有生命周期和this 3. 内部需要一个render函数(类组件会默认调用render方法,但不会默认添加,需要手动填写render函数,并return一个能渲染的值.) 4. 类组件的基本架构 5. constructor里边添加自己的属性和状态.方法 a. 写了constructor就要写super b. 如果c里边没内容只有super,name可以不写 6. 添加状态this.state = {}; es7写法s

error C2825: &#39;_Iter&#39;: 当后面跟“::”时必须为类或命名空间 -- 原因可能是参数错误或者自定义函数名和库函数名冲突

今天运行程序的时候遇到了下面这个bug 1> B1020.cpp 1>e:\vs2013\vs2013_rtm_ult_chs\data\vc\include\xutility(371): error C2825: '_Iter': 当后面跟“::”时必须为类或命名空间 1> e:\vs2013\vs2013_rtm_ult_chs\data\vc\include\xutility(584): 参见对正在编译的类 模板 实例化“std::iterator_traits<_InIt&

TP框架 MODEL类和命名空间

1.获取系统常量信息 public function shuchu() { var_dump(get_defined_constants()); }2.跨控制器或跨模块调用 function diaoyong() { //跨控制器或跨模块调用用方法 //1.造对象调用 /*$sc=new IndexController(); $sc->index();*/ //2.使用TP框架的快捷方法A来创建控制器对象 //$sc=A("Admin/Main"); //前面的Admin是文件夹