惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Privacy & Cybersecurity Law Blog
Vercel News
Vercel News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
罗磊的独立博客
F
Fortinet All Blogs
T
Threatpost
Y
Y Combinator Blog
博客园_首页
美团技术团队
Security Latest
Security Latest
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog
V
V2EX - 技术
The Cloudflare Blog
L
LINUX DO - 热门话题
博客园 - 司徒正美
Jina AI
Jina AI
P
Proofpoint News Feed
宝玉的分享
宝玉的分享
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
WordPress大学
WordPress大学
The Hacker News
The Hacker News
P
Privacy International News Feed
T
The Exploit Database - CXSecurity.com
Scott Helme
Scott Helme
有赞技术团队
有赞技术团队
V
V2EX
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
Latest news
Latest news
NISL@THU
NISL@THU
Google DeepMind News
Google DeepMind News
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Cisco Blogs
雷峰网
雷峰网
Application and Cybersecurity Blog
Application and Cybersecurity Blog
B
Blog RSS Feed
W
WeLiveSecurity
D
DataBreaches.Net
G
Google Developers Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
GRAHAM CLULEY
Spread Privacy
Spread Privacy
Know Your Adversary
Know Your Adversary
TaoSecurity Blog
TaoSecurity Blog
S
Securelist
Help Net Security
Help Net Security

博客园 - 一麦

GridView的增删改查和分页 - 一麦 - 博客园 团队开发之环境搭建 .Net下SqlServer命名规范 XXX公司CRM项目开发日志 Coolite Toolkit学习笔记 LINQ新特性简介及入门教程 反射学习 常用正则表达式 正则表达式基本用法 正则表达式基础 页面生命周期小结 设计模式小结 Asp.net 中HttpHandler,HttpModule,IHttpHandlerFactory的原理与应用(一) 3.x新特性 FileStream读写文件【StreamWriter 和 StreamReader】 .NET常用集合类 C#基础点滴 全新对待.net---一次全面的旅程 委托和事件--一直以来的痛
面向对象点滴
一麦 · 2009-04-19 · via 博客园 - 一麦

      1.面向对象最重要的几个概念:对象,类,接口,封装,继承,多态。

            1. 对象:在面向对象编程里面,万事万物都被视为对象,对象是对数据和操作的封装。

            2. 类:对一类对象的抽象。

            3. 接口:一组功能契约。

            4. 封装:隐藏对象细节。

            5. 继承:通过继承使得不必编写更多的代码,增加代码的复用性。

            6. 多态:面向对象非常好的特性,更是所有模式和构架的基础。多态允许运行时决定实例化哪个子类,再结合反射机制,可以将该变化点推迟到配置文件。

      2. CLR启动程序时会创建3个应用程序域,分别为系统域,共享域和默认域。
            系统域:负责创建共享域和默认程序域。它将系统库mscorlib.dll载入共享域。
            共享域:所有不属于任何特定代码将被加载到该域,包括基本类型等等。
            默认域:是应用程序域的一个实例,一般应用程序在此域运行。域之间的互访问,要通过.net remoting代理来实现。每个应用程序域都有自己的加载堆(高频堆,低频堆,代理堆),句柄表,接口虚表管理器和程序集缓存。

      3. 一个简单应用程序从CLR启动开始的一系列过程:
          CLR启动程序创建系统域,系统域负责加载共享域和默认程序域的创建。加载共享域包括加载mscorlib.dll等核心库。加载默认程序域,主要是加载客户程序的各个类型方法表,该方法表按照先基类后子类的顺序排列,方法表元素的顺序是:继承的虚方法,新的虚方法,实例方法,静态方法。而对象的创建过程是,递归分配父类的内存空间并调用相应的构造函数初始化各字段,直到System.Object对象为止。对象内存中包含:snycblc(同步块索引),TypeHandle(类型句柄,指向方法表),Instance Fields(实例字段),StringLiterals(字符串标签).其中Instance Fields也是按照先父类再子类的顺序创建。

      4. 对于接口的实现机制?待深入

      5. 对象继承后,根据对象原则决定是调用父类的虚方法还是子类的虚方法;根据就近原则决定是调用父类的字段还是子类的字段。